· выбор инструментальных средств
· проведение методов контроля на каждом этапе разработки
· программно-целевой метод (тесты ориентированы на конкретные целевые направления)
Тестирование связано с тотальным контролем, начиная от тестирования отношений пользователя и заказчика тестирование целей внешних спецификаций, проекта системы, проектируемых программ и спецификаций интерфейса модулей, в т.ч. и исходный код носит название комплексного тестирования.
Основная задача комплексного тестирования – установить взаимнооднозначное соответствие между процессами разработки ПИ и его тестирование. При проверке модулей ставится задача найти противоречия между модулями программы и спецификациями их интерфейсов. При тестирование функций противоречие ищется в виде несоответствия программ своим внешним спефикациям. При тестировании системы проверяется в целом несоответствие заданной техническим заданием требование к программе и т.д.
Наиболее важный этап тестирования – выбор способа сборки из отдельных модулей программы, поскольку именно здесь возникают наиболее сложные и уловимые ошибки на стыке сборки. Именно в этой части тестирования определяется форма написания теста модуля, типы средств, используемые при тестировании, порядок тестирования модулей и методы локализации ошибок и их исправление.
В этом отношении известно 2 подхода:
· монолитное тестирование (предусматривает проверку всей программы или комплекса программ целиков)
· пошаговое тестирование (каждый модуль последовательно подключается к уже оттестированному модулю)
1. Монолитное тестирование более трудоемкое
2. При пошаговое тестировании ошибки в межмодульных интерфейсах обнаруживаются раньше, чем при монолитном тестировании (т.е. тестирование проводится сразу с первого шага, тогда как при монолитном тестировании тестирование начинается на последнем шаге)
3. При пошаговом тестировании менее трудоемка и отладка программы
4. Качество тестирования при пошаговом подходе выше, чем при монолитном, это связано с тем, что оттестированные модули в ряде случаев могут выступать как заглушки
5. Затраты машинного времени при монолитном тестировании в большинстве случаев меньше, чем при пошаговом.
6. Монолитное тестирование создает хорошие предпосылки для распараллеливания работ, особенно в начальной фазе тестирования
Тестирование функции (Проверка функций)
Тестирование системы - является наиболее сложным и трудоемким и наиболее важным среди всех этапов комплексного тестирования, т.к. именно на этом этапе проверяется полнота и идентичность проектируемой системы. Основное назначение этого этапа - сопоставить результаты тестирования с заданными целями. Тестирование не ограничивается только проверкой взаимосвязанных программных модулей, а тестируются в основном те целевые функции или те целевые установки, которые характеризуют программное изделие как изделие производственно-технического назначения, а объектом системы являются требования к ПИ, тест программы на язык программирования и комплект пользовательской документации.