angularjs-e2e – 等待量角器与基本量角器测试的页面同步时,运行错误

describe('my homepage',function() {
    var ptor = protractor.getInstance();
    beforeEach(function(){
        // ptor.ignoreSynchronization = true;
        ptor.get('http://localhost/myApp/home.html');
        // ptor.sleep(5000);
    })
    describe('login',function(){

        var email = element.all(protractor.By.id('email')),pass = ptor.findElement(protractor.By.id('password')),loginBtn = ptor.findElement(protractor.By.css('#login button'))
            ;

        it('should input and login',function(){
            // email.then(function(obj){
            //  console.log('email',obj)
            // })
            email.sendKeys('josephine@hotmail.com');
            pass.sendKeys('shakalakabam');
            loginBtn.click();

        })
    })

});

上面的代码返回

Error: Error while waiting for Protractor to sync with the page: {}

我不知道为什么这样,ptor正确加载页面,它似乎是选择的失败的元素。

到SSHMSH:

谢谢,你几乎是对的,给了我正确的哲学,所以关键是ptor.sleep(3000)让每个页面等待,直到ptor与项目同步。

我收到同样的错误信息(Angular 1.2.13)。我的测试太早了,而量角器似乎并没有等到Angular加载。

看来我错配了量角器配置文件。当在BODY元素上但在后代未定义ng-app指令时,必须将量角器配置文件中的rootElement属性调整到定义角度根元素的选择器,例如:

// protractor-conf.js
rootElement: '.my-app',

当你的HTML是:

<div ng-app="myApp" class="my-app">

相关文章

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