Порядок выполнения функций specflow

Могу ли я как-то заставить порядок выполнения в моих функциях и сценариях или в тестах Nunit, которые генерируются из файла функций specflow? Было бы неплохо, если бы я мог сначала протестировать все свои функции ввода данных, а затем функции изменения данных и удаления данных.


person Vajda    schedule 28.01.2011    source источник


Ответы (2)


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

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

person Darren    schedule 04.02.2011
comment
Говоря «хорошо», я имею в виду, что если у меня есть тесты для добавления данных в какое-либо хранилище, изменения формы хранения данных и удаления данных из хранилища. Было бы неплохо упорядочить их таким образом, потому что мне не нужно будет добавлять данные перед удалением тестов или модификацией тестов... Хорошо, я должен прислушаться к вашему совету и сделать тесты независимыми - person Vajda; 05.02.2011
comment
Я бы посоветовал попробовать независимые тесты, я думаю, вы обнаружите, что с этим намного проще справляться, когда ваше приложение растет. - person Darren; 07.02.2011

Я использую плагин resharper для запуска тестов. Итак, вот что сделано, чтобы расположить их по порядку (знаю, что это не лучшая идея, но у меня особый случай. :) )

Resharper упорядочивает тесты в алфавитном порядке для данного файла функций.

Поэтому я назвал сценарии с префиксами 1,2,3 и так далее в зависимости от порядка, в котором я хочу, чтобы они запускались.

Грязный, но нормальный метод, если вы в отчаянии;)

person Illuminati    schedule 12.07.2011
comment
Да, я заметил это и в Nunit, но говорят, что Nunit не гарантирует порядок тестов. Так что это может быть в алфавитном порядке в течение некоторого времени, а затем они могут решить изменить реализацию. Это не точно, я не могу полагаться на это. - person Vajda; 12.07.2011