Использование одних и тех же шагов корнишона в функциональных тестах множественного кодирования

Скажем, у меня есть сценарий функционального тестирования в example1.feature это шаг

«У меня есть что-то в базе данных»

В моей папке шагов есть реализация этого шага в файле example1.php.

Теперь скажите, что я хочу использовать тот же шаг в example2.feature. Я знаю, что если я не осуществлю этот шаг в example2.php, он будет автоматически использовать реализацию из example1.php.

Но рекомендуется ли это? реализовать шаги из одного теста в классе другого теста? Кажется, что это сломало бы изоляцию тестовой группы …

Или я должен скопировать / вставить код в example2.php чтобы у каждого теста была своя реализация шагов? Кажется, очень сухой и обслуживающий кошмар …

Или есть другой рекомендуемый способ справиться с такой ситуацией, может быть, все классы шагов расширяют общий класс, который определяет шаги, которые будут использоваться в нескольких тестах?

1

Решение

Возможно ли иметь две реализации для одного и того же шага? В других вариантах огурца вы поставите неоднозначную ошибку шага. Инструмент не знает, какую реализацию использовать.

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

Причина, по которой я больше беспокоюсь о двух реализациях, заключается в том, что нет хорошего способа узнать, что они не отклоняются во время обслуживания. Если они отклоняются, то вы попадаете в ситуацию, когда один и тот же шаг в корнишоне означает две разные вещи. Это было бы плохо.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]