Засоби підтримки виконання і протоколювання тестів 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Засоби підтримки виконання і протоколювання тестів




Засоби виконання тестів

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

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

Засоби виконання тестів також можуть використовуватися механізм запису/відтворення тестів. Запис тестових вхідних даних під час дослідницького тестування може бути корисно для відтворення або документування тесту, наприклад, якщо відбулася відмова.

 

Тестовий вузол / засоби оболонки модульних тестів

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

 

Тестові порівняльники

 

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

 

Засоби вимірювання покриття

 

Засоби покриття коду вимірюють відсоток конкретних типів структур коду, які були перевірені (наприклад, команди, гілки або рішення, і виклики модулів або функцій). Ці інструменти показують, наскільки глибоко вимірюваний тип структур був перевірений набором тестів.


Засоби безпеки

 

Засоби безпеки перевіряють на комп'ютерні віруси та DoS-атаки. Інші інструменти безпеки навантажують систему, шукаючи певні уразливості в ній.

 

Інструменти, що асистують моніторинг продуктивності


Засоби динамічного аналізу

 

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

 

Засоби тестування продуктивності / навантажувального / стресового тестування

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

 

Засоби моніторингу

 

Засоби моніторингу не зовсім є засобами тестування, але вони надають
інформацію, яка може бути використана з метою тестування і недоступна іншими способами.

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

 

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

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

Автоматизація продуктів з графічним користувацьким інтерфейсом розвивалася протягом 4 поколінь інструментів та технік:

Інструменти запису і відтворення (capture/playback tools) записують дії тестувальника під час ручного виконання тестів. Вони дозволяють виконувати тести без прямої участі людини протягом тривалого часу, значно збільшуючи продуктивність і усуваючи необхідність повторення одноманітних дій під час ручного тестування. У той же час, будь-яке незначна зміна інтерфейсу вимагає перезапису тестів. Тому це перше покоління інструментів не ефективне і не масштабується.

Сценарії (Scripting)- форма програмування на мовах, спеціально розроблених для автоматизації тестування ПЗ - пом'якшує багато проблем capture / playback інструментів. Але розробкою займаються програмісти високого рівня, які працюють окремо від тестувальників, безпосередньо запускають тести. До того ж скрипти найбільше підходять для тестування GUI і не можуть бути впровадженими, пакетними або взагалі яким-небудь чином об'єднані в систему. Нарешті, зміни в ПЗ вимагають складних змін у скриптах, і підтримка все зростаючою бібліотеки тестуючих скриптів стає врешті-решт непереборним завданням.

Data-driven testing -методологія, яка використовується в автоматизації тестування. Особливістю є те, що тестові скрипти виконуються та верифікуються на основі даних, які зберігаються в центральному сховищі даних або БД. Роль БД можуть виконувати ODBC-ресурси, csv або xls файли і т.д. Data-driven testing - це об'єднання декількох взаємодіючих тестових скриптів і їх джерел даних у фреймворк, який використовується в методології. У цьому фреймворку змінні використовуються як для вхідних значень, так і для вихідних перевірочних значень: у тестовому скрипті зазвичай закодовані навігація по додатку, читання джерел даних, ведення логів тестування. Таким чином, логіка, яка буде виконана в скрипті, також залежить від даних.

 

Аналіз переваг автоматичного тестування

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

 

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

Швидке виконання - автоматизованому скрипту не потрібно звірятися з інструкціями та документацією, це сильно скорочує затрати часу на виконання.

 

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

Звіти – можна налаштувати автоматичну розсилку звітів по результатам тестування і їх централізоване зберігання.

 

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

 

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



Поделиться:


Последнее изменение этой страницы: 2016-04-26; просмотров: 220; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.14.253.221 (0.006 с.)