Получите Nunit Test Order после выполнения для анализа хрупких тестов
Это не вопрос настройки и демонтажа. Это не вопрос об атрибутах заказа.
Когда я запускаю свои тесты Nunit, один из них убивает зависимость, на которую опираются другие тесты. Мое резюме показывает множество неудачных тестов.
Хорошее место для начала было бы последним проходящим тестом, проходящим мой путь вниз через последующие неудачи. Мне нужно посмотреть файлы журналов тестов или что-то лучше.
Я запускаю тесты с использованием testadapter в visual studio.
Вот мои пакеты:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Castle.Core" version="3.3.3" targetFramework="net452" />
<package id="NUnit" version="3.5.0" targetFramework="net452" />
<package id="NUnit3TestAdapter" version="3.6.0" targetFramework="net452" />
<package id="RhinoMocks" version="3.6.1" targetFramework="net452" />
<package id="TestStack.White" version="0.13.3" targetFramework="net452" />
</packages>
Я не могу понять, где находятся файлы журнала последнего теста. Поиск в Интернете или переполнение стека мне не помогли. Возможно, я использовал неправильные условия поиска.
Моя проблема в том, что мне нужно найти один тест, который является хрупким и не проходит последующие тесты, чтобы я мог выяснить, как это исправить.
РЕДАКТИРОВАТЬ: Я нашел кое-что о трассировщик. Я могу активировать его с помощью OneTimeSetUp
моей самой базы SetUpFixture
,InternalTrace.Initialize(TestContext.CurrentContext.WorkDirectory + "nunittrace.log", InternalTraceLevel.Debug);
К сожалению, это не имело реального эффекта, что файл содержит только одну строку, подтверждающую инициализацию.
РЕДАКТИРОВАТЬ: я не хочу полагаться на порядок испытаний или контролировать порядок испытаний. Маркировка тестов с атрибутом заказа полностью исключена. Я хочу посмотреть на порядок тестов после выполнения, чтобы я мог найти, что именно делает эти тесты хрупкими, чтобы исправить их, контролируя эту хрупкость. Setup / Teardown, другой интерфейс? все варианты, которые у меня будут, когда я найду проблему.
1 ответ
С такой проблемой я бы использовал консольный бегун, а не адаптер VS. --labels:Before
опция выдаст вам список всех тестов в порядке их выполнения.
Если вы используете какое-либо параллельное выполнение, вам, очевидно, следует отключить его для этих тестовых прогонов. Вы можете сделать это в консоли, не редактируя свой тестовый код, используя --workers=0
в командной строке.