soa testing tutorial
Підручник з тестування SOA:
У цій статті ми будемо обговорювати методи тестування архітектури SOA.
Поточне програмне забезпечення настільки багатофункціональне та схильне щоразу обробляти зміни сподівань користувачів, автономна модель не корисна.
Існує те місце, де SOA підходить саме як рішення.
Ось чому багато компаній адаптуються або намагаються адаптувати підхід SOA через його переваги, такі як; Зниження витрат, спритність бізнесу, легке обслуговування тощо. З наближенням ринку, наповненого архітектурою SOA, сучасним тестерам стає необхідним отримати чітке уявлення про тестування SOA.
компанії, які платять вам за тестування їхньої продукції
У цій статті ми розглянемо основи SOA на прикладах.
Це дало б читачам базову ідею щодо SOA. За цим слід застосувати підхід до веб-служб. Нарешті, ми потрапимо в процес тестування, за яким можна дотримуватися моделі архітектури SOA.
Що ви дізнаєтесь:
- Що таке SOA?
- Приклади SOA
- Веб-сервіси
- Процес тестування SOA
- Проблеми при тестуванні SOA
- Засоби тестування SOA
- Рекомендована література
Що таке SOA?
SOA або Sevice-Oriented-Architecture - це гнучкий / гнучкий / ефективний метод інтеграції різних додатків / послуг для досягнення певних потреб бізнесу.
- На відміну від інших складних систем, SOA складається з менших компонентів / послуг / мікропослуг, пов'язаних між собою для задоволення потреб бізнесу.
- Послуги - це одиниці, які роблять систему цілою, і коли виникає потреба в змінах, а не в зміні всієї системи, конкретна послуга модифікується.
- Послуга - це компонент, який здатний виконати завдання.
- Ця архітектура продається більше, ніж застаріла система, оскільки Кінцевий користувач отримує лише необхідні послуги для задоволення своїх потреб. Йому не потрібно отримувати всю систему.
- Послуги / мікропослуги нещільно поєднані, багаторазові та без громадянства, що робить систему ще більш надійною.
- Ця модель є високоефективною з точки зору розгортання, розробки та обслуговування.
Приклади SOA
Потреба у бізнесі: Додаток, до якого Користувач може увійти та шукати ресторани на основі геолокації, завантажити деталі ресторану та меню з сервера після завершення пошуку і, нарешті, можна здійснити оплату за розміщення замовлення.
Цю ділову потребу можна досягти впровадженням SOA.
Для виконання різних завдань можуть бути послуги / мікропослуги:
- Під час входу в систему послугою, яка використовуватиметься, є «Служба автентифікації»
- Пошук ресторанів здійснювався б за допомогою служби 'Геолокатор'
- Меню завантаження повинно здійснюватися за допомогою «Служби завантажувача меню»
- Нарешті, оплата здійснюватиметься за допомогою «Платіжної служби»
Кожна з вищезазначених служб робить щось унікальне, щоб змусити систему працювати і забезпечувати те, що вона повинна робити. Тепер, якщо клієнту потрібно лише побачити ресторан та його меню, але йому не потрібен інтерфейс Payment Gateway, він придбає / розгорне лише перші три послуги.
Це спрощує роботу для розробки, розгортання, продажу, обслуговування, а також для клієнта / Кінцевого користувача.
Веб-сервіси
- Це API (Інтерфейси програмування програм), що полегшує взаємодію між різними програмами.
- Існує постачальник послуг, який розміщує цю послугу в Інтернеті. Як частина хостингу, провайдер розміщує WSDL.
- Коли Клієнт надсилає повідомлення про запит постачальнику послуг, зв'язок встановлюється з використанням URL / WSDL.
- У наведеному нижче прикладі сервер геолокації розміщує веб-службу, яка використовується запитувачем послуг.
Процес тестування SOA
Кожен продукт, модель, інфраструктура повинні проходити фазу тестування, щоб задовольнити кінцевого споживача з точки зору доброякісної продукції. Тестування SOA не обмежується лише тестуванням рівня / тестуванням протоколу веб-сервісу. Це загальне тестування архітектури та кожної хвилини її частини.
Підхід до тестування може бути подібним до підходу до звичайного процесу тестування. тобто
- Процес перегляду вимог
- Планування тестів
- Дизайн тесту
- Налаштування середовища
- Етап виконання
- Фаза звітування
Процес тестування SOA обертається навколо 3 шарів в архітектурі:
- Споживачі послуг
- Обробляти шари
- Сервісні рівні
Подаючи той же приклад вище, ми можемо мати наші шари наступним чином:
- Рівень споживача послуги допомагає у взаємодії споживачів. Це допомагає прочитати вхідні дані від кінцевого користувача та повернути відповідну відповідь на отриманий запит. Іншими словами, це в основному має інтерфейс інтерфейсу користувача.
- Це рівень, який фокусується на фронті реалізації. Цей шар у нашому прикладі матиме методи автентифікації, створення користувача тощо.
- Рівні обслуговування - це ділові функції з точки зору послуг. Усі служби, які насправді викликаються при виконанні певного завдання, знаходяться на цьому рівні.
Тестування в основному можна розділити на 4 різні етапи;
Рівень No1
1) Тестування рівня обслуговування:
- Кожна служба, яка бере участь у системі, тестується індивідуально на основі методу запиту та відповіді.
- Цей тест є обов'язковим і дуже важливим для продовження інших процесів тестування.
2) Функціональне тестування:
- Тест проводиться для служб, що відповідають їх комерційним потребам, щоб визначити, чи отримана відповідь є правильною.
- Потреби бізнесу спочатку перетворюються на тестові кейси та формуються заяви про запити.
- Потім оператори запиту обробляються, щоб перевірити, чи правильні отримані відповіді.
- У разі недійсних вхідних даних слід викинути правильний код помилки або викликати належне повідомлення про помилку.
- Формати відповіді, а також негативні сценарії повинні бути виконані.
3) Тестування безпеки:
- Що стосується веб-служби, тестування безпеки відіграє ключову роль у успіху процесу тестування.
- Шлюзи автентифікації, платіжні шлюзи тощо повинні шифруватися, коли дані аналізуються.
- Що стосується XML, то слід перевіряти такі вразливості, як CSRF, введення SQL.
4) Тестування продуктивності:
- Служби, що використовуються в архітектурі, розміщуються так, що багато інших додатків можуть ними скористатися. Тестування продуктивності гарантує надійність цих послуг.
- Тестування послуг слід проводити, щоб з’ясувати наступні набори результатів;
- Визначити стабільність послуг.
- Для перевірки масштабованості послуг.
- Сервісна поведінка в умовах пікового навантаження
- Щоб знайти час відгуку між службами
Рівень No2
1) Тестування процесу:
- Цей процес передбачає тестування різних бізнес-процесів.
- Це повинно включати сценарії інтеграції веб-служб та додатків, що охоплюють вимоги бізнесу
- Використання тренажерів повинно здійснюватися для формування зразкових вхідних даних, а перевірка повинна здійснюватися для відповідних виходів.
- Потік даних з різних шарів слід виконувати, щоб довести безперебійне функціонування системи, коли вона інтегрована.
Рівень No3
1) Наскрізне тестування:
інструменти злому паролів для Windows 7
- Цей етап призначений для перевірки вимог бізнесу як функціонально, так і нефункціонально.
- Інтерфейс користувача програми перевірено.
- Запрошений бізнес-процес перевіряється.
- На цьому етапі перевіряється наскрізний потік даних.
- Робота з усіма службами, коли служби інтегровані одна з одною, перевірена.
Рівень No4
1) Регресійне тестування:
- Стабільність системи в додаткових версіях збірки підтверджується цим тестуванням.
- Цього можна досягти за допомогою ручного тестування / автоматичного тестування.
Проблеми при тестуванні SOA
Хтось справедливо сказав: «Більша сітка; Більший - безлад! ”. SOA може стати справді складною дитиною, яка жадає уваги.
Іншими словами, з такою кількістю хвилинних частин, що становлять архітектуру SOA, стає справді важкою роботою засвідчити її в тестуванні.
- Важко моделювати середовища тестування для продовження процесу тестування.
- Продукти, що беруть участь у моделі, можуть мати однакову технологію / постачальника. Але вони також можуть бути різними. Більше проблем?
- Тестові комбінації відповідають кількості послуг / компонентів, що беруть участь.
- Складність в моделі
- Відтворення / тестування випуску - важка робота.
- На відміну від інших моделей, основна увага при тестуванні повинна бути спрямована на сферу діяльності, а не на послугу та її особливості.
Засоби тестування SOA
Існує безліч програм для тестування SOA. Засоби тестування SOA вибираються на основі їх точних результатів та кращої продуктивності.
- Мильний інтерфейс: Це безкоштовний інструмент, спрямований на тестування веб-сервісу. SoapUI може виконувати функціональне тестування, тестування продуктивності та тестування навантаження
- Apache Jmeter: Це також утиліта OPEN SOURCE, яка використовується для аналізу продуктивності виклику SOAP.
- JProfiler: Це використовується для зупинки або виявлення витоку пам'яті, пошуку вузьких місць у роботі тощо.
- Тест на обслуговування HP: Це інтегровано в HP QC. Це інструмент функціонального тестування, який також підтримує тестування інтерфейсу користувача та спільних служб
У цій статті ми зрозуміли особливість моделі. Це сильно відрізняється від застарілої моделі, і стаття дає хороші уявлення про неї. Ця стаття також проливає світло на процедуру SOA та способи продовження тестування.
Про автора: Це гостьовий допис Subhasis. Він працює керівником команди з більш ніж 8-річним корпоративним досвідом роботи в ІТ-компаніях Fortune 500.
Опублікуйте свої запитання / коментарі щодо тестування SOA нижче.
Всього найкращого!
Рекомендована література
- Найкращі засоби тестування програмного забезпечення 2021 р. (Інструменти автоматизації тестування якості)
- Завантажити тестувальник електронної книги
- Підручник з деструктивного контролю та неруйнівного контролю
- Функціональне тестування проти нефункціонального тестування
- Поглиблені підручники Eclipse для початківців
- 15 найкращих інструментів для тестування SOA
- Посібник із парного тестування чи тестування для всіх пар із інструментами та прикладами
- Підручник із інструменту тестування доступності WAVE