Я тестирую пользовательский интерфейс моего приложения ASP.Net Web Forms, используя NUnit / Watin. Я понимаю концепции высокого уровня, связанные с TDD, модульным тестированием, интеграционным тестированием и т. Д., Но до сих пор у меня не было возможности использовать их.
Итак, когда я тестирую логику проверки в форме ввода данных, должен ли я написать один тест, который вызывает каждую из моих ошибок проверки (т. Е. Поле x требуется), или отдельный тест для каждой из ошибок проверки, должен быть брошен по форме. Это просто проблема стиля или есть веские причины для написания нескольких тестов вместо одного, который затрагивает все возможные комбинации моей логики валидации?
Код Psuedo:
[Test]
public void Validation()
{
//Do some stuff to test that username is required.
Assert.AreEqual(true, ie.ContainsText("Username is required.");
//Do some stuff to test that passwword is required.
Assert.AreEqual(true, ie.ContainsText("Password is required.");
}
против
[Test]
public void ValidateUserName()
{
//Do some stuff to test that username is required.
Assert.AreEqual(true, ie.ContainsText("Username is required.");
}
[Test]
public void ValidatePassword()
{
//Do some stuff to test that passwword is required.
Assert.AreEqual(true, ie.ContainsText("Password is required.");
}