describe('Login ', function () {
afterEach(function () {
browser.ignoreSynchronization = false;
});
//1. First test case
it(' through Account', function () {
browser.get("URL");
browser.driver.manage().window().maximize();
var gmail = element(by.css('.ggl>img'));
gmail.click()
browser.getAllWindowHandles().then(function (handles) {
browser.switchTo().window(handles[1]);
element(by.id("Email")).click();
element(by.id("Email")).sendKeys('EMAIL');
element(by.id("next")).click();
browser.sleep(1000);
element(by.id("Passwd")).click();
element(by.id("Passwd")).sendKeys('PASS');
browser.sleep(1000);
element(by.id("signIn")).click();
browser.switchTo().window(handles[0]);
browser.sleep(20000);
});
});
//2. second test cases
it(' Enter', function () {
var Encryption = element(by.model("password"));
browser.wait(GM.visibilityOf(Encryption), 100000);
Encryption.sendKeys("click123");
element(by.id("submit")).click();
browser.sleep(10000);
});
});
这是'it'中的两个测试用例。但成功登录后,第二个测试用例无效。
答案 0 :(得分:0)
在你的第一次测试中
browser.sleep(20000);
这意味着它将在执行下一次测试之前等待20秒。你确定要等那么久吗?
browser.wait
会返回承诺,所以您需要做的是
browser.wait(GM.visibilityOf(Encryption), 100000).then(function() {
Encryption.sendKeys("click123");
element(by.id("submit")).click();
});
你也错过了gmail.click()