Как проверить код ASP.NET - PullRequest
       6

Как проверить код ASP.NET

2 голосов
/ 07 октября 2011

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

Деталь:

  1. Элементы управления aspx не используются.
  2. Фактически программный код читает html-файл, заполняет данные из базы данных и записывает окончательный html в ответ.

Я понимаю, что методы code-behind являются тестируемыми, но как? Какие-нибудь инструменты? Можете ли вы предоставить некоторые ссылки, пожалуйста? Спасибо.

Ответы [ 2 ]

1 голос
/ 07 октября 2011

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

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

  1. Уровень доступа к данным
  2. HTML Writer

Если вы ищете для тестирования пользовательского интерфейсаКроме того, вы можете использовать специальные платформы, такие как WatiN :

Вдохновленный Watir, разработка WatiN, начатая в декабре 2005 года, позволила сделать подобный вид тестирования веб-приложений для языков .Net.С тех пор WatiN превратился в простой в использовании, многофункциональный и стабильный фреймворк.WatiN разработан на C # и призван предоставить вам простой способ автоматизации ваших тестов с помощью Internet Explorer и FireFox с использованием .Net

РЕДАКТИРОВАТЬ: Ответ на комментарии

  • Как правило, помощники и службы доступа к данным расположены в отдельной сборке и абстрагированы интерфейсами, поэтому их легко заменить и протестировать
  • Мне нравится подход, когда у каждого проекта есть свой отдельный тестовый проект, в основном, если вы будетепридерживаться отдельного проекта DataAccessLayer - все связанные тесты было бы здорово разместить в отдельном DataAccessLayer.Tests проекте
0 голосов
/ 07 октября 2011

Я думаю, вы должны взглянуть на шаблон MVP (Model-View-Presenter) для ASP.NET Web Forms. Я также нахожусь в процессе переписывания веб-сайта, который не использовал MVP.

Вот несколько ссылок:

Надеюсь, это поможет вам. Кроме того, если у вас есть возможность прочитать Dino Esposito Programming Microsoft ASP.NET 4 , вы найдете хорошую главу, в которой подробно объясняется MVP.

...