我在量角器UI测试中面临一个奇怪的问题。对于其中一项测试,我必须单击该链接,该链接将在不同的选项卡中打开。 当我单独运行该测试时,测试正在通过,但当我将其作为测试套件运行时,它会失败。
请检查代码并提出建议。
function(callback){
browser.getAllWindowHandles().then(function(tabs){
var secondTab = tabs[1];
var firstTab = tabs[0];
browser.switchTo().window(secondTab).then(function(){
expect(browser.driver.getCurrentUrl()).toBe("www.google.com");
element(by.css('heading')).getText().then(function(text){
expect(text).toBe('Welcome');
});
browser.close(); //Close the current Tab
});
browser.switchTo().window(firstTab);
//Log Out from the site
element(by.id("side-menu")).click();
element(by.linkText("Logout")).click();
callback();
});
}
答案 0 :(得分:0)
如果测试在您作为单个测试运行时通过,则问题可能与此段代码无关。它可能取决于框架中浏览器的处理方式
您可以尝试的一件事是在切换到新标签之前和之后给出browser.sleep()。因为当我们将它作为套件运行时,大多数同步问题都会出现。