В Node-JS Selenium, Как получить имя сценария огурца и вставить текст поверх моего отчета из определения шага

Я могу получить это в версии огурца 1.X, но обновление огурца до более высокой версии не может использовать (это), и он говорит, что script.getName() не является функцией.

Я требую этого, потому что мой тест зависит от имени сценария, так как включает в себя общую функцию для разных данных теста.

Так я получаю имя сценария в версии 1.x для Cucumber.

`module.exports= function Steps() {
this.BeforeScenario(function (scenario, callback) {
        var currentScenarioName = scenario.getName();
        console.log(scenario.getName());
        callback(null);
    });
};`

И другой вопрос: как встраивать текст в мои отчеты об огурцах из моего шага "Определение" вместо того, чтобы делать это в хуках после функции

2 ответа

Чтобы расширить ответ Lean Prop, я обнаружил, что в Cucumber 4.x (используя 4.1) этот код работает:

const { defineSupportCode } = require('cucumber');

defineSupportCode(function({Before}) {
    Before((scenario)=> {
      console.log('scenario.pickle.name);
    });
})

В Cucumber 3.x, чтобы получить имя сценария, вы можете использовать первый параметр, переданный перед хуком Before, который является маринованной версией объекта Scenario. Вот код:

const { defineSupportCode } = require('cucumber');

defineSupportCode(function({Before}) {
    Before((scenario)=> {
      console.log('before scenario', scenario.name);
    });
})

Вы можете распечатать этот объект сценария, чтобы узнать, какая другая информация содержится в этом объекте.

Вот документ, в котором упоминается "testCase", который равен вышеуказанному параметру сценария.

Кстати, кажется, вы используете оба огурца 1.x или 3.x. Вы можете попробовать CukeTest, который имеет возможность редактировать обе версии, а также обеспечивать генерацию и проверку кода.

Пожалуйста, также поделитесь, как вы вставляете текст в отчет в вашей текущей версии, я знаю только о методе "attach" в объекте World, который может вставлять изображения в отчет.

Другие вопросы по тегам