Я пытаюсь следовать соглашению о присвоении имен UnitTests Roy Osherove с шаблоном именования: [MethodName_StateUnderTest_ExpectedBehavior].
После этого шаблона. Как Вы назвали бы тест, вызвав конструктора?
[Test]
public void ????()
{
var product = new Product();
Assert.That(product, Is.Not.Null);
}
Я не знаю, как вы бы назвали этот модульный тест, но я настоятельно рекомендую вам избегать его написания, поскольку нет ничего, что могло бы привести к сбою утверждения. Если конструктор завершится успешно, CLR гарантирует вам новый экземпляр, который не будет нулевым.
Теперь, если конструктор вашего объекта вызывает исключение при некоторых обстоятельствах, вы можете назвать его так:
[TestMethod]
[ExpectedException(typeof(ArgumentNullException))]
public void Product_Constructor_ShouldThrowIfNullArgumentSupplied()
{
new Product(null);
}
Итак, два возможных случая для кода, который вы тестируете:
Не нужно тестировать первое.