runStep
Обзор
Используйте команду runStep
, чтобы получить человекочитаемую историю выполнения теста, которая, в том числе, автоматически будет отображаться в html-reporter.
Шаги могут быть вложенными.
Использование
await browser.runStep(stepName, stepCb);
Параметры команды
Имя | Тип | Описание |
stepName | string | Название шага. |
stepCb | () => Promise<any> | Функция с набором команд, которые нужно объединить в единый шаг. |
Примеры использования
it("test", async ({ browser }) => {
await browser.runStep("prepare page", async () => {
await browser.url("some/url");
await browser.setCookies(someCookies);
});
await browser.runStep("make an order", async () => {
await browser.runStep("navigate to the shopping cart", async () => {
await browser.$("not-exist-selector").click();
});
});
});
Данный тест завершится с ошибкой "Cannot call click on element with selector 'not-exist-selector' because element wasn't found" из-за отсутствующего селектора и будет создана следующая история:
- testplane: init browser
- prepare page
- make an order
- navigate to the shopping cart
- $("not-exist-selector")
- click()
- waitForExist
В этом примере шаг prepare page
свернут, т.к. он был выполнен успешно.
Также, вы можете вернуть конкретное значение из шага.
const parsedPage = await browser.runStep("parse page", async () => {
// ...
return someData;
});