Я хочу проигнорировать некоторые тесты на основе данных, которые я вытащил из файла конфигурации во время TestFixtureSetUp
. Есть ли способ игнорировать запуск теста на основе параметров?Селективный Игнорировать тесты NUnit
[TestFixture]
public class MessagesTests
{
private bool isPaidAccount;
[TestFixtureSetUp]
public void Init() {
isPaidAccount = ConfigurationManager.AppSettings["IsPaidAccount"] == "True";
}
[Test]
//this test should run only if `isPaidAccount` is true
public void Message_Without_Template_Is_Sent()
{
//this tests an actual web api call.
}
}
Если счет мы тестируем с платным счетом, тест должен работать нормально, если нет, то этот метод будет сгенерирован исключением.
Будет ли расширение атрибута [Ignore(ReallyIgnore = isPaidAccount)]
? Или я должен написать это внутри метода и запустить 2 отдельных тестовых примера, например.
public void Message_Without_Template_Is_Sent()
{
if(isPaidAccount)
{
//test for return value here
}
else
{
//test for exception here
}
}
хороший вопрос. +1 –
'Assert.Ignore()' в рамках теста. – Matthew
@Matthew, так что его хорошая практика просто проверить состояние до и проигнорировать тест? –