nUnit — игнорирование одного встроенного TestCase

Я использую nUnit для некоторого тестирования, и у меня есть тест с несколькими встроенными входными данными тестового примера. У меня есть известная ошибка с одним из входных данных TestCase, и я хотел бы, чтобы этот единственный TestCase игнорировался, а остальные четыре запускались. Когда я пытался

      TestCase["ears"]
TestCase["eyes", Ignore("Bug is JIRA #FOO", Until = "2022-02-15"))]
TestCase["nose"]
TestCase["mouth"]
TestCase["touch"]
public async Task CanUseSense(string sense)
{
    useSense(sense);
}

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

1 ответ

В вашем образце вы применили IgnoreAttribute. Что вы хотите сделать, так это установить свойство Ignore TestCaseAttribute.

      [TestCase("ears")]
[TestCase("eyes", Ignore = "Bug is JIRA #FOO", Until = "2022-02-15")]
[TestCase("nose")]
[TestCase("mouth")]
[TestCase("touch")]
public async Task CanUseSense(string sense)
{
    Assert.That(sense, Is.Not.EqualTo("eyes"));
}
Другие вопросы по тегам