我试图设置Protractor来测试我的应用程序,但它需要通过gmail进行身份验证,而且我一直试图登录:
describe('Vivace Home page', function() {
var hasClass = function (element, cls) {
return element.getAttribute('class').then(function (classes) {
return classes.split(' ').indexOf(cls) !== -1;
});
};
beforeEach(function() {
browser.ignoreSynchronization = true;
browser.get('/');
var emailInput = browser.driver.findElement(by.id('Email'));
emailInput.sendKeys('paulG@gmail.com')
var nextButton = browser.driver.findElement(by.id('next'));
nextButton.click().then(function() {
browser.pause();
var passwordInput = browser.driver.findElement(by.id('Passwd'));
console.log(passwordInput);
passwordInput.sendKeys('11111');
// var signInButton = browser.driver.findElement(by.id('signIn'));
})
});
it('should have the correct title', function() {
expect(browser.getTitle()).toEqual('InRhythm - Vivace');
});
});
我可以看到Protractor打开gmail页面,输入电子邮件并点击下一个按钮,当我做浏览器时。因为我实际上可以看到输入的密码为" Passwd"就在检查员的页面上,但我无法访问它以完成我的登录。
删除浏览器时出现此错误。暂停
失败:没有这样的元素:无法找到元素:{"方法":" id","选择器":" Passwd" }
答案 0 :(得分:2)
var EC = protractor.ExpectedConditions;
var passwordInput = element(by.id('Passwd'));
browser.wait(EC.visibilityOf(passwordInput), 5000);
passwordInput.sendKeys('11111');