В поисках магической кнопки, или как воспитать soapui
DESCRIPTION
Презентация доклада Михаила Дырды, Александры Волковой на конференции SQADays-14, Львов 8-9 ноября 2013TRANSCRIPT
![Page 1: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/1.jpg)
В поисках магической кнопки
Михаил Дырда, Александра Волкова
или как воспитать SoapUI
![Page 3: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/3.jpg)
Содержание
Проблемы «многосервисных» проектов
Возможности расширения SoapUI
Как мы применили эти возможности на проекте
![Page 4: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/4.jpg)
4
Soap UI это...
![Page 5: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/5.jpg)
WSDL (англ. Web Services Description Language) — язык описания веб-сервисов и доступа к ним, основанный на языке XML.
Веб-служба, веб-сервис (англ. web service) — идентифицируемая веб-адресом программная система со стандартизированными интерфейсами.Веб-службы могут взаимодействовать друг с другом и со сторонними приложениями посредством сообщений, основанных на определённых протоколах (SOAP, XML-RPC и т. д.)
Для справки
![Page 6: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/6.jpg)
История одного проекта
![Page 7: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/7.jpg)
Тесты
• однотипные сценарии;• асинхронные сервисы; • service-зависимые степы;• использование заглушек (mock)
![Page 8: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/8.jpg)
Clone TestCase
![Page 9: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/9.jpg)
Расширение Soap UI
Actions
Listener
Custom Factory
![Page 10: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/10.jpg)
Подключение расширений
name.jar
name-factories.xml
name-listeners.xml
name-actions.xml
![Page 11: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/11.jpg)
NewAction.java
Actions
![Page 12: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/12.jpg)
XXX-actions.xml
Actions
![Page 13: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/13.jpg)
13
добавить переменную ‘messageId’ на уровень теста; создать новый groovy test step; сгенерировать уникальный идентификатор и присвоить messageId
Демо
Actions
![Page 14: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/14.jpg)
NewListener.java
Listener
![Page 15: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/15.jpg)
15
Обработчики событий
![Page 16: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/16.jpg)
XXX-listeners.xml
Listener
![Page 17: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/17.jpg)
Factory.java
Custom Factory
![Page 18: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/18.jpg)
XXX-factories.xml
Custom Factory
![Page 19: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/19.jpg)
20
создать новый тип тестового шага ‘Generate Id’; шаг создает переменную и присваивает ей уникальный идентификатор;добавить ‘Generate Id’ на панель инструментов SoapUI
Демо
Custom Factory
![Page 20: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/20.jpg)
Actions
Что сделали мы
Templates
Scripts
Autotest
Autotest
Autotest
Mock Mock
Web Service
![Page 21: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/21.jpg)
22
Демо
Автоматизированное создание автотестов по шаблонам
Автоматизированное создание «заглушек» (mocks)
![Page 22: В поисках магической кнопки, или как воспитать SoapUI](https://reader035.vdocuments.site/reader035/viewer/2022062216/558c9529d8b42aeb248b4602/html5/thumbnails/22.jpg)
Результат
• отсутствие ошибок• экономия времени• создание теста за один клик