Как лучше всего провести модульное тестирование веб-страниц ASP.NET 2.0?[закрыто]

StackOverflow https://stackoverflow.com/questions/4363

Вопрос

Какие-либо предложения?Использование Visual Studio на C#.

Существуют ли какие-либо конкретные инструменты или методы для решения этой проблемы?

Обновлять:

Извините, мне следовало быть немного более конкретным.Я использую ASP.Net 2.0 и больше искал такой инструмент, как jUnit для Java.Я взглянул на NUnit и NUnitAsp, и это выглядит очень многообещающе.И я даже не знал, что у Visual Studio Pro есть набор для тестирования, поэтому я рассмотрю все эти варианты (я начал использовать Visual Studio/Asp.net/C# только этим летом).

Это было полезно?

Решение

Ребята, это довольно общий вопрос.Я сделаю все возможное, но будьте готовы увидеть, что я промахнусь на милю.

Предположения

  1. Вы используете ASP.NET, а не обычный ASP.
  2. На самом деле вы не хотите тестировать свои веб-страницы, но логика позади них.Модульное тестирование реальных страниц .ASPX довольно болезненно, но существуют платформы для этого. НУнитАсп это один.

Первое, что нужно сделать, — это организовать (или спланировать) ваш код так, чтобы его можно было протестировать.Двумя наиболее популярными шаблонами проектирования в настоящее время являются MVP и MVC.Оба разделяют логика приложения вдали от вид чтобы вы могли протестировать логику, не мешая представлению (веб-страницам).

Либо MVP, либо MVC будут эффективны.Преимущество MVC заключается в наличии платформы Microsoft. почти готов к работе.

После того как вы выбрали шаблон платформы, который способствует тестированию, вам необходимо использовать инструмент модульного тестирования. НУнит это хорошая отправная точка.Visual Studio Professional имеет комплект тестирования создал это, но NUnit + ТестДрайв.NET также работает в IDE.

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

Другие советы

Примерно год назад на Polymorphic Podcast была серия скринкастов, в которой было довольно хорошее вводное описание реализации MVP в ASP.NET.При такой реализации модульные тесты становятся гораздо более естественными.

http://polymorphicpodcast.com/shows/mv-patterns/

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

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

ВатиН это лучшее, что я нашел.Он интегрируется в модульное тестирование Visual Studio или nunit, и вы можете делать в браузере практически все, что вам нужно (нажимать ссылки, отправлять формы, искать текст/изображения и т. д.), плюс он написан на .net, поэтому вам не нужно установить Ruby (как и для watir, который, тем не менее, является потрясающим инструментом)

Взгляни на http://selenium.openqa.org/ он предлагает хороший автоматизированный способ создания модульных тестов, подключаемых к браузеру.Существует хороший плагин Firefox для записи тестов, который может использовать практически любую среду модульного тестирования.В прошлом месяце на собрании местной группы пользователей у нас была презентация/демонстрация, и она выглядела потрясающе.

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

Если вы действительно хотите провести модульное тестирование взаимодействия пользователей с веб-страницей, некоторые из упомянутых инструментов, таких как waitn, кажутся хорошими, дополнением к тому, о котором я слышал, является Селен

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top