некоторые основные вопросы по тестированию или юнит-тестированию - PullRequest
2 голосов
/ 22 ноября 2010

Так что обычно мои приложения очень маленькие, и моя тестовая среда - это просто консольный проект.,Я добавляю туда классы со статическими методами и проверяю свой код.Я нахожу этот подход довольно простым и приятным (особенно если учесть, что вывод получен)

У меня есть хороший небольшой тестовый проект в Visual Studio, поэтому я был немного озадачен тем, как вы будете тестировать вещикоторые не кажутся единицей, такой как , например:

Purchase.LoadAllAsync()//finished loading on the loadcomplete event

Какой тип модульного теста я бы написал для этого?Тем более, что это будет меняться в зависимости от того, что в базе данных?

Я сделал несколько разведок на SO и обнаружил следующее: Когда тест не является юнит-тестом?

Что меня больше смутило, если тест не является юнитомпроверить, как бы вы проверить это?

Иногда я обычно просто пишу небольшую тестовую функцию в главной форме или на главной странице в silverlight, а затем просто удаляю ее.Но я думаю, что юнит-тестирование используется, потому что тесты должны оставаться там, чтобы вы могли использовать их снова, верно?

Извините, если я слишком невежественен!= P
Спасибо

Обновление


Также хотелось бы добавить: как насчет тестов, которые хорошо работают в самом приложении, но при вызове из внешнего кодаэто терпит неудачу.(Это случалось со мной пару раз) Это случается и с вами, ребята, и / или означает ли это плохой дизайн?

1 Ответ

5 голосов
/ 22 ноября 2010

Если ваши тесты зависят от обстоятельств, не зависящих от вас, первое , что вы должны сделать, это взять их под свой контроль: -)

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

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

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