Программирование в IIS

Тестирование веб-службы


Помимо метода Add (см. листинг 3.7) и функции LogMessage (см. листинг 3.9) служба Events содержит три общих веб-метода: Delete, Open и HelloWorld. Методы Delete и Open аналогичны функции Add, т.е. выполняют чтение и запись отправляемых пользователем данных. HelloWorld является методом по умолчанию, размещаемым дизайнером компонентов во всех новых веб-службах для демонстрации создания метода, доступного из интернета.

Если файл ASMX веб-службы установлен в качестве стартового файла, веб-службу можно запускать и отлаживать в Visual Studio .NET. Нажмите на клавишу F5 для запуска компилятора; при отсутствии ошибок откроется браузер с отображением тестовой структуры технологии .NET (см. рис. 3.17).

Щелкните на любом из вызовов метода для открытия новой страницы, отображающей форму записи данных на базе параметров метода. Для описываемого метода под полями записи данных определены и описаны запрос и ответ HTTP и SOAP.


Рис. 3.17.  Запрос веб-службы с помощью браузера

Данные, расположенные в текстовых полях на странице тестирования, будут переданы в качестве аргументов параметров метода после нажатия на кнопку Invoke (Запросить). На рисунке 3.18 показана страница тестирования метода Open в браузере.


Рис. 3.18.  Метод Open веб-службы Events, запрошенный в браузере

Присвойте ID значение 13 и нажмите на кнопку Invoke (Запросить), в результате чего откроется другое окно браузера с результатом вызова метода Open в формате XML. Метод Open возвращает значение "истина" или "ложь" в случае успеха или неудачи (соответственно) выполняемой функции, поэтому такой ответ неинформативен. Он не позволяет выяснить, правильно ли веб-служба открыла запись; но обратная связь показывает, что веб-служба считает свои действия правильными, так как возвращается значение "истина" (см. рис. 3.19). Нам желательно увидеть данные, извлекаемые из источника данных, поэтому тестовая структура технологии .NET не подходит для модульного тестирования рассматриваемой службы.


Рис. 3.19.  Ответ метода Open в браузере



Содержание раздела