Мне нужно издеваться над довольно сложным веб-сервисом Java, и я ищу правильное решение. Один из способов сделать это - использовать пользовательский интерфейс Soap, но мне нужно что-то, что могло бы изменить состояние сервера, т.е. один запрос повлиял бы на будущие запросы.Лучший способ издеваться над веб-сервисом java
В этом конкретном случае это можно сделать быстро, сохранив сериализованные объекты на диск и иногда создавая асинхронные ответы на исходящий клиентский веб-сервис.
Эти два требования не позволяют мне использовать SoapUI - логическая логика станет довольно сложной и, вероятно, трудно выполнить.
Мои вопросы:
1) Существуют ли какие-либо другие преимущества SoapUI в этом контексте (например, простой переход к новой версии WSDL) над пользовательских Java издеваться реализации.?
2) Что было бы наиболее подходящим способом создания веб-службы из wsdl и по-прежнему можно было бы подключить некоторые пользовательские функции, т.е. путем прикрепления некоторых перехватчиков, которые можно было бы редактировать в отдельных файлах (чтобы облегчить дальнейшее восстановление ws-кода из обновленного wsdl)?
Следует также отметить, что макет не только для целей тестирования, но и должен оставить клиентскую часть как есть, т.е. должно быть обычное http-соединение, только изменения конечной точки. Поэтому я думаю, что насмешливая структура не будет в этом случае. – aaimnr
Если вы говорите об интеграции, то я попытаюсь максимально точно отразить производственную среду и использовать реальный веб-сервис против базы данных UAT/QA. Если веб-сервис не находится под вашим контролем, посмотрите на создание «тестовых» данных, которые вы используете во время тестов.ИМХО, создавая «макет»/заглушку веб-сервиса, дает вам ложное чувство безопасности, потому что ваш «макет»/заглушка основан на ваших предположениях о том, как будет вести себя веб-сервис. Это нормально в модульных тестах, но для полного теста интеграции вы должны использовать настоящую вещь, чтобы быть уверенным, что она работает. –
Не совсем интеграционное тестирование, скорее подумайте об использовании его в целях обучения. Поскольку веб-службы, используемые интерфейсом, действительно трудно отразить (множество конфиденциальных данных), легче создать легкий макет, но достаточно интеллектуальный, чтобы поддерживать состояние и, следовательно, обеспечить возможность сценариев логической подготовки. – aaimnr