Я какое-то время использовал тестирование транспортиров вместе с каркасом огурца js. Я сталкивался с этой проблемой «определение шага не найдено» раньше, но это всегда было быстрое исправление конфигурации, пока я не поиграл с этой библиотекой «cukefarm» на https://www.npmjs.com/package/cukefarm.
The ' cukefarm 'использовать' транспортир-огурец-каркас '(https://github.com/protractor-cucumber-framework/protractor-cucumber-framework), в который я также играл раньше. Поэтому я начинаю следить за страницей readme 'cukefarm' и начинаю строить над ней проект hello world.
Вот что я знаю о тестировании (транспортир) / cucumber js обычным образом:
- определение шага обычно указывается в следующем формате:
cucumberOpts:
{
// require step definitions
require: [
'path/to/step/definitions/**/*.steps.js'
]
}
огурец js попытается переопределить шаг файла соответствия элементов с определением шага, заданным в 'cucumberOpts', и, если сопоставлено, определение шага найдено
Я не знаю Не думайте, что определение шага. js Файл сначала компилируется / проверяется синтаксисом перед использованием. Я попытался добавить некоторые зашифрованные символы в файл определения шага. js, но не в функцию, используемую файлом функций, он не останавливает запуск теста.
В моем новый проект 'cukefarm_example', я выполнил следующую проверку:
- Я записываю в консоль сгенерированный 'cucumberOpts', он указывает на правильный путь к файлу определения шага
"cucumberOpts": {
"require": [
"support/*.js",
"step_definitions/*.js"
],
Я открываю проект в IDE, в котором есть плагин cucumber js, и он показывает соответствие между шагом файла функции и определением шага. js function
Тем не менее, я все еще получаю шаг определение «Не определено. Реализуйте с помощью следующего фрагмента: 'ошибка.
Предупреждения:
1) Сценарий: Добавить числа # особенности / арифметики c .функция: 6? Дано Калькулятор открыт Не определено. Реализуйте с помощью следующего фрагмента:
Given('The calculator is open', function () {
// Write code here that turns the phrase above into concrete actions
return 'pending';
});
Существует ли системный c способ проверки или отладки процесса загрузки огурца js, чтобы увидеть, как он выполняет загрузку файлов определений шагов и как он находит определение шага. js на основе шага файла функций?
У меня заканчиваются идеи, просто проверяя конфигурацию глазами.