1

我目前正在使用量角器编写端到端测试。使用 selenium 独立服务器,我想在不同的浏览器(在 win10-vm 上)上运行它们。Chrome 运行良好,但 Firefox 不断抛出以下错误:

Failed: Error while waiting for Protractor to sync with the page: [ng:test] no injector found for element argument to getTestability

问题是,这个错误并不总是发生,也不会发生在不同的测试中。

我做了很多研究并尝试了各种 rootElement 方法,例如:

'rootElement' = 'html'
'rootElement' = '[ng-app]'
'rootElement' = '.className'

但它们不起作用。

但是,我找到了一种解决方法,browser.sleep()在我重新加载页面之后使用(我在每次测试之前都会这样做)。问题可能是ng-app当页面重新加载后量角器继续时,我的 html 标记中尚未设置。

因为我的解决方法减慢了测试过程也不是完全可靠的,所以我更喜欢另一种解决方案。有人能帮我吗?

我的配置文件:

exports.config = {
    seleniumAddress: 'http://myAddress',
    specs: ['mySpecs.js'],
    framework: 'jasmine2',
    rootElement:'html',
    multiCapabilities: [{
        'browserName': 'firefox'
    },{
        'browserName': 'chrome'
    }]
};

非常感谢,MH

4

0 回答 0