SlideShare a Scribd company logo
В поисках магической кнопки
или
как воспитать SoapUI
Михаил Дырда,
Александра Волкова
Михаил Дырда

mykhailo.dyrda@
iteraconsulting.com
mykhailo.dyrda

Александра Волкова

alexandra.volkova@
iteraconsulting.com
celenia_olv
2
Содержание
 Проблемы «многосервисных»
проектов
 Возможности расширения SoapUI
 Как мы применили эти возможности
на проекте

3
Soap UI это...

4
Для справки
Веб-служба, веб-сервис (англ. web service) — идентифицируемая веб-адресом
программная система со стандартизированными интерфейсами.
Веб-службы могут взаимодействовать друг с другом и со сторонними
приложениями посредством сообщений, основанных на определённых протоколах
(SOAP, XML-RPC и т. д.)

WSDL (англ. Web Services Description Language) — язык описания веб-сервисов
и доступа к ним, основанный на языке XML.

5
История одного проекта

6
Тесты

• однотипные сценарии;
• асинхронные сервисы;
• service-зависимые степы;
• использование заглушек (mock)

7
Clone TestCase

8
Расширение Soap UI

Actions
Listener

Custom Factory
9
Подключение расширений
name-actions.xml
name.jar

name-factories.xml
name-listeners.xml

10
NewAction.java

Actions
11
XXX-actions.xml

Actions
12
Демо
Actions
 добавить переменную ‘messageId’ на уровень теста;
 создать новый groovy test step;
 сгенерировать уникальный идентификатор и
присвоить messageId

13
NewListener.java

Listener
14
Обработчики событий

15
XXX-listeners.xml

Listener
16
Factory.java

Custom Factory
18
XXX-factories.xml

Custom Factory
19
Демо
Custom Factory

 создать новый тип тестового шага ‘Generate Id’;
 шаг создает переменную и присваивает ей
уникальный идентификатор;
добавить ‘Generate Id’ на панель инструментов SoapUI

20
Что сделали мы
Auto
test

Web Service

Auto
test

Actions
Auto
test
Templates
Mock

Mock

Scripts

21
Демо

 Автоматизированное создание автотестов по
шаблонам
 Автоматизированное создание «заглушек» (mocks)

22
Результат
• отсутствие ошибок
• экономия времени
• создание теста за один клик

23
alexandra.volkova@iteraconsulting.com
mykhailo.dyrda@iteraconsulting.com
mykhailo.dyrda
celenia_olv
24

More Related Content

What's hot

Автоматизация тестирования. Разбор конкретного примера - продукта XML2Selenium
Автоматизация тестирования. Разбор конкретного примера - продукта XML2SeleniumАвтоматизация тестирования. Разбор конкретного примера - продукта XML2Selenium
Автоматизация тестирования. Разбор конкретного примера - продукта XML2Selenium
jazzteam
 
ASP.NET MVC: new era?
ASP.NET MVC: new era?ASP.NET MVC: new era?
ASP.NET MVC: new era?
Alexander Konduforov
 
алексей диплом презентация
алексей диплом презентацияалексей диплом презентация
алексей диплом презентация
Алексей Городецкий
 
Azure - облачные сервисы и приложения
Azure - облачные сервисы и приложенияAzure - облачные сервисы и приложения
Azure - облачные сервисы и приложения
Alexander Babich
 
Mikhail Chub: Web Services Testing
Mikhail Chub: Web Services TestingMikhail Chub: Web Services Testing
Mikhail Chub: Web Services TestingAndriy Krayniy
 
Разработка Enterprise-приложения на основе Spring Framework
Разработка Enterprise-приложения на основе Spring FrameworkРазработка Enterprise-приложения на основе Spring Framework
Разработка Enterprise-приложения на основе Spring Framework
CUSTIS
 
Dotnet development
Dotnet developmentDotnet development
Dotnet developmentMageCloud
 
Azure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребностиAzure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребности
Александр Шамрай
 
Azure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестированиеAzure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестирование
Александр Шамрай
 
Azure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контрольAzure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контроль
Александр Шамрай
 
Интеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей СоловьевИнтеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей Соловьев
Positive Hack Days
 
