[英]How to use javascript to run automated tests in browser using selenium+CUCUMBER
[英]Puppeteer - Cucumber - Use one browser for the tests
我在我的網絡應用程序上使用Puppeteer和Cucumber進行E2E測試。
在每個功能的每個“steps.js”文件中,我在before
方法中有這個:
Before(async function() {
this.browser = await puppeteer.launch({ headless: false });
setDefaultTimeout(60 * 1000);
this.page = await this.browser.newPage();
await this.page.emulate(GalaxyS5);
await this.page.goto(URL);
});
問題是當我通過.\\node_modules\\.bin\\cucumber-js test\\e2e\\features
cucumber-js
運行它時: .\\node_modules\\.bin\\cucumber-js test\\e2e\\features
,最終發生的事情是我打開了3個Chromium瀏覽器。 其中2個轉到我指定的URL,最后一個只是一個空白頁面。
打開所有瀏覽器后,URL重定向的2中的1個也開始執行測試。
似乎每個新場景,一個新的瀏覽器窗口打開都不好,因為我最終得到了很多瀏覽器窗口。 有沒有辦法指定Puppeteer只使用一個瀏覽器進行測試,或至少在每個功能文件的基礎上使用?
我的項目層次結構如下:
e2e/
- features/
- feature1/
- feature1.feature
- steps.js (given, when, then, etc.)
- feature2/
- world.js
您是否嘗試過添加After:
After(async function() {
// Teardown browser
if (this.browser) {
await this.browser.close();
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.