Protractor 量角器挂在Chrome中的输入元素上

Protractor 量角器挂在Chrome中的输入元素上,protractor,Protractor,我有两个输入的简单表单-用户名、密码和登录按钮。 一切都很完美,但量角器测试在Mac上的Chrome浏览器(它在Mac上的Firefox中工作)中填充第一个输入后挂起。 奇怪的是,有时它会填满这两个页面,但会挂在点击按钮上。 超时后,我得到“等待量角器与页面同步11秒后超时” 原因是什么 以下是HTML: <input type="text" name="username" ng-enter="ctrl.login(ctrl.username, ctrl.pa

我有两个输入的简单表单-用户名、密码和登录按钮。 一切都很完美,但量角器测试在Mac上的Chrome浏览器(它在Mac上的Firefox中工作)中填充第一个输入后挂起。 奇怪的是,有时它会填满这两个页面,但会挂在点击按钮上。 超时后,我得到“等待量角器与页面同步11秒后超时”

原因是什么

以下是HTML:

<input type="text" 
       name="username"
       ng-enter="ctrl.login(ctrl.username, ctrl.password)"
       ng-model="ctrl.username">

<input type="password"
       name="password"
       ng-enter="ctrl.login(ctrl.username, ctrl.password)"
       ng-model="ctrl.password">

<a href="" class="btn btn-login btn-danger btn-float no-waves"
           ng-click="ctrl.login(ctrl.username, ctrl.password)">
</a>

ng app指令在您的DOM中位于何处?默认情况下,量角器认为它位于主体元素上。如果没有,则应在配置中使用此类参数:

rootElement: 'html',
以便提供正确的路径。同时尝试增加超时时间:

allScriptsTimeout: 50000,

ng app指令在您的DOM中位于何处?默认情况下,量角器认为它位于主体元素上。如果没有,则应在配置中使用此类参数:

rootElement: 'html',
以便提供正确的路径。同时尝试增加超时时间:

allScriptsTimeout: 50000,

这个问题与最新版本的Google Chrome有关。我也有同样的问题。我发现一个简单的解决方案是使用旧版本的Google Chrome(例如43.0.2357.134),直到错误被修复为止。在mac上,您可以同时安装多个版本。

这个问题与最新版本的Google Chrome有关。我也有同样的问题。我发现一个简单的解决方案是使用旧版本的Google Chrome(例如43.0.2357.134),直到错误被修复为止。在mac上,您可以同时安装多个版本。

我会手动引导,所以没有ng应用程序,但实际上量角器会查找全局角度对象,而不是ng应用程序(因为没有人在严重的项目中使用ng应用程序)。另外-它没有问题,所以不是这样。超时没有问题help@Yoorek所以当你改变超时时,它只是在50秒后失败,而不是11秒?您使用的是哪个量角器/jasmine?是的,确切地说是:量角器测试/dragrator.conf.js正在启动selenium独立服务器。。。[launcher]运行WebDriver Selenium独立服务器的1个实例在启动时启动F*失败:1)basic应登录到应用程序消息:失败:等待量角器与页面同步20秒后超时。量角器2.2.2与jasmine一起运行,并与jasmine2一起尝试-相同结果我手动引导,所以没有ng应用程序,但实际上量角器寻找的是全局角度对象,而不是ng应用程序(因为没有人在严重的物体中使用ng应用程序)。另外-它没有问题,所以不是这样。超时没有问题help@Yoorek所以当你改变超时时,它只是在50秒后失败,而不是11秒?您使用的是哪个量角器/jasmine?是的,确切地说是:量角器测试/dragrator.conf.js正在启动selenium独立服务器。。。[发射器]运行WebDriver Selenium独立服务器的1个实例在启动时启动F*失败:1)basic应登录到应用程序消息:失败:等待量角器与页面同步20秒后超时。量角器2.2.2与jasmine一起运行,并与jasmine一起尝试2-相同的结果是真的-它与Chrone 43一起工作。问题是Chrome一直在更新它自己——这是真的——它与Chrone 43一起工作。问题是Chrome一直在自我更新