Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
метода по практическим(на печать).doc
Скачиваний:
4
Добавлен:
26.11.2019
Размер:
333.31 Кб
Скачать

Практична робота № 3

Тема: Функціональне тестування

Мета: вивчити методи функціонального тестування на практиці.

Хід роботи

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

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

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

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

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

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

б) повідомлення основних тем, по яким відбувається практична робота.

3. Закріплення вмінь та навичок студентів

Теоретичні відомості. До вивчених способів функціонального тестування належать: спосіб розбиття по еквівалентності, спосіб аналізу граничних значень та спосіб причинно-наслідкових діаграм.

Для тестування програми за допомогою способу розбиття по еквівалентності необхідно виконати наступні кроки:

  • сформувати класи еквівалентності;

  • визначити післяумови та передумови;

  • розробити тестові варіанти.

Для тестування способом аналізу граничних значень необхідно:

  • визначити граничні значення;

  • сформувати тестові варіанти для тестування граничних значень.

Тестування способом діаграм причин-наслідків відбувається у наступному порядку:

- для кожного модуля перераховуються причини (умови уведення або класи еквівалентності умов уведення) і наслідки (дії або умови виводу). Кожній причині й наслідку привласнюється свій ідентифікатор;

- розробляється граф причинно-наслідкових зв'язків;

- граф перетвориться в таблицю рішень;

- стовпці таблиці рішень перетворяться в тестові варіанти.

4. Основна частина заняття:

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

Дана програма, що виконує пошук студента по середнього балу успішності та виводить тих, у кого середній бал 4 та вище. Оцінки зберігаються в масиві. Оцінок в масиві має бути 5. Оцінки можуть бути від 2 до 5. Шостим елементом масиву є середній бал. Якщо студент має середній бал більше 4 – дані про нього виводяться на екран, інакше – записуються в файл.

Приклад виконання роботи

1. Розглянемо застосування способів розбиття по еквівалентності та аналізу граничних значень на наступному прикладі. Необхідно протестувати програму бінарного пошуку. Є специфікація програми: пошук виконується в масиві елементів М, повертається індекс І елементу масиву, значення якого відповідає ключу пошуку Key.

Передумови:

1) масив має бути впорядкований;

2) масив повинен мати не менше одного елементу;

3) нижня межа масиву (індекс) повинна бути меншою або дорівнювати його верхній межі.

Постумови:

  1. якщо елемент знайдений, то прапорець Result=True, значення І – номер елемента;

  2. якщо елемент не знайдений, то прапорець Result=False, значення І – не визначене.

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

- масив з одного елементу;

- масив з парної кількості елементів;

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

Нарешті, на останньому, 4-му рівні критерієм розбиття може бути аналіз ребер класів еквівалентності. Очевидно, можливі наступні варіантия:

  1. робота з першим елементом масиву;

  2. робота з останнім елементом масиву;

  3. робота з проміжним елементом масиву.

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

Мал.. 1 Дерево розбиття області початкових даних бінарного пошуку

Це дерево має 11 листків. Кожен листок задає окремий тестовий варіант. Розробимо тестові варіанти, що засновані на проведених розбиттях.

ТВ1(одиничний масив, елемент знайдено):

ПД.: М=15, Кеу=15.

Оч. Рез.: Result=True; I=1.

ТВ2(парний масив, знайдено перший елемент):

ПД.: М=15,20, 25, 30, 35, 40; Кеу=15.

Оч. Рез.: Result=True; I=1.

ТВ3(парний масив, знайдено останній елемент):

ПД.: М=15,20, 25, 30, 35, 40; Кеу=40.

Оч. Рез.: Result=True; I=6.

ТВ4(парний масив, знайдено проміжний елемент):

ПД.: М=15,20, 25, 30, 35, 40; Кеу=25.

Оч. Рез.: Result=True; I=3.

ТВ5(непарний масив, знайдено перший елемент):

ПД.: М=15,20, 25, 30, 35, 40, 45; Кеу=15.

Оч. Рез.: Result=True; I=1.

ТВ6(непарний масив, знайдено останній елемент):

ПД.: М=15,20, 25, 30, 35, 40, 45; Кеу=45.

Оч. Рез.: Result=True; I=7.

ТВ7(непарний масив, знайдено проміжковий елемент):

ПД.: М=15,20, 25, 30, 35, 40, 45; Кеу=30.

Оч. Рез.: Result=True; I=4.

ТВ8(парний масив, не знайдено елементу):

ПД.: М=15,20, 25, 30, 35, 40; Кеу=23.

Оч. Рез.: Result=False; I=?

ТВ9(непарний масив, не знайдено елементу):

ПД.: М=15,20, 25, 30, 35, 40, 45; Кеу=24.

Оч. Рез.: Result=False; I=?

ТВ10(одиничний масив, не знайдено елементу):

ПД.: М=15; Кеу=0.

Оч. Рез.: Result=False; I=?

ТВ11(порушено передумови):

ПД.: М=15,10, 5, 25, 20, 40, 35; Кеу=35.

Оч. Рез.: Аварійне донесення: Масив не впорядкований.

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

- при місячному споживанні енергії меншому, ніж 100кВт/год, виставляється фіксована сума;

- при споживанні енергії, що більше або рівне 100 кВт/год застосовується процедура А планування розрахунку.

При розрахунку за змінним тарифом:

  • при місячному споживанні енергії меншому, ніж 100кВт/год, застосовується процедура А планування розрахунку;

  • при споживанні енергії більшому або рівному 100кВт/год застосовується процедура В планування розрахунку.

Крок 1. Причинами є:

  1. розрахунок по середньому тарифу;

  2. розрахунок по змінному тарифу;

  3. місячне споживання електроенергії менше, ніж 100кВт/год;

  4. місячне споживання електроенергії більше або рівне 100кВт/год.

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

  • 101 – мінімальна місячна вартість;

  • 102 – процедура А планування розрахунків;

  • 103 – процедура В планування розрахунків.

Крок 2. Розробка графу причинно-наслідкових зв’язків (мал.. 2).

Вузли причин розташовані вертикально по лівому краю малюнка, а вузли наслідків – по правому краю. Для наслідку 102 виникає необхідність вводу вторинних причин – 11 та 12, їх розміщаємо в центрі малюнку.

Мал. 2 Граф причинно-наслідкових зв’язків

Крок 3. Генерація таблиці рішень. При генерації причини розглядаються як умови, а наслідки – як дії.

Порядок генерації.

    1. Обираємо деякий наслідок, який має бути в стані „1”.

    2. Знаходимо всі комбінації причин ( з врахуванням обмежень), які встановлюють цей наслідок в стан „1” . Для цього з наслідку прокладається зворотна траса через граф.

    3. Для кожної комбінації причин, що приводять наслідок в стан „1”, будуємо один стовпець.

    4. Для кожної комбінації причин до визначаємо стани всіх інших наслідків. Вони поміщаються в той самий стовпчик таблиці рішень.

    5. Дії 1-4 повторюються для всіх наслідків графу.

Таблиця 1.1 Таблиця рішень для програми розрахунку сплати за електроенергію

Номери стовпців

1

2

3

4

Умови

Причини

1

1

0

1

0

2

0

1

0

1

3

1

1

0

0

4

0

0

1

1

Вторинні причини

11

0

0

1

0

12

0

1

0

0

Дії

Наслідки

101

1

0

0

0

102

0

1

1

0

103

0

0

0

1

Крок 4. Перетворюємо кожен стовпець таблиці в тестовий варіант. В нашому прикладі таких варіантів 4.

ТВ1(стовпець 1):

ПД.: розрахунок по середньому тарифу; місячне споживання електроенергії 75 кВт/год.

Оч.рез: мінімальна місячна вартість.

ТВ2(стовпець 2):

ПД.: розрахунок по змінному тарифу; місячне споживання електроенергії 90 кВт/год.

Оч.рез: процедура А планування розрахунку.

ТВ3(стовпець 3):

ПД.: розрахунок по середньому тарифу; місячне споживання електроенергії 100 кВт/год.

Оч.рез: процедура А планування розрахунку.

ТВ4(стовпець 4):

ПД.: розрахунок по змінному тарифу; місячне споживання електроенергії 100 кВт/год.

Оч.рез: процедура В планування розрахунку.

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

5. Контрольні запитання

5.1 У яких випадках застосовуються методики тестування розбиття по еквівалентності та граничних значень?

5.2 Для визначення яких типів помилок застосовується метод функціональних діаграм (діаграм причин - наслідків)?

6. Узагальнення та систематизація вмінь і навичок.

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

8. Самостійна робота: за розглянутим прикладом самостійно виконати завдання та відповісти на контрольні запитання.