angularjs – 在电子中使用量角器

我正在尝试为 Electron使用 Electron运行的应用程序设置单元测试和e2e测试.我一直在参考许多不同的帖子( 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).
让我感到惊讶的是,尽管main.js的路径(根据Electron的规格启动应用程序)是正确的,但我看不到弹出的Electron窗口中的任何内容.
你们有没有遇到过这个问题?你有设法解决它吗?

显然,使用电子二进制文件还不足以实际启动您的应用程序.但是,通过为应用程序构建二进制文件并将其链接到conf.js文件可以正常工作.
我已经能够将我的文件减少到这个:
conf.js
exports.config = {
    seleniumAddress: 'http://localhost:4444/wd/hub',specs: ['test-spec.js'],chromeOptions: {
            binary: "./dist/myAwesomeApp/myAwesomeAppBinary"
        }
    },onPrepare: function () {
        browser.resetUrl = "file://";
    }
};

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

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...