gpt4 book ai didi

angularjs - 在 Electron 中使用 Protractor

转载 作者:行者123 更新时间:2023-11-28 19:49:46 24 4
gpt4 key购买 nike

我正在尝试为使用 Electron 运行的应用程序设置单元测试和端到端测试使用 Protractor .我一直在引用许多不同的帖子(this one 确实有帮助),但我仍然收到一个我不明白的错误:

Message:
Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
Stacktrace:
undefined

我的 conf.js 文件如下所示:

exports.config = {
directConnect : true,
seleniumAddress: 'http://localhost:4444/wd/hub',
baseUrl:"file://home/me/workspace/testing-project/main.js",
capabilities: {
browserName: "chrome",
chromeOptions: {
binary: "/home/me/.linuxbrew/lib/node_modules/electron-prebuilt/dist/electron",
args: ["--test-type=webdriver"]
}
},
specs: ['todo-specs.js'],
onPrepare: function(){
browser.resetUrl = "file://";
browser.driver.get("file://");
}
};

考虑在 Protractor website 上给出的文档,我的印象是我不需要安装任何其他东西(例如 Jasmine)。
令我吃惊的是,尽管 ma​​in.js 的路径(根据 Electron 的规范启动应用程序)是正确的,但我在弹出的 Electron 窗口中看不到任何内容。
你们中有人遇到过这个问题吗?你设法解决了吗?

最佳答案

显然,使用 Electron 二进制文件不足以实际启动您的应用程序。但是,通过构建您的应用程序的二进制文件并将其链接到您的 conf.js 文件中,就可以了。
我已经能够将我的文件缩减为:
conf.js

exports.config = {
seleniumAddress: 'http://localhost:4444/wd/hub',
specs: ['test-spec.js'],
capabilities: {
browserName: "chrome",
chromeOptions: {
binary: "./dist/myAwesomeApp/myAwesomeAppBinary"
}
},
onPrepare: function () {
browser.resetUrl = "file://";
}
};

通过这种方式,无需描述 baseUrl 或使用 browser.get()browser.driver.get() 在 Electron 中启动应用程序。
但是,我宁愿不必构建应用程序二进制文件,但我认为目前还不可能。

关于angularjs - 在 Electron 中使用 Protractor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33440031/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com