7 создание веб сервисов
7 создание веб сервисов7 создание веб сервисов
7 создание веб сервисов
KewpaN
 
Сокращение времени регрессионного тестирования
Сокращение времени регрессионного тестированияСокращение времени регрессионного тестирования
Сокращение времени регрессионного тестирования
SQALab
 
Реализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCFРеализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCF
Pavel Tsukanov
 
Benchmark сканеров SQL injection
Benchmark сканеров SQL injectionBenchmark сканеров SQL injection
Benchmark сканеров SQL injection
Andrew Petukhov
 
автоматизация тестирования веб приложений павел липский
автоматизация тестирования веб приложений   павел липскийавтоматизация тестирования веб приложений   павел липский
автоматизация тестирования веб приложений павел липскийMedia Gorod
 
!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture!2hl++2008 Restful Architechture
!2hl++2008 Restful ArchitechtureOntico
 
Azure - введение
Azure - введениеAzure - введение
Azure - введение
Alexander Babich
 
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей БуровСистема мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров
Positive Hack Days
 
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tipsКостянтин Чаус — Monitoring of huge Drupal site. Tools and tips
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips
LEDC 2016
 

What's hot (20)

Автоматизация тестирования. Разбор конкретного примера - продукта XML2Selenium
Автоматизация тестирования. Разбор конкретного примера - продукта XML2SeleniumАвтоматизация тестирования. Разбор конкретного примера - продукта XML2Selenium
Автоматизация тестирования. Разбор конкретного примера - продукта XML2Selenium
 
ASP.NET MVC: new era?
ASP.NET MVC: new era?ASP.NET MVC: new era?
ASP.NET MVC: new era?
 
алексей диплом презентация
алексей диплом презентацияалексей диплом презентация
алексей диплом презентация
 
Azure - облачные сервисы и приложения
Azure - облачные сервисы и приложенияAzure - облачные сервисы и приложения
Azure - облачные сервисы и приложения
 
Mikhail Chub: Web Services Testing
Mikhail Chub: Web Services TestingMikhail Chub: Web Services Testing
Mikhail Chub: Web Services Testing
 
Разработка Enterprise-приложения на основе Spring Framework
Разработка Enterprise-приложения на основе Spring FrameworkРазработка Enterprise-приложения на основе Spring Framework
Разработка Enterprise-приложения на основе Spring Framework
 
Dotnet development
Dotnet developmentDotnet development
Dotnet development
 
Azure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребностиAzure DevOps Адаптация под собственные потребности
Azure DevOps Адаптация под собственные потребности
 
Azure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестированиеAzure DevOps сборка, развертывание и тестирование
Azure DevOps сборка, развертывание и тестирование
 
Azure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контрольAzure DevOps Управление проектом и версионный контроль
Azure DevOps Управление проектом и версионный контроль
 
Интеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей СоловьевИнтеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей Соловьев
 
7 создание веб сервисов
7 создание веб сервисов7 создание веб сервисов
7 создание веб сервисов
 
Сокращение времени регрессионного тестирования
Сокращение времени регрессионного тестированияСокращение времени регрессионного тестирования
Сокращение времени регрессионного тестирования
 
Реализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCFРеализация REST и SOAP сервисов с помощью WCF
Реализация REST и SOAP сервисов с помощью WCF
 
Benchmark сканеров SQL injection
Benchmark сканеров SQL injectionBenchmark сканеров SQL injection
Benchmark сканеров SQL injection
 
автоматизация тестирования веб приложений павел липский
автоматизация тестирования веб приложений   павел липскийавтоматизация тестирования веб приложений   павел липский
автоматизация тестирования веб приложений павел липский
 
!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture
 
Azure - введение
Azure - введениеAzure - введение
Azure - введение
 
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей БуровСистема мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров
 
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tipsКостянтин Чаус — Monitoring of huge Drupal site. Tools and tips
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips
 

Viewers also liked

Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...
Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...
Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...
SQALab
 
Soap ui
Soap uiSoap ui
Ppt of soap ui
Ppt of soap uiPpt of soap ui
Ppt of soap ui
pkslide28
 
Learn SoapUI
Learn SoapUILearn SoapUI
Learn SoapUI
David Ionut
 
Testing web services
Testing web servicesTesting web services
Testing web services
Taras Lytvyn
 
Web Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI ToolWeb Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI Tool
Sperasoft
 

Viewers also liked (6)

Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...
Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...
Автоматизация настолько хороша, насколько хорош человек использующий ее (блиц...
 
Soap ui
Soap uiSoap ui
Soap ui
 
Ppt of soap ui
Ppt of soap uiPpt of soap ui
Ppt of soap ui
 
Learn SoapUI
Learn SoapUILearn SoapUI
Learn SoapUI
 
Testing web services
Testing web servicesTesting web services
Testing web services
 
Web Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI ToolWeb Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI Tool
 

Similar to В поисках магической кнопки, или как воспитать SoapUI

QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...
QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...
QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...
QAFest
 
Тестирование Enterprise Service Bus: Что? Где? Как?
Тестирование Enterprise Service Bus: Что? Где? Как?Тестирование Enterprise Service Bus: Что? Где? Как?
Тестирование Enterprise Service Bus: Что? Где? Как?
SQALab
 
Мировые информационные ресурсы. Лекция 5
Мировые информационные ресурсы. Лекция 5Мировые информационные ресурсы. Лекция 5
Мировые информационные ресурсы. Лекция 5
Dmitriy Krukov
 
Мировые информационные ресурсы. Лекция 2
Мировые информационные ресурсы. Лекция 2Мировые информационные ресурсы. Лекция 2
Мировые информационные ресурсы. Лекция 2
Dmitriy Krukov
 
Интеграция информационных систем с использованием OpenSource ESB
Интеграция информационных систем с использованием OpenSource ESBИнтеграция информационных систем с использованием OpenSource ESB
Интеграция информационных систем с использованием OpenSource ESB
КРОК
 
"Пряники" - система мотивации и Microsoft Azure
"Пряники" - система мотивации и Microsoft  Azure"Пряники" - система мотивации и Microsoft  Azure
"Пряники" - система мотивации и Microsoft Azure
Alexey Lyubko
 
C# Web. Занятие 03.
C# Web. Занятие 03.C# Web. Занятие 03.
C# Web. Занятие 03.
Igor Shkulipa
 
Enterpise&Webservices
Enterpise&WebservicesEnterpise&Webservices
Enterpise&Webservices
scassau
 
Технические особенности Docsvision 5
Технические особенности Docsvision 5Технические особенности Docsvision 5
Технические особенности Docsvision 5Docsvision
 
Oracle Service Bus
Oracle Service BusOracle Service Bus
Oracle Service Bus
Shamim bhuiyan
 
Проект "Нихол"
Проект "Нихол"Проект "Нихол"
Проект "Нихол"E-Journal ICT4D
 
Павел Кудинов: Высоконагруженные приложения как совокупность веб-сервисов
Павел Кудинов: Высоконагруженные приложения как совокупность веб-сервисовПавел Кудинов: Высоконагруженные приложения как совокупность веб-сервисов
Павел Кудинов: Высоконагруженные приложения как совокупность веб-сервисовguestf673
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
IT-Доминанта
 
2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий
2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий
2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий
JSC “Arcadia Inc”
 
LeClick presentation for Forbes October2012
LeClick presentation for Forbes October2012LeClick presentation for Forbes October2012
LeClick presentation for Forbes October2012Lyustina Anastasia
 
Видео + Конференция. Возможности решений TrueConf. Стас Солдатов
Видео + Конференция. Возможности решений TrueConf. Стас СолдатовВидео + Конференция. Возможности решений TrueConf. Стас Солдатов
Видео + Конференция. Возможности решений TrueConf. Стас Солдатов
TrueConf
 
Автоматизированный подход к локализации корпоративных приложений
Автоматизированный подход к локализации корпоративных приложенийАвтоматизированный подход к локализации корпоративных приложений
Автоматизированный подход к локализации корпоративных приложений
Softengi
 
Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)
Natalia Efimtseva
 
Андрей Завадский "Бессерверная архитектура"
 Андрей Завадский "Бессерверная архитектура" Андрей Завадский "Бессерверная архитектура"
Андрей Завадский "Бессерверная архитектура"
Fwdays
 

Similar to В поисках магической кнопки, или как воспитать SoapUI (20)

QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...
QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...
QA Fest 2014. Александра Волкова. Тестирование Enterprise Service Bus что где...
 
Тестирование Enterprise Service Bus: Что? Где? Как?
Тестирование Enterprise Service Bus: Что? Где? Как?Тестирование Enterprise Service Bus: Что? Где? Как?
Тестирование Enterprise Service Bus: Что? Где? Как?
 
Мировые информационные ресурсы. Лекция 5
Мировые информационные ресурсы. Лекция 5Мировые информационные ресурсы. Лекция 5
Мировые информационные ресурсы. Лекция 5
 
Мировые информационные ресурсы. Лекция 2
Мировые информационные ресурсы. Лекция 2Мировые информационные ресурсы. Лекция 2
Мировые информационные ресурсы. Лекция 2
 
Интеграция информационных систем с использованием OpenSource ESB
Интеграция информационных систем с использованием OpenSource ESBИнтеграция информационных систем с использованием OpenSource ESB
Интеграция информационных систем с использованием OpenSource ESB
 
"Пряники" - система мотивации и Microsoft Azure
"Пряники" - система мотивации и Microsoft  Azure"Пряники" - система мотивации и Microsoft  Azure
"Пряники" - система мотивации и Microsoft Azure
 
C# Web. Занятие 03.
C# Web. Занятие 03.C# Web. Занятие 03.
C# Web. Занятие 03.
 
Enterpise&Webservices
Enterpise&WebservicesEnterpise&Webservices
Enterpise&Webservices
 
Технические особенности Docsvision 5
Технические особенности Docsvision 5Технические особенности Docsvision 5
Технические особенности Docsvision 5
 
Oracle Service Bus
Oracle Service BusOracle Service Bus
Oracle Service Bus
 
Проект "Нихол"
Проект "Нихол"Проект "Нихол"
Проект "Нихол"
 
Павел Кудинов: Высоконагруженные приложения как совокупность веб-сервисов
Павел Кудинов: Высоконагруженные приложения как совокупность веб-сервисовПавел Кудинов: Высоконагруженные приложения как совокупность веб-сервисов
Павел Кудинов: Высоконагруженные приложения как совокупность веб-сервисов
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
 
Uws
UwsUws
Uws
 
2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий
2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий
2015-12-12 | AzovDevMeetup 2015 | Enterprise приложения на PHP | Павел Крынецкий
 
LeClick presentation for Forbes October2012
LeClick presentation for Forbes October2012LeClick presentation for Forbes October2012
LeClick presentation for Forbes October2012
 
Видео + Конференция. Возможности решений TrueConf. Стас Солдатов
Видео + Конференция. Возможности решений TrueConf. Стас СолдатовВидео + Конференция. Возможности решений TrueConf. Стас Солдатов
Видео + Конференция. Возможности решений TrueConf. Стас Солдатов
 
Автоматизированный подход к локализации корпоративных приложений
Автоматизированный подход к локализации корпоративных приложенийАвтоматизированный подход к локализации корпоративных приложений
Автоматизированный подход к локализации корпоративных приложений
 
Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)Облака для Windows 8 (Windows 8 Summit)
Облака для Windows 8 (Windows 8 Summit)
 
Андрей Завадский "Бессерверная архитектура"
 Андрей Завадский "Бессерверная архитектура" Андрей Завадский "Бессерверная архитектура"
Андрей Завадский "Бессерверная архитектура"
 

More from SQALab

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
SQALab
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
SQALab
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
SQALab
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
SQALab
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
SQALab
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
SQALab
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
SQALab
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
SQALab
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
SQALab
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
SQALab
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
SQALab
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
SQALab
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
SQALab
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
SQALab
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
SQALab
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
SQALab
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
SQALab
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
SQALab
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
SQALab
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
SQALab
 

More from SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
 

В поисках магической кнопки, или как воспитать SoapUI

Editor's Notes

  1. В поисках магической кнопки или как воспитать SOAP UI, Михаил ДырдаЖил да был проект – чудище многосервисное. Многие тестировщики пытались одолеть его тестом умелым да скриптом надежным. Да только на месте каждого протестированного сервиса вырастало два новых, еще асинхроннее предыдущего. Пригорюнились богатыри-тестеры, поняли, что не одолеть им зверя коварного копипастом булатным. И решили открыть они рукописи древние – мануалы-священные. И познали они тайну заветную – тайну созданиякнопки магической… Это только присказка, а доклад будет о том, какими средствами располагает SOAP UI для расширения функциональности, как автоматизировать создание автотестов и как знания об этом могут облегчить жизнь Вам и Вашим коллегам.Доклад будет интересен всем инженерам тестирования, а особенно автоматизаторам.
  2. package soapui.demo.action;import com.eviware.soapui.config.TestStepConfig;import com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase;import com.eviware.soapui.impl.wsdl.teststeps.WsdlGroovyScriptTestStep;import com.eviware.soapui.impl.wsdl.teststeps.registry.GroovyScriptStepFactory;import com.eviware.soapui.support.action.support.AbstractSoapUIAction;public class GenerateIdAction extends AbstractSoapUIAction<WsdlTestCase> { public GenerateIdAction() { super("GenerateIdAction","Action that generates unique ID"); } @Override public void perform(WsdlTestCasetestCase, Object arg1) { //add property on TestCase level if(testCase.getProperty("messageId")==null){testCase.addProperty("messageId"); } //add groovy test step with codeGroovyScriptStepFactoryscriptFactory = new GroovyScriptStepFactory();TestStepConfigconfig = scriptFactory.createNewTestStep(testCase, "Generate Id");WsdlGroovyScriptTestSteptestStep = (WsdlGroovyScriptTestStep)testCase.addTestStep(config);testStep.setScript("testRunner.testCase.setPropertyValue( 'messageId', UUID. randomUUID().toString())"); }}
  3. Disable???
  4. Test step:package soapui.demo.factory;import java.util.UUID;import com.eviware.soapui.config.TestStepConfig;import com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase;import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestStepResult;import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestStepWithProperties;import com.eviware.soapui.model.testsuite.TestCaseRunContext;import com.eviware.soapui.model.testsuite.TestCaseRunner;import com.eviware.soapui.model.testsuite.TestStepResult;import com.eviware.soapui.model.testsuite.TestStepResult.TestStepStatus;import com.eviware.soapui.support.UISupport;public class GenIdTestStep extends WsdlTestStepWithProperties { protected GenIdTestStep(WsdlTestCasetestCase, TestStepConfigconfig,booleanhasEditor, booleanforLoadTest) { super(testCase, config, hasEditor, forLoadTest); //set icon for test stepsetIcon(UISupport.createImageIcon("key.png")); } @Override public TestStepResult run(TestCaseRunner arg0, TestCaseRunContext arg1) { //add test case property and set random valuegetTestCase().setPropertyValue("messageId", UUID.randomUUID().toString()); //set test-step result = OK WsdlTestStepResult result = new WsdlTestStepResult(this);result.setStatus(TestStepStatus.OK); return result; }}Factory:package soapui.demo.factory;import com.eviware.soapui.config.TestStepConfig;import com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase;import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestStep;import com.eviware.soapui.impl.wsdl.teststeps.registry.WsdlTestStepFactory;public class GenIdTestStepFactory extends WsdlTestStepFactory { public GenIdTestStepFactory() { super("GEN_ID", "Generate Id", "Test step generate unique id", "key.png"); } @Override public TestStepConfigcreateNewTestStep(WsdlTestCase arg0, String name) { //setup configTestStepConfigconfig = TestStepConfig.Factory.newInstance();config.setType("GEN_ID");config.setName( name ); return config; } @Override public WsdlTestStepbuildTestStep(WsdlTestCasetestCase, TestStepConfigconfig,booleanforLoadTest) { //create instance of test step return new GenIdTestStep(testCase, config, true, forLoadTest); } @Override public booleancanCreate() { return true; }}