Хмарне тестування

Матеріал з Київський столичний університет імені Бориса Грінченки
Перейти до: навігація, пошук

Хмарне тестування

Хмарне тестування

- форма тестування програмного забезпечення, в якому веб-додатки використовують хмарні обчислювальні середовища («хмари»), щоб імітувати реальний трафік користувача

Огляд

Хмарне тестування використовує хмарну інфраструктуру для тестування програмного забезпечення. Організації, що переслідують тестування в цілому і навантаження, тестування продуктивності і моніторинг виробництва послуг, зокрема, викликають кілька проблем, таких як обмежений бюджет тестування, дотримання строків, високі витрати на випробування, велика кількість тестів, і мало або немає повторного використання тестів і географічну класифікацію користувачів які додають проблеми. Крім того забезпечення надання послуг високої якості і уникаючи простоїв вимагає перевірки у своїй обробці даних, поза дата-центром, або обидва випадки. Хмарне тестування, це вирішення всіх цих проблем. Ефективне необмежене зберігання, швидка наявність інфраструктури з масштабованістю, гнучкістю та доступністю розподіленого середовища тестування дозволяє скоротити час тестування великих додатків і привести до економічно ефективних рішень.

Потреба хмарного тестування

Традиційні підходи, щоб перевірити програмне забезпечення бере на себе високу вартість для імітації активності користувача у різних географічних розташуваннях. Тестування міжмережевих екранів і балансування навантаження включає в себе витрати на обладнання, програмне забезпечення і його зміст. У разі застосування, де темпи зростання числа користувачів є непередбачувані або є відмінності в середовищі розгортання в залежності від вимог клієнта, хмарне тестування є більш ефективним.

Види тестування

250px-Types_of_testing_in_cloud.png

Стрес

Стрес-тестування (Stress Testing) дозволяє перевірити наскільки додаток і система в цілому працездатні в умовах стресу і також оцінити здатність системи до регенерації, тобто до повернення до нормального стану після припинення впливу стресу. Стресом у даному контексті може бути підвищення інтенсивності виконання операцій до дуже високих значень або аварійна зміна конфігурації сервера. Також одним із завдань при стресовому тестуванні може бути оцінка деградації продуктивності, таким чином цілі стресового тестування можуть перетинатися з цілями тестування продуктивності.

Навантаження

Навантажувальне тестування — це просто форма тестування продуктивності. Воно зазвичай проводиться для того, щоб оцінити поведінку програми(додатка) із заданим очікуваним навантаженням. Цим навантаженням може бути, наприклад, кількість користувачів, які будуть одночасно працювати з програмою. Такий вид тестування дозволяє отримати час відгуку всіх найважливіших бізнес-транзакцій.


Продуктивність

Знаходження порогів, вузькостей та обмежень є частиною тестування продуктивності. Для цього, необхідно тестування продуктивності при певному навантаженні. При використанні хмарного тестування, легко створити таке середовище і змінювати природу трафіку при потребі. Це суттєво знижує вартість і час, імітуючи тисячі географічно цільових користувачів.


Функціональність

Функціональне тестування обох інтернет і не інтернет-додатків може бути виконана з використанням хмарного тестування. Процес перевірки всупереч специфікацій або системних вимог здійснюється у хмарі замість тестування програмного забезпечення.


Сумісність

Використання хмарних середовищ, екземпляри різних операційних систем можуть бути створені при потребі, що робить тестування на сумісність простішим та швидшим.


Продуктивність браузерів

З легкістю може бути досягнено результати перевірки підтримки додатків для різних типів браузерів і продуктивності в кожному типі. З хмари доступні різні інструменти для автоматизованого тестування веб-сайтів.


Латентність

Хмарне тестування використовується для вимірювання затримки між дією і відповідною відповіддю будь-якої програми після його розгортання у хмарі.

Кроки

Компанії імітують реальних веб-користувачів за допомогою хмарних послуг тестування, які надаються постачальниками хмарних послуг, таких як Advaltis, Compuware, HP, Keynote Systems, Load Impact, Neotys, RADview і SOASTA. Після того, як користувацькі сценарії розробляються і призначаються, постачальники послуг важелі хмарних серверів (надані постачальниками хмарних платформ, таких як Amazon.com, Google, Microsoft, Rackspace, і т. д.), щоб генерувати веб-трафік, що виходить з різних країн світу. Після завершення тестування, постачальники хмарних послуг надають результати та аналітику назад до корпоративних ІТ-фахівців в реальному часі для повного аналізу, як їх програми та інтернет буде виконуватись під час пікових обсягів.

700px-Steps_in_cloud_testing.png