Angular 5、分度器とキュウリを使用してe2eおよびbddテストを実行しています。ターミナルで実行するとng e2e
次のエラーが発生します。
ページを開くと#e2e\steps\home.steps.ts:15
エラー:関数がタイムアウトしました。約束が5000ミリ秒以内に解決されることを確認してください
15行目で、私は:
When(/^I open the page$/, async () => {
await browser.get('http://localhost:49156');
});
具体的には、次の行です。
When(/^I open the page$/, async () => {
答えは非常に簡単です。デフォルトでは、Cucumberは非同期フックに5000ミリ秒かかりますが、次のように構成できます。
When(/^I open the page$/, {timeout: 2 * 5000}, async () => {
グローバルに構成することも可能です。
var {setDefaultTimeout} = require('cucumber');
setDefaultTimeout(60 * 1000);
詳細: https://github.com/cucumber/cucumber-js/blob/master/docs/support_files/timeouts.md
もう1つ、ポートを不適切に構成しました。ご覧のとおり、ポート49156に構成しました。これはデフォルトのポートであると読みましたが、既に変更されており、ポート49152になっているようです。