/ / за який рівень потрібно написати одиничний тест? - .net, asp.net-mvc-3, wcf, unit-testing, mstest

за який шар потрібно написати одиничний тест? - .net, asp.net-mvc-3, wcf, unit-testing, mstest

Я новачок у тестуванні пристроїв / TDD. Ми розробляємо веб-додаток з наступною архітектурою:

  1. MVC
  2. WCF службовий рівень
  3. Бізнес логічний рівень
  4. DAL з EF

Я ще не проводив тестування апаратів, але бачив це в деяких проектах, тому я не маю чіткого уявлення про це.

Чи слід написати одиничний тест для кожного методу кожного шару або вони специфічні для певного шару?

По-друге, ми повинні поставити один проект і поставити в нього всі тести на рівні шару? Я хочу знати, як керувати одиничними тестами для всіх шарів у тестовому проекті?

Відповіді:

1 для відповіді № 1

Я працюю для повноцінного магазину, і ми робимо наступне:

1. Почнімо з написання UATs (Тестування прийому користувачів). Для вас це буде зроблено через Cucumber + WatiN або щось подібне. Вони написані з урахуванням бізнес-функцій.
2 Далі ми записуємо одиничні тести для класу (ів), які ми маємо намір додати. Це означає тестування кожного відкритого методу та всіх його логічних гілок. Це багато в чому стосується всього, крім поглядів.
3. Для волосатого коду ми додаємо тести рівня інтеграції, які зв'язують кілька класів, щоб переконатися, що вони правильно інтегруються.

Деякі шари не перевіряються, оскільки існує припущення, що вони "просто працюють" (тобто СУБД)

Зазвичай ваш КІ повинен спершу запустити тестування на підрозділі, а потім інтеграційні тести (якщо пройти тестування одиничних тестів), і, нарешті, UAT, які є найбільш повільними, і лише при проходженні інтеграційних тестів