VS Coded UI - фактические юнит-тесты - PullRequest
0 голосов
/ 15 марта 2012

Я разработчик C # и пользовательского интерфейса и мне интересно написать модульные тесты в VS CodedUI для веб-приложений ASP.NET.Большинство случаев, которые я видел, это интеграционные тесты , в которых вы пишете тест, который указывает на реальную веб-страницу, выполняете некоторые шаги и тестируете вывод.Я хочу, чтобы что-то меньшее и более детальное, что было бы очень просто для разработчиков (читай: lazy: P), чтобы написать.

Моя текущая настройка выглядит так:

  • Веб-приложение, содержащее страницы, элементы управления, javascript и т. д.
  • Веб-приложение также содержит тестовые страницы - страницы, содержащие один пользовательский элемент управления в разметке и некоторые жестко закодированные данные в выделенном коде.
  • Проект CodedUI, который запускает тестовую страницу, запускает тест и подтверждает вывод.

Это хорошее начало, но я хочу его улучшить.

The (first...) проблема в том, что данные теста и шаги теста находятся в разных местах - в веб-приложении и проекте codedUI соответственно.В обычных модульных тестах разработчика вы пишете код, который устанавливает данные, затем делаете все остальное, и все, что вам нужно, находится в одном месте.При моей настройке человек, который смотрит на неудачу теста, должен знать, как смотреть на тест и страницу, на которой проводится тестирование.

Несколько идей, которые у меня были, и почему они отстой:

  1. Поместите тестовую страницу в проект codedUI.Это проблема по нескольким причинам.Пользовательские элементы управления не могут быть легко протестированы, это была моя точка остановки, но я думаю, что есть много других.
  2. Передайте строку запроса на тестовую страницу, которая предоставляет данные.Это не ужасная идея, но она может быстро стать громоздкой.
  3. Передать открытый класс для загрузки тестовой страницей, которая содержит тестовые данные.Для этого на тестовой странице должна быть ссылка на проект тестирования, что не годится.
  4. Динамически записывать и компилировать тестовую страницу в тесте codedUI.Я даже не хочу начинать с этого.

1 Ответ

0 голосов
/ 08 апреля 2012

Полагаю, вы говорите о модульном тестировании ваших веб-страниц с внешними данными. С CUIT вы можете сделать это с управляемой данными CUIT .

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