С существующим n-уровневым веб-приложением, использующим ASP.net WebForms, каков наилучший подход к принятию TDD в приложении. Каков хороший план для того, чтобы разработчики приняли решение двигаться вперед и писать тестовый код, а не игнорировать тесты, пока реализация TDD находится в подвешенном состоянии?
Зная, что будет большое «неопределенное» время низкого покрытия: для каких областей модели вы начинаете писать тесты в первую очередь? Критические области использования или новая разработка?
2 ответа
Я согласен с womp, модульное тестирование и WebForms - это сложно. Особенно, если большая часть вашей логики встроена в код файлов.
Я счел полезным сначала создать функциональные тесты, используя что-то вроде Selenium. Имея приличное покрытие функциональных тестов, я могу начать рефакторинг, добавляя модульные тесты по ходу дела.
Веб-формы ASP.Net, как известно, сложно создавать модульные тесты из-за встроенных зависимостей от статических объектов HttpApplication и HttpContext, а также нечеткой абстракции жизненного цикла страницы.
При этом всегда намного проще начать писать тесты для нового кода, чем тратить время на то, чтобы вернуться к старому коду. Старый код необходимо будет серьезно переработать, чтобы обеспечить надлежащее тестирование.
Похожие вопросы
Новые вопросы
asp.net
ASP.NET - это среда разработки веб-приложений Microsoft, которая позволяет программистам создавать динамические веб-сайты, веб-приложения и веб-службы. Полезно использовать этот тег в сочетании с тегом типа проекта, например, [asp.net-mvc], [asp.net-webforms] или [asp.net-web-api]. НЕ используйте этот тег для вопросов о ASP.NET Core - используйте вместо этого [asp.net-core].