Розуміння протоколу SOAP
Перш ніж ми створимо тестовий випадок SOAPUI, давайте зрозуміємо основи протоколу SOAP. Це допоможе вам використовувати інтерфейс SOAP для ефективного тестування запитів SOAP та відповіді.
SOAP позначає S реалі O ▪ Таблиця A ступа P rotocol. Нижче наведено властивості протоколу SOAP.
- Це протокол на основі XML для спілкування між двома різними системами.
- Це платформа та мова не залежать. Отже, система, розроблена за допомогою Java, може взаємодіяти із системою, розробленою в .NET.
- Запити / відповіді SOAP транспортуються через HTTP.
У цьому підручнику з тестування ви дізнаєтесь:
- Дізнайтеся ФОРМАТ повідомлення SOAP
- Створіть проект
- Створення тестового набору
- Створення тестового кейсу
- Вставте крок тесту
- Розуміння панелей реагування на мило та журналів
- Надсилання запиту вручну та відповідь на читання
Дізнайтеся ФОРМАТ повідомлення SOAP
Повідомлення SOAP - це звичайний XML-документ, що містить такі елементи. Повідомлення може бути або повідомленням-запитом, або повідомленням-відповіддю.
Після налаштування робочої області, яку ми виконали в останньому підручнику, ми повинні створити проекти, тестові набори, тестові кейси для тестування даної веб-служби. Давайте зрозуміємо кроки, що стосуються того самого.
Створіть проект
Крок 1: Тепер, залежно від проекту, нам потрібно імпортувати протокол SOAP / REST. Ми створимо новий проект SOAP.
Крок 2: Ми використаємо такий запит SOAP http://www.dneonline.com/calculator.asmx?wsdl
- Введіть назву проекту
- Введіть шлях запиту WSDL. У цьому випадку http://www.dneonline.com/calculator.asmx?wsdl
- Клацніть OK
Примітка:
- Створити зразок запиту для всіх операцій? Він створює зразок запиту для всіх доступних операцій у даному WSDL. Як тільки ви вводите адресу WSDL, ця опція перевіряється автоматично. Ви можете зняти його.
- Створити набір тестів для імпортованого WSDL: Створює набір тестів у рамках проекту для імпортованого WSDL.
- Відносні шляхи : Це дозволяє користувачеві зберігати всі файли щодо файлу проекту.
Крок 3: Після створення проекту SOAP із вищезазначеним WSDL ми зможемо побачити, що в проект буде імпортовано дві операції.
Крок 4)
Розгорніть перший запит і клацніть правою кнопкою миші на "Додати". Потім натисніть «Новий запит».
Потім натисніть кнопку "OK". Він відобразить запит SOAP у форматі XML
- Введіть "intA" та "intB"
- Клацніть на кнопку подати
- XML відповіді відображатиметься на правій бічній панелі.
Ви можете запитати, навіщо створювати тестові кейси? Коли ви можете безпосередньо протестувати веб-сервіс тут
...Ну, ви можете надіслати запит на одну операцію. А як щодо інших? Скільки комбінацій входів для доповнень ви можете зробити, використовуючи цю операцію ? Ви повинні редагувати запит для кожної комбінації.
Наприклад: Якщо ви хочете додати з 4 і 4 замість 5 і 5
... Вам потрібно знову відредагувати операцію. Отже, потрібно створити набір тестів / кейсів, щоб перевірити всі можливі сценарії без необхідності безпосереднього редагування самої операції.Створення тестового набору
Крок 1: В рамках проекту тестувальники можуть створити набір тестів, натиснувши правою кнопкою миші на кореневій частині проекту.
Крок 2: Нам потрібно ввести назву набору тестів і натиснути OK.
Крок 3: Створений набір тестів відображається на панелі навігатора, як показано нижче.
Крок 4: На правій панелі відкриється вікно Test Suite. Як ми щойно створили, тестів немає. Тому всі опції відключені.
Створення тестового кейсу
Крок 1: В тестовому наборі ми можемо створити кілька тестів, виконавши правою кнопкою миші на тестовому наборі та вибравши пункт "Новий тест".
Крок 2: Вкажіть назву тестового кейсу та натисніть «ОК».
Крок 3: Створений тест має нульові кроки, як показано нижче.
Примітка : Ми бачимо, що тест-кейс додається з нульовими кроками тестування для всіх видів доступних тестів. Після додавання тестових кроків цифри в дужці автоматично змінюватимуться.
Крок функціонального тесту повинен переходити до "Тестові кроки", тоді як крок тесту продуктивності повинен переходити до "Тестування навантаження", а крок тестування безпеки - "Тести безпеки".
Крок 4: Ми можемо вставити різноманітні кроки тесту, виконавши правою кнопкою миші на тестових кроках і вибравши відповідний крок тесту, як показано нижче. Отже, якщо ви хотіли протестувати веб-службу REST, ви вибрали б запит тесту REST.
Вставте крок тесту
Тепер додамо крок тесту для перевірки імпортованого запиту SOAP.
Крок 1: Додайте новий крок "Запит SOAP", як показано нижче.
Крок 2: Введіть назву кроку та натисніть OK.
Крок 3: Після натискання кнопки "OK" з'являється діалогове вікно для вибору операції, яку потрібно викликати. Всі операції перераховані, і користувач може вибрати операцію, яку він хотів би викликати.
- Є багато операцій, які будуть перераховані. Операції однакові, за винятком використаної версії SOAP.
CalculatorSoap - використовує SOAP версії 1.1, тоді як,
CalculatorSoap12 - використовує SOAP версії 1.2
- Версія для нас у цьому контексті не має значення. Отже, ви можете вибрати той, який вибрали ви.
- Вибравши операцію, натисніть кнопку "Ok"
Крок 4: У той час як при додаванні тестового випадку, ми можемо додати стандартні затвердження. Твердження також називаються контрольно-пропускними пунктами / точками перевірки, які ми детально розглянемо у наступному навчальному посібнику.
Ми можемо додати наступні контрольні точки / твердження під час створення тестового кейсу. Давайте створимо тестовий приклад з опцією, яка означає створення кроку тесту БЕЗ будь-якої з наведених нижче точок перевірки
- Під час виконання тесту перевіряє, чи відповідає повідомлення SOAP.
- Перевіряє, чи правильна схема відповіді.
- Перевіряє, чи містить відповідь SOAP FAULT.
Крок 5: Після створення тестового випадку, XML-запит відображається нижче. Структура XML пояснюється на наведеному нижче знімку.
Крок 6: Кількість тестових кроків тепер збільшується до одиниці, оскільки ми щойно додали один крок тесту. Аналогічним чином, після додавання етапу тестування навантаження та безпеки відповідне число буде автоматично збільшено залежно від кількості доданих кроків.
Надіслати запит вручну та відповідь на читання
Крок 1: Ми хотіли б додати два цілих числа.
- intA - 5
- intB - 5
Далі,
- Нам потрібно ввести ці дані замість знака питання, який буде надіслано як запит XML.
- Після введення цих значень у відповідні теги XML натисніть кнопку "надіслати запит", щоб перевірити відповідь.
Крок 2: Після подання запиту веб-сервер обробляє запит на веб-послугу і надсилає відповідь, як показано нижче.
Прочитавши відповідь, ми можемо зробити висновок 5 плюс 5 - 10.
Розуміння панелей реагування на мило та журналів
Як пояснювалося на початку цього посібника, повідомлення SOAP транспортуються через протокол HTTP. Давайте поглянемо на RAW-повідомлення. Це допоможе нам дізнатись, як запит SOAP та відповідь транспортуються за допомогою HTTP.
Крок 1: Клацніть вкладку «RAW» в обох вікнах запиту SOAP-UI.
- Запит розміщується на веб-сервері. Отже, використовується метод POST Http.
- Запит SOAP транспортується в тілі повідомлення Http.
Крок 2. Тепер клацніть вкладку «RAW» у вікні відповіді SOAP-UI, щоб зрозуміти, як відповідь надсилається через HTTP.
- Після обробки запиту відображається код відповіді Http (200), що означає успіх. Веб-сервер обробив його успішно.
- Відповідь SOAP надсилається назад клієнту як частина тіла повідомлення HTTP.
Швидкий знімок кодів відповіді Http для легкого розуміння та налагодження. Наведена нижче таблиця допоможе вам вирішити проблеми на основі коду HTTP, отриманого від веб-сервера.
Код Http | Опис |
1xx: | Інформаційна - це означає отриманий запит та триває процес. |
2xx: | Успіх - дію було успішно отримано, зрозуміло та прийнято. |
3xx: | Перенаправлення - Це означає, що для заповнення запиту необхідно вжити подальших дій. |
4xx: | Помилка клієнта - Це означає, що запит містить неправильний синтаксис або не може бути виконаний |
5xx: | Помилка сервера - серверу не вдалося виконати очевидно дійсний запит |
Крок 3: Давайте зрозуміємо іншу інформацію, яка відображається у вікні тесту.
- Представляти НІ заголовок у запиті, який надсилається
- Представляє БЕЗ вкладень у запиті, який надсилається на веб-сервер.
- Представляє 10 відомостей заголовка, і вони відображаються після натискання на них.
- Уявляє, що до повідомлення відповіді немає вкладень.
ПАНЕЛЬ ВХОДІВ:
На панелі журналів є повна інформація щодо транзакції між клієнтом та сервером. Користувачі зможуть побачити вкладки панелі журналу, як показано нижче. Ми обговоримо найбільш часто використовувані області журналів при роботі з SOAP-UI.
Журнал SoapUI - Відображає інформацію про відповідь веб-сервера. Ця сама інформація зберігається у файлі soapui.log встановленої папки SOAP-UI в каталозі 'bin'.
Http Log - Відображає всю передачу пакетів HTTP. Вся інформація в "RAW" відображається в журналі HTTP.
Журнал помилок - Журнал помилок відображає всі помилки, з якими ми стикалися протягом усього сеансу проекту. Така сама інформація доступна в "soapui-errors.log", присутньому в каталозі "bin" місця встановленого інтерфейсу SOAP.
Журнал пам'яті - Ця вкладка контролює споживання пам'яті та відображає його у вигляді діаграми, як показано нижче. Це дійсно корисно, коли виконується операція з інтенсивним запам'ятовуванням.
Тепер, коли ми створили набір тестів, кейс, крок тесту та отримали відповідь, наступним кроком є перевірка відповіді. Ми розглянемо типи тверджень у наступному уроці.