Я не работаю с NUnit напрямую, но хочу позаимствовать некоторые из его идей в другом контексте.
Одна особенно элегантная идея - это механизм ограничений, который позволяет вам написать модульный тест в форме:
Assert.That(aValue, Is.GreaterThan(2.0) & Is.LessThan(5.0));
Вы также можете проверить, находится ли значение в некотором диапазоне:
Assert.That(aValue, Is.InRange(2.0, 5.0));
Однако, похоже, нет способа проверить, что aValue
является одним из набора допустимых значений:
Assert.That(aValue, Is.OneOf(aCollection));
Is это просто не так часто встречается в модульном тесте? Указывает ли это на проблемы с моими модульными тестами?
Все ли просто вставляют aValue в какую-то фиктивную коллекцию из одного элемента, а затем используют Is.SubsetOf
?