Какво е SoapUI?
⚡ Умно обобщение
SoapUI е водещият инструмент за тестване на API с отворен код, който помага на екипите за контрол на качеството да валидират SOAP и REST уеб услуги чрез функционални, регресионни, защитни и натоварващи тестове в съвременни корпоративни среди и непрекъснати интеграционни канали.
Какво е SoapUI?
SoapUI е водещ инструмент за тестване на API с отворен код, който позволява на тестерите да изпълняват автоматизирани функционални, регресионни, тестове за съответствие и тестове за натоварване на различни уеб API. Създаден специално за сервизно-ориентирани архитектури и REST уеб услуги, SoapUI предоставя както на технически, така и на нетехнически потребители опростен интерфейс за проектиране, изпълнение и отчитане на API тестове.
- SoapUI е водещият инструмент за тестване на API с отворен код, работещ на различни платформи.
- SoapUI позволява на тестерите да изпълняват автоматизирани функционални, регресионни, тестове за съответствие и тестове за натоварване на различни уеб API.
- SoapUI поддържа всички стандартни протоколи и технологии за тестване на всякакви API.
- - SoapUI Интерфейсът е опростен и позволява безпроблемно използване както на технически, така и на нетехнически потребители.
- Съвременни издания, като например SoapUI 5.x и рекламата ReadyAPI пакетът разширява тестването в облачни, контейнерни и CI/CD среди.
Защо ползване SoapUI?
SoapUI не е просто инструмент за функционално API тестване, но също така позволява на тестерите да извършват нефункционални тестове, като например тестове за производителност и сигурност. Платформата обхваща SOAP, REST и WSDL услуги чрез едно работно пространство, поради което много QA екипи в предприятията я приемат като свое решение за API тестване по подразбиране. По-долу са изброени пет важни характеристики SoapUI които обясняват защо отборите го избират.
Топ функции на SoapUI
SoapUI обединява няколко възможности за тестване в един интерфейс, така че един проект може да обхване функционални проверки, сканиране за сигурност и изпълнения на зареждане. Следните характеристики подчертават какво прави SoapUI силно пригодено за съвременни програми за тестване на API.
1) Функционално тестване
- Мощен инструмент, който позволява на тестерите да пишат функционални API тестове в SoapUI.
- Поддържа плъзгане и пускане, което ускорява разработването на скриптове.
- Поддържа отстраняване на грешки в тестовете и позволява на тестерите да разработват тестове, базирани на данни.
- Поддържа множество среди, което улеснява превключването между QA, Dev и Prod.
- Позволява разширено писане на скриптове, така че тестерите да могат да разработват персонализирани Groovy код за всеки сценарий.
2) Тестване на сигурността
- Има възможност за извършване на пълен набор от сканирания за уязвимости.
- Предотвратява SQL Инжектиране за защитени бази данни.
- Сканира за препълване на стека, причинено от документи с голям размер.
- Сканира за междусайтово скриптиране, което обикновено се случва, когато параметрите на услугата са изложени в съобщения.
- Извършва Fuzzing сканиране и гранично сканиране, за да избегне нестабилно поведение на услугите.
3) Тестване на натоварването
- Разпределете тестовете за натоварване между произволен брой LoadUI агенти.
- Симулирайте лесно тестове с голям обем и в реални условия.
- Позволява разширено персонализирано отчитане за улавяне на параметри на производителността.
- Позволява цялостно наблюдение на производителността на системата.
4) Поддържани протоколи и технологии
SoapUI има най-пълната поддръжка на протоколи сред инструментите за тестване на API с отворен код, обхващаща REST, SOAP, WSDL, JMS, AMF, JDBC и HTTP.
5) Интеграция с други инструменти за автоматизация
SoapUI интегрира се много добре с популярни конструкции и CI инструменти, което е от съществено значение за вграждането на API тестове в съвременните канали за доставка.
Maven
Apache Maven е инструмент за управление на софтуерни проекти, който може да управлява изграждането, отчитането и документацията на проекта от централно хранилище. Maven може също да изпълнява SoapUI тестове в рамките на Maven компилация, използвайки прости команди.
Jenkins (Хъдсън)
Jenkins, първоначално разклонен от Хъдсън, е Java-базиран инструмент за непрекъсната интеграция, който се интегрира с CVS, Subversion, Git, Perforce, ClearCase и RTC. SoapUI също се интегрира с Jenkins, което помага на екипите бързо да откриват грешки за всеки коммит от разработчиците.
JUnit
JUnit е модулно тестване вградена рамка Java, който може да контролира потока от тестове от SoapUI , както добре.
Apache Ant
Apache Мравката е Java библиотека и инструмент за команден ред, който помага при изграждането на софтуер. Използването SoapUIЧрез командния ред екипите могат да изпълняват тестове в рамките на автоматизирано изграждане на Ant.
SoapUI vs Selenium
Полезно е да се сравни SoapUI с Selenium така че екипите да разбират кой инструмент е подходящ за кой обхват. SoapUI фокусира се върху API и протоколния слой, докато Selenium фокусира се върху поведението на потребителския интерфейс в браузъра.
| SoapUI | Selenium |
|---|---|
| SoapUI НЕ се използва за тестване на потребителски интерфейс. Използва се само за тестване на Web API или уеб услуги. | Selenium използва се за тестване на потребителския интерфейс. |
| Способен е да тества данните, изпращани и получавани между уеб браузъра и уеб сървъра. Може да тества протоколи и технологии като REST и SOAP. | Selenium не може да тества протоколи, но може да тества поведението на потребителския интерфейс. |
| Способен да изпълнява функционални, натоварващи и тестване на сигурността от горепосочените технологии. | Selenium може да изпълнява само функционално тестване. Тестване на производителността може да се направи до известна степен, защото времето за изпълнение може да бъде tracked, но многопотребителската и многонаемателната система не могат да бъдат тествани. Selenium със сигурност не може да се използва за тестване на сигурността. |
| Зависи от ПРОТОКОЛА и НЕ зависи от браузъра. | Selenium зависи от възможностите на браузъра. |
SoapUI vs SoapUI професионалист (ReadyAPI)
Има два вкуса SoapUIотворен код SoapUI и търговското издание, първоначално брандирано SoapUI Pro и сега опакован като ReadyAPIПо-долу е дадено сравнение на характеристиките, което обяснява кога да изберете всяка опция.
| Характеристики: | SoapUI (Версия с отворен код) | SoapUI Професионален / ReadyAPI |
| Поддържани технологии | ||
| SOAP/WSDL | ||
| ПОЧИВКА | ||
| JMS | ||
| AMF | ||
| JDBC | ||
| HTTP | ||
| Автоматизация | ||
| Функционални тестове | ||
| Тестове за натоварване | ||
| Фалшиви услуги | ||
| Code Поколение | ||
| Командна линия | ||
| Maven | ||
| Интеграция на CI и изграждане | ||
| Общи характеристики | ||
| Самостоятелно приложение | ||
| Groovy Code Шаблони | ||
| Поддръжка на множество среди | ||
| Плаващи лицензи | ||
| Функции за функционално тестване | ||
| WSDL покритие | ||
| Покритие на заявка/отговор | ||
| Твърдение на съобщението | ||
| Рефакторинг на тестове | ||
| Изпълнение на множество тестове | ||
| Тестове, управлявани от източник на данни | ||
| Библиотеки за скриптове | ||
| Отчитане на единица | ||
| Ръчна тестова стъпка | ||
| Функции за тестване на сигурността | ||
| Гранично сканиране | ||
| Невалиден тип | ||
| SQL Injection | ||
| Инжектиране на XPath | ||
| XML бомба | ||
| Фузинг сканиране | ||
| Скриптове между сайтове | ||
| Конфигурируеми сканирания | ||
| Докладване | ||
| Функции за тестване на натоварване | ||
| Бързи тестове за натоварване от функционални тестове | ||
| Конфигурируеми стратегии за натоварване | ||
| Твърдения за тест за натоварване | ||
| Статистика в реално време | ||
| Мониторинг на изпълнението | ||
| Експортиране на статистика | ||
| Използване на Setup/TearDown Groovy Scripting | ||
| Интеграция с LoadUI | ||
| Докладване | ||
| Доклади | ||
| JUnit Доклади | ||
| Експортиране на отчетни данни | ||
| WSDL HTML отчет | ||
| WSDL покритие | ||
| Покритие на TestSuite | ||
| Покритие на TestCase | ||
| Покритие на твърденията | ||
| Покритие за запис на съобщения | ||
Кога да използвате SoapUI Професионален / ReadyAPI Версия?
Професионалното издание (сега ReadyAPI) е правилният избор, когато екипите се нуждаят от разширено отчитане, управление на множество среди и корпоративна поддръжка. По-долу са описани ключовите сценарии, при които Pro версията предоставя допълнителна стойност в сравнение с отворения код. SoapUI 5.x издание.
- Управляван от данни: Pro версията помага на тестерите да работят с външни източници на данни, като текстови файлове, XML, Groovy, Excel и бази данни. Това позволява тестовете да се мащабират в широк спектър от входни данни, задвижвани от тези източници.
- Тестово покритие: Pro версията позволява на тестерите да получат статистически отчет, който показва добре тестваните функционалности, както и областите, които не са обстойно тествани. Подробните отчети дори посочват точно какво не е тествано и какво не е било твърдяно.
- Тест за отстраняване на грешки: Тестерите могат да проведат теста до точка на прекъсване и да видят текущата стойност на SoapUI свойства. Интерфейсът за отстраняване на грешки в тестовете опростява проверката на тестовия поток, променливите, свойствата, заявките и контекста, което прави създаването и подобряването на тестовете по-рационализирани.
- Поддръжка на множество среди: Работата с множество среди, като DEV, QA и Pre-PROD, може да бъде трудна задача с версията с отворен код, защото тестерите трябва да променят крайните точки, за да изпълняват в различни среди. Pro версията помага на екипите да превключват безпроблемно между среди.
- Отчитане: Pro версията е заредена с много опции за персонализиране на отчети, които генерират подробен изход на ниво проект, TestSuite, TestCase или LoadTest. Тя също така създава отчети в различни формати, като PDF, HTML, Word или Excel.
- Тестване на сигурността: И двете SoapUI версиите имат възможности за тестване на уязвимости в сигурността, като XML бомби, SQL инжекции, размиване и междусайтово скриптиране. Само SoapUI Pro може да извършва сканиране на уязвимости, използвайки теста за сигурност Generator с едно кликване на мишката.
- SQL Builder: За нетехнически тестери, писането на сложни SQL заявки може да бъде тромаво. SoapUI Pro SQL Builder им помага да създават SQL заявки, използвайки графичен интерфейс. Тази функция ускорява внедряването на тестване, управлявано от данни.
- Поддръжка: Като част от лицензионното споразумение, SoapUI Pro има ексклузивна поддръжка освен онлайн форумната поддръжка.
Версията с отворен код на SoapUI ще бъде използван за целите на обучението в този урок.
SoapUI Инструмент – Хронологии на версиите
SoapUI пусна основни издания от 2005 г. насам, като всяко издание добавя нова поддръжка на протоколи, функции за сигурност или възможности за отчитане. Modern SoapUI Версиите 5.x се фокусират върху стабилността на плъгините и REST покритието, докато комерсиалната продуктова линия е преименувана на ReadyAPI.
| Основна версия | Бележки към изданието | Дата на излизане |
|---|---|---|
| V1.0 | Първоначална версия | 16-10-2005 |
| v1.5 | Издаване за тестване на натоварване | 06-04-2006 |
| v1.6 | Издаване на инструменти | 12-11-2006 |
| V1.7 | Професионалното издание | 10-04-2007 |
| v2.0 | Издаване на покритие | 12-12-2007 |
| v2.5 | REST Освобождаване | 18-11-2008 |
| v3.0 | Отчитане на изданието | 09-07-2009 |
| v3.5 | Издаване на протокол | 01-03-2010 |
| v3.6 | Издаване на LoadUI | 14-09-2010 |
| v4.0 | Издание за сигурност | 14-06-2011 |
| v4.5 | Освобождаване с големи уши | 28-03-2012 |
| v5.1 | Включеното издание | 05-09-2014 |
| v5.2 | Издаване на основни нови функции | 02-07-2015 |
| v5.3 | Пакетно издание на приставката | 05-12-2016 |







