Загрузка...

Генерация тестов для определения надежности сложных программных средств.


Ручная подготовка тестов целесообразна, когда немногочисленные величины имеют глубокие логические связи, которые трудно формализовать. При этом ручное составление тестов оказывается проще, чем разработка генератора тестов. Но такие случаи относительно редки, и в большинстве случаев нужно автоматизировать генерацию тестов.
Генераторы программных тестов должны предоставлять возможность создания гестов во всем разнообразии динамики поведения и характеристик объектов внешней среды данного ПС. Обычно только небольшая часть тестов является детерминированной, а основная часть отражает стохастическое и динамическое поведение внешних объектов.
При создании генераторов тестов применяются 2 принципиально различающихся подхода — интегральный и дифференциальный. При интегральном подходе основой является формальное описание входной и выходной информации имитируемого объекта, а также функциональной связи между данными на его входе и выходе. Структура объекта и процессы, реализующиеся при функционировании его компонент, не моделируются и не имеют значения.
При дифференциальном подходе необходимы подробные сведения о всех процессах функционирования компонент объектов внешней среды. Дифференциальные или имитационные модели генераторов тестов базируются па этих сведениях.
В отличие от натурального эксперимента моделирование внешней среды и тестов на компьютере имеет большие возможности контроля, как исходных данных, так и всех промежуточных и выходных результатов функционирования исследуемого объекта. Программная имитация внешней среды позволяет
— проводить длительное непрерывное генерирование имитируемых данных для определения надежности функционирования ПС в широком диапазоне изменения условий и параметров, что часто невозможно для реальных объектов;
— расширять диапазоны характеристик имитируемых объектов за пределы реально существующих;
— создавать тестовые данные, соответствующие критическим или опасным ситуациям функционирования объектов внешней среды, которые невозможно или опасно реализовать при натуральных экспериментах;
— обеспечивать высокую повторяемость имитируемых данных при заданных условиях их генерации и возможность прекращения или приостановки имитации на любых фазах моделирования внешней среды.
Некоторые даже маловероятные ситуации значений исходных данных являются критическими и особо важными для функционирования всей системы, для которой разрабатывается ПС. Выбор и имитация подобных ситуаций позволяет отработать ПС в критических маловероятных ситуациях, которые невозможно или опасно создавать на реальных объектах.
Тем не менее, не всегда при программной имитации корректно и полностью отражаются все характеристики внешней, среды и могут быть необходимы отдельные контрольные проверки, ПО во взаимодействии с реальными объектами.

Загрузка...