Angularjs 如何使用量角器创建助手,以便在测试运行之前登录?
在我的测试中,我有Angularjs 如何使用量角器创建助手,以便在测试运行之前登录?,angularjs,protractor,Angularjs,Protractor,在我的测试中,我有 var LoginHelper = require('../helpers/functional/login.js') describe('Passport Navigation', function() { beforeAll(function() { return LoginHelper() }) it('should properly load the All Skills view', function() { browser.get
var LoginHelper = require('../helpers/functional/login.js')
describe('Passport Navigation', function() {
beforeAll(function() {
return LoginHelper()
})
it('should properly load the All Skills view', function() {
browser.get('https://example.com/ng-app/profile')
element(by.model('myModel')).sendKeys('test stuff')
element(by.css('btn')).click()
expect(myModel()).toEqual('more')
})
})
我的助手是:
module.exports = function() {
browser.ignoreSynchronization = false
browser.driver.get('https://example.com/ng-app')
browser.driver.findElement(by.id('username')).sendKeys("myusername");
browser.driver.findElement(by.id('password')).sendKeys("mypassword");
return browser.driver.findElement(by.tagName('input')).click()
}
问题是我的站点登录不是一个有角度的站点,所发生的事情是(据我所知),它加载登录页面,输入用户名/密码,然后退出并出错
1) Passport Navigation should properly load the All Skills view
Message:
Failed: Angular could not be found on the page https://example.com/ng-app/profile.If this is not an Angular application, you may need to turn off waiting fo
r Angular.
Please see
https://github.com/angular/protractor/blob/master/docs/timeouts.md#waiting-for-angular-on-page-load
Stack:
Error: Angular could not be found on the page https://example.com/ng-app/profile.If this is not an Angular application, you may need to turn off waiting for
Angular.
browser.ignoreSynchronization=false,指示量角器等待角度。如果站点登录不是角度登录,则应将其设置为true
browser.ignoreSynchronization=true代码>
来自量角器站点的示例
browser.ignoreSynchronization = true;
browser.get('/non-angular-login-page.html');
element(by.id('username')).sendKeys('Jane');
element(by.id('password')).sendKeys('1234');
element(by.id('clickme')).click();
browser.ignoreSynchronization = false;
browser.get('/page-containing-angular.html');
browser.ignoreSynchronization=false,指示量角器等待角度。如果站点登录不是角度登录,则应将其设置为true
browser.ignoreSynchronization=true代码>
来自量角器站点的示例
browser.ignoreSynchronization = true;
browser.get('/non-angular-login-page.html');
element(by.id('username')).sendKeys('Jane');
element(by.id('password')).sendKeys('1234');
element(by.id('clickme')).click();
browser.ignoreSynchronization = false;
browser.get('/page-containing-angular.html');
添加到progrator.conf:。。。onPrepare:{browser.driver.get(url);browser.driver.findElement(by.id('username')).sendKeys(…);…一些等待登录成功添加到graphetor.conf:…onPrepare:{browser.driver.get(url);browser.driver.findElement(by.id('username')).sendKeys(…);…一些等待登录成功