Я знаю, что обычно вы не должны зависеть от порядка ваших модульных тестов, но в xunit возможно ли заставить ваши тесты выполняться в определенном порядке?
В xUnit.net можно ли запускать тесты по порядку?
Ответы (3)
В нашем проекте Samples есть образец с именем PrioritizedFixtureSample, который позволяет вам управлять порядком тестов.
См. примеры в нашем последнем выпуске: https://xunit.net/#releases.
[Fact]
называется TestPriority
, который сам по себе принимает целое число (со знаком), представляющее порядок тестов. Экспонат А: [Fact, TestPriority(5)]
. На всякий случай, если вы не хотите скачивать и загружать пример проекта...
- person Kezzer; 23.01.2012
Fact
больше не имеет свойства TestPriority
.
- person Fitzchak Yitzchaki; 19.04.2012
[TestPriority]
НЕ ЯВЛЯЕТСЯ частью xUnit
. См. ссылки, предоставленные @AndreasReiff, для примеров реализации.
- person Chris Marisic; 09.09.2014
Нет, я так не думаю, но модульные тесты по определению должны быть независимыми, поэтому порядок не должен иметь значение. Если у вас есть естественная зависимость, которую вы не можете разделить, я бы посоветовал вам объединить тесты в один блок с несколькими утверждениями.
xUnit.net не позволяет заказывать тесты.
Однако некоторые другие фреймворки это делают. Например, в mbUnit к атрибутам теста можно прикрепить свойство Order. . Многие сторонники TDD считают, что это злоупотребление, и любой тест, требующий порядка, должен быть объединен в отдельный модульный тест, но многие люди считают полезной возможность упорядочивать тесты в определенных обстоятельствах.