【发布时间】:2020-05-14 11:54:04
【问题描述】:
我们的登录屏幕是非 Angular 的,登录后它会重定向到 Angular 应用程序。我们在 conf.js 中使用以下脚本登录。这是完美的工作,没有任何问题。突然之间,相同的脚本开始失败。
onPrepare: async function() {
browser.ignoreSynchronization = true
await browser.waitForAngularEnabled(false);
await browser.get('http://abc.dev.xyz.com');
await element(By.id('userName')).sendKeys('abcd');
await element(By.className('btn btn-primary')).click();
await element(By.id('password')).sendKeys('xyz@123');
await element(By.className('btn btn-primary')).click();
await browser.waitForAngularEnabled(true);
browser.manage().window().maximize();
jasmine.getEnv().addReporter(new HtmlReporter({
baseDirectory: 'target/screenshots',
preserveDirectory: false,
takeScreenShotsOnlyForFailedSpecs: true,
docTitle: 'UI Automation Test Report'
}).getJasmine2Reporter());
}
运行时它只是打开浏览器并启动 URL。之后立即关闭浏览器。早些时候,它用于等待登录页面加载并继续。现在它根本不等到页面加载。所以找不到用户名字段。我不想在这里使用硬编码等待。知道为什么它开始失败了吗?我试过更新 webdiver-manager 。没有任何效果
【问题讨论】:
标签: selenium-webdriver async-await protractor