selenium - 测试用例在完成 beforeAll 之前执行。?
问题描述
我试图在完成 beforeAll 钩子后运行测试用例。
但它没有按预期工作,测试用例在完成 beforeAll Hooks 之前运行。如何解决这个问题。?
describe('Testing : Protein superposition LOGIN', async () => {
beforeAll(async function () {
jasmine.DEFAULT_TIMEOUT_INTERVAL = 3500000;
await browser.get(loginData.URL);
await browser.refresh();
await browser.waitForAngularEnabled(true);
await page.funcLogin(loginData.VALID.USERNAME, loginData.VALID.PASSWORD);
await browser.waitForAngularEnabled(false);
expect(await userLoginStatus.isPresent()).toBe(true);
console.log('LOGIN Status : Ok');
});
it('Check Login', async function () {
try {
var temp = await alerts.getPageHeaderName();
console.log("Temp Detail", temp);
// ...
// ....
} catch (e) {
throw new Error(e);
}
})
});
解决方案
我想我之前遇到过类似的问题,我使用done
了Jasmine
.
// remove async on the describe callback because it is doing nothing I think
describe('Testing : Protein superposition LOGIN', /* async */ () => {
// add done argument inside of the function parameter
beforeAll(async function (done) {
jasmine.DEFAULT_TIMEOUT_INTERVAL = 3500000;
await browser.get(loginData.URL);
await browser.refresh();
await browser.waitForAngularEnabled(true);
await page.funcLogin(loginData.VALID.USERNAME, loginData.VALID.PASSWORD);
await browser.waitForAngularEnabled(false);
expect(await userLoginStatus.isPresent()).toBe(true);
console.log('LOGIN Status : Ok');
// call done to let jasmine know I am done with this block now
done();
});
it('Check Login', async function () {
try {
var temp = await alerts.getPageHeaderName();
console.log("Temp Detail", temp);
// ...
// ....
} catch (e) {
throw new Error(e);
}
})
});
在此处了解有关完成回调的更多信息。
推荐阅读
- java - 最合适的面板布局
- c# - URL 重定向在重定向到不同应用程序池中的其他应用程序时抛出 405 Method not found
- python - 在第一次出现字符之前插入字符串
- google-apps-script - 如何使用 Google Scripts 访问不同的 Google Drive
- cypress - cypress 中的条件语句
- node.js - 如何在 Node.js 中读取文件内容并将数据转换为 JSON?
- django - 如何使用来自 S3 的媒体和静态文件在 AWS EC2 上部署 django
- c# - 在 ASP.NET MVC 中将 Blob 下载为文件
- jvm - SonarQube does not start in Linux (localhost)
- bash - Can I edit an image file from command line?