Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теми на модуль 2.doc
Скачиваний:
6
Добавлен:
17.08.2019
Размер:
413.18 Кб
Скачать

Зміст лекції Розглянемо способи, що орієнтовані на окремий клас та на операції, які цим класом інкапсульовані.

1. Стохастичне тестування класу. При стохастичному тестуванні початкові дані для тестових варіантів генеруються випадковим чином. Розглянемо клас Рахунок, який має наступні операції: Відкрити, Встановити, Покласти, Зняти, Залишок, Вього, ОбмежитиКредит, Закрити. Кожна з цих операцій застосовується при деяких обмеженнях:

  • рахунок повинен бути відкритий перед застосуванням інших операцій;

  • рахунок повинен бути закритий післ завершення свіх операцій.

Навіть з такими обмеженнями існує множина допустимих перестановок операцій. Мінімальна робота екземпляру Рахунок включає наступну послідовність операцій: Відкрити – Встановити – Покласти – Зняти – Закрити.

Ця послідовність є мінімальним тестовим варіантом для Рахунку. Проте, в цю послідовність можна вбудувати групу, що забезпечує створення інших варіантів поведінки: Відкрити – Встановити - Покласти – [Залишок●Всього●ОбмежитиКредит●Покласти]n – Зняти – Закрити.

Тут прийняті додаткові позначення: крапка означає операцію І/АБО, пара дужок - групу, а показник ступеню – кількість повторів групи.

Набір різних послідовностей може генеруватися випадковим чином:

Тестовий варіант N:

Відкрити – Встановити – Покласти – Залишок – Зняти – Всього – Зняти – Закрити

Тестовий варіант М:

Відкрити – Встановити – Покласти –Всього - ОбмежитиКредит – Зняти – Залишок - Зняти – Закрити

Ці та інші тести випадкових послідовностей проводяться для перевірки різних варіантів життя об’єктів.

2. Тестування розбиттів на рівні класів. Тестування розбиттів зменшує кількість тестових варіантів, що потребуються для перевірки класів (тим же способом, що і розбиття по еквівалентності для стандартного ПЗ). Області вводу та виводу розбивають на категорії, а тестові варіанти розробляються для перевірки кожної категорії.

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

1. Перший спосіб – розбиття на категорії по станам. Засновується на властивості операцій змінювати стан класу. Звернемося до класу Рахунок. Операції Зняти, Покласти змінюють його стан та утворюють першу категорію. Операції Залишок, Всього, ОбмежитиКредит не змінюють стан Рахунку та утворюють другу категорію. Тести, що проектуються, окремо перевіряють операції, які змінюють стан, а також ті операції, які не змінюють стан. Таким чином, для нашого прикладу:

Тестовий варіант 1: Відкрити – Встановити – Покласти – Покласти –Зняти – Зняти – Закрити.

Тестовий варіант 2: Відкрити – Встановити – Покласти – Залишок – Всього – ОбмежитиКредит – Зняти – Закрити

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

2. Другий спосіб – розбиття на категорії по властивостям. Засновується на властивостях, які використовуються операціями. В класі Рахунок для визначення розбиттів можна використовувати властивості Залишок та ОбмеженняКредиту. Наприклад, на основі властивості ОбмеженняКредиту операції підрозділяються на три категорії:

  1. операції, які використовують ОбмеженняКредиту;

  2. операції, які змінюють ОбмеженняКредиту;

  3. операції, які не використовують та не змінюють ОбмеженняКредиту.

3. Третій спосіб – розбиття на категорії по функціональності. Засновується на обопільності функцій, що виконують операції. Наприклад, операції в класі Рахунок можуть бути розбиті на категорії:

  • операції ініціалізації (Відкрити, Встановити);

  • обчислювальні операції (Покласти, Зняти);

  • запити (Залишок, Всього, ОбмеженняКредиту);

  • операції завершення (Закрити).

Лекція 5 (2 години)

Тема : Автоматизація тестування

Мета: ознайомити студентів з методиками та основними напрямками автоматизації тестування.

Література:

  1. Котляров В.П. „Основи тестування програмного забезпечення ” Інтернет – університет інформаційних технологій – ІНТУІТ.ру, 2006

  2. Орлов С. А., „Технології розробки програмного забезпечення: Підручник для вузів ”. – Спб.: Пітер, 2004р.

Хід заняття

1. Організаційна частина

а) готовність групи до заняття;

б) психоемоційний настрій;

в) перевірка присутніх;

2. Актуалізація опорних знань студентів:

а) повідомлення теми та мети;

б) повідомлення основних тез теми.

3. Викладення нового матеріалу:

План лекції:

  1. Приклад розробки програми тестування

  2. Структура інструментальної системи автоматизації тестування

  3. Витрати тестування

4. Узагальнення та систематизація знань. Підведення підсумків вивченого розділу та виконання письмової самостійної роботи 3 (на 1 годину) по питанням, що приведені в Додатку 1.

5. Підведення підсумків заняття.

6. Домашнє завдання: вивчити матеріал лекції.

7. Самостійне вивчення: опрацювати тему „Переваги та недоліки ручного та автоматизованого тестування” з Методичного посібника для самостійної роботи або з будь-якого іншого джерела (наприклад, мережі Інтернет).