цією групою. Отже, тестувальник може продовжувати роботу з тестування білого ящика, хоча ПЗ вже «в беті» (Стадія), але в цьому випадку він не є частиною «бета-тестування» (Групи / процесу).
Організація тестування програм.
Тестування програмного продукту одночасно проводиться в 3-х напрямах:
Перевірка коду (review): Тестер переглядає вихідний код візуально і намагається знайти ньому помилки, а так само різні невідповідності коду і вимог до нього. Під вимогою розуміється стандарт, якого дотримується розробники даного проекту, реакція на ті чи інші дії з боку середовища впливу на ПЗ, поведінка програмного продукту в різних ситуаціях.
Тестування високого рівня: Тут головна мета тестування - з'ясувати, чи задовольняє розробка всім вимогам замовника. Для програмного продукту пишуться емулятори, за допомогою яких тестер може спостерігати за роботою системи в ролі оператора. Він бачить, як система здійснює діалог з користувачем, які повідомлення вона видає, як реагує на різні події, зберігає інформацію і т.д. Більшість виявлених помилок на цьому етапі пов'язано з помилками взаємодії програмного продукту з користувачем - висновок помилкових повідомлень, що не правильна реакція на запит від оператора тощо
Тестування низького рівня: Тестер перевіряє, на скільки логічно повно вихідний код покриває всі можливі варіанти роботи системи, для якої він розробляється.
Існують стандарти тестування, вони залежать від того в якій області застосовується розробляється ПЗ. Нижче представлені деякі з них:
Стандарт ISO 90019001 - стандарт, заснований на принципах контролю якості. У ньому, по суті, задаються ключові функціональні вимоги, для кожного з яких потрібно сказати, що робиться, як зробити те, що сказано, і мати можливість показати, що було зроблено. Реалізація даного стандарту в середовищі ПЗ - ISO 9000-3.
Стандарт ISO / IEC 12207 і IEEE / EIA 12207/IEC 12207 - це міжнародний стандарт, що описує структуру процесів життєвого циклу ПЗ від концепції до вилучення з обігу. Стандарт IEEE / EIA 12207 - адаптація ISO / IEC 12207 для США.
У відповідності з цими стандартами в тій чи іншій галузі виробництва висуваються вимоги до тестрованію ПЗ. Наприклад в авіації США на основі ISO / IEC 12207 був вироблений стандарт RTCA (Requirements and Technical Concepts for Aviation). У ньому перераховані наступні вимоги до тестування верхнього та нуіжнего рівня: Тестування верхнього рівня:
Вимоги високого рівня повинні включати в себе системні вимоги до ПО
Вимоги високого рівня повинні формулюватися з урахуванням архітектури ПЗ
Програмний код повинен задовольняти архітектурі ПО і вимогам низького рівня
Відкомпільований і готовий до використання код повинен задовольняти вимогам до ПЗ
Використовувані значення повинні технічно відповідати поставленим цілям і виконувати їх для всіх рівнів ПО
Тестування нижнього рівня:
Перевірку (Verification) вимог нижнього рівня
Перевірку архітектури програмного забезпечення (ПО)
Перевірку логічного покриття для всіх функцій написаних у ПО