Тестирование - это процесс многократного выполнения программы с целью выявления ошибок.
Существуют следующие методы тестирования ПО.
1) Статическое тестирование – ручная проверка программы и всех её модулей. Статическое тестирование производится без запуска программного кода продукта.
2) Детерминированное тестирование – используются различные комбинации исходных данных. В отличие от статического, динамическое тестирование производится путем запуска продукта и проверки его функционала.
3) Стохастическое тестирование – исходные данные выбираются произвольно, и на выходе определяется качественное совпадение результатов или производится примерная оценка.
Динамическое делится на:
1) Структурное тестирование – в этом случае используется метод белого ящика. Тестируется логика программы, внутренняя структура программы и ей алгоритм.
2) Функциональное тестирование – используется метод чёрного ящика. Тестируется спецификация, связанная с входом выходом без учёта знания о её структуре.