Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Samrab_testuvannya.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
639 Кб
Скачать
☆

Тема 4.2 Використання специфікацій вимог до розробки тестів

Завдання: законспектувати тему до зошита у вигляді відповідей на контрольні запитання, що містяться в кінці теми.

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

Приклад використання специфікації вимог для розробки тестів.

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

Функція DoTransaction повинна приймати адресу й дані, відповідно до параметрів, створювати в черзі новий елемент, заповнювати його адресну частину й частину полів даних переданою інформацією й ініціювати транзакцію

Функція DoAddressTenure повинна приймати адресу відповідно до параметрів, створювати в черзі новий елемент і заповнювати його адресну частину

Функція DoDataTenure повинна приймати дані відповідно до параметрів, знаходити в черзі перший елемент із частково незаповненими полями даних, доповнювати його переданою інформацією й ініціювати транзакцію

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

Викликати DoTransaction з адресою й даними. Перевірити появу в черзі ще одного елемента. Перевірити поява на шині транзакції із правильними адресою й даними.

Викликати DoAddressTenure з адресою. Перевірити появу в черзі ще одного елемента. Перевірити відсутність нової транзакції на шині.

Викликати DoDataTenure з даними. Перевірити заповнення полів даних. Перевірити поява на шині транзакції із правильними адресою й даними

Тестування сценаріїв

Розробка тестів, заснованих на використанні сценаріїв, здійснюється за наступною методикою:

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

Розробляються сценарії використання продукту. Описання сценарію залежно від продукту й обраного підходу може бути строго певним, параметризованным або дозволяти деякий ступінь невизначеності. Наприклад, опис сценарію мовою MSC допускає завдання параметризованих сценаріїв з можливістю перевпорядкування подій.

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

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

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

Приклад використання специфікації вимог для розробки тестів.

Так, для розглянутого вище прикладу можливе створення наступного сценарію й тестів.

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

Опис тестів: Викликати DoAddressTenure c адресою А1, викликати DoTransaction з адресою А2 і даними D2, викликати DoDataTenure з даними D1. Перевірити послідовну появу на шині двох транзакцій: {А1, D1} і {А2, D2}

При виконанні цього тесту було, зокрема, виявлено, що функція DoTransaction була реалізована через виклики до DoAddressTenure і DoDataTenure, що приводило до появи на шині транзакцій виду {А1, D2} і {А2, D1}. Подібний дефект може бути виявлений на превелику силу, якщо розробляти тести, ґрунтуючись тільки на специфікації вимог.

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

  1. Приведіть приклад розробки тестів за специфікацією вимог.

  2. Що розуміють під тестуванням сценаріїв?

  3. Як відбувається розробка тестів за допомогою сценаріїв?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]