NUnit Test - как использовать его в вашем приложении - PullRequest
1 голос
/ 10 января 2010

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

Ответы [ 3 ]

3 голосов
/ 10 января 2010

NUnit - это фреймворк для модульного тестирования - вместо того, чтобы использовать его непосредственно в вашем приложении, он позволяет вам создавать отдельные наборы тестов для тестирования компонентов вашей фреймворк.

Модульное тестирование - это тестовый подход, при котором вы тестируете небольшие отдельные блоки вашего приложения, а не тестируете все как единое целое.

Причина, по которой это помогает улучшить дизайн приложения, заключается в том, что он побуждает вас писать свое приложение небольшими блоками, каждое из которых отделено от других и поэтому может быть протестировано. Это усиливает понятие «разделения интересов»; убедившись, что каждый тип отвечает только за одну задачу.

Кроме того, многие люди подходят к разработке, используя философию «Сначала тестируй модуль», когда ты пишешь свой тест для некоторого кода, прежде чем писать настоящий код. Идея здесь следующая последовательность:

  • Напишите свой тест. Это провал (Красный) тест, так как нет кода для тест.
  • Напишите свой код, чтобы тест работает (ЗЕЛЕНЫЙ).
  • Теперь у вас есть тест для проверки вашего код, вы можете легко переписать и улучшить ваш код, с высоким уровнем уверенности, что вы не ломая это. (Рефакторинг)

Здесь вы увидите, как люди обращаются к этому подходу КРАСНО-ЗЕЛЕНЫЙ-РЕФАКТОР

В Интернете много информации о том, как подойти к модульному тестированию. Просто Гул "модульное тестирование C #".

Тем не менее, посмотрите документацию на сайте NUnit (пока я пишу это по какой-то причине) и посмотрите другие SO-сообщения, связанные с модульным тестированием.

Кроме того, здесь - довольно обширная статья по проекту кода, хотя я не углубился в нее, поэтому не знаю, насколько она хороша.

Может быть, другие с хорошими ссылками могут добавить их в качестве комментариев к этой статье.

3 голосов
/ 10 января 2010

NUnit является основой для проведения модульного тестирования .

Если вы не знакомы с модульным тестированием, «Испытание заражено» может быть хорошим введением для вас. Речь идет о jUnit (Java), а не о NUnit, но я не думаю, что это должно быть слишком большой проблемой для вас.

Существует множество книг по модульному тестированию - Роя Ошерова «Искусство модульного тестирования» очень рекомендуется.

2 голосов
/ 10 января 2010

То, о чем вы спрашиваете, это модульное тестирование . С точки зрения Layman, вместо того, чтобы тестировать ваше приложение, запустив его, вы вместо этого пишете код, который тестирует ваше приложение небольшими блоками. Примером теста может быть что-то вроде этого:

[Test]
public void Get_All_People_Returns_Correct_Number_Of_People()
{
    // setup
    database.Add(new Person());
    database.Add(new Person());
    database.Add(new Person());

    // test
    Assert.That(database.GetAllPeople().Count(), Is.EqualTo(3));
}

Перед тем, как приступить к работе с NUnit, вы обязательно должны прочитать больше о модульном тестировании, разделении интересов и хорошем дизайне приложений. Модульное тестирование эффективно только тогда, когда ваше приложение разработано в виде небольших тестируемых блоков, которые не мешают друг другу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...