Тестирование программного обеспечения
Рефераты >> Программирование и компьютеры >> Тестирование программного обеспечения

Опыт создания отечественных систем реального времени под­тверждает необходимость ведения одного или двух журналов. В одном из них следует регистрировать все эксперименты с ПС, а в другом—обнаруженные ошибки (проблемы) и ход их устранения. Периодически составляют от­четы об испытаниях за определенный период времени. Для ведения журналов необходимо тщательно разработать ин­струкции, в которых установить общие правила заполнения жур­налов, в том числе единые правила присвоения регистрационных номеров ошибкам, индексации типов ошибок, классификации ошибок и т. п. В журналах следует предусмотреть отдельные разделы, в которых при необходимости будут даваться подроб­ные комментарии к ошибкам и способы их устранения.

Не всякую ошибку можно быстро идентифицировать, поэтому в стандарте IEEE 829—1983 рекомендовано документировать в виде отчетов тест-инцидент все нестандартные события, про­исходящие во время испытания и требующие дополнительного анализа. Рекомендуется следующая структура этого отчета: иден­тификатор отчета тест-инцидент, аннотация, описание инцидента, влияние инцидента на последующий ход испытания. Последние два раздела являются основными. Описание инцидента должно включать следующие элементы: входные данные, ожидаемые и фактические результаты, отклонение от нормы, дата и время испытания, шаг процедуры испытания, среда функционирования, результаты попыток повторения условий эксперимента, испыта­тели, наблюдатели-регистраторы.

Регистрация экспериментов и ошибок (инцидентов), периоди­ческая обработка данных и анализ результатов позволяют конт­ролировать испытания и управлять этим процессом. Сама про­цедура регистрации может быть разной, важно лишь предотвра­тить потерю ценной информации при минимальных трудозатра­тах на сбор и обработку данных. Данное условие можно обеспе­чить только путем максимальной автоматизации всех процессов.

Критерий интенсивности обнаружения ошибок. Если считать, что во время одного эксперимента обнаруживается не более од­ной ошибки и каждая ошибка до начала следующего экспери­мента устраняется, то можно предположить, что при благоприят­ном ходе отладки и испытания кривая зависимости: N = 1 — п/К, где п — количество обнаруженных и устраненных ошибок; К. — . количество экспериментов, будет асимптотически стремиться к единице (кривая 1 на рис. 17). Кривая 2 свидетельствует о не­благополучном ходе процесса.

Тогда в качестве критерия прекращения испытаний можно принять, например, следующее условие: N > 0,95 при обнаруже­нии в последних двухстах экспериментах не более трех несуще­ственных ошибок.

Идея выбора такого критерия основана на том, что частота обнаружения ошибок, выраженная отношением п/К, по мере увеличения количества экспериментов должна уменьшаться и к моменту завершения испытаний принять значение, близкое к нулю. Следует иметь в виду, что оценка уровня завершенности испы­таний по этому показателю будет достоверной лишь в том случае, если каждый эксперимент проводится в новых условиях и испы­татели стремятся обнаружить ошибки, а не доказать их отсут­ствие. Если же программу проверяют при одних и тех же или близких условиях, то довольно быстро получают кривую вида 1, которая не свидетельствует ни о полноте, ни о глубине проверки программ, ни об отсутствии в ней ошибок.

Критерий заданного значения средней наработки на отказ (критерий Дж. Д. Муса). Сделано два предположения. 1. Сум­марное количество обнаруженных и устраненных дефектов в про­

грамме (под дефектом понимается любая причина неудовлетво­ренности свойствами программы) описывается показательной функцией времени функционирования

- исходное количество дефектов в программе; - общее количество дефектов, которое может проявиться за время эксплуа­тации ПС; — средняя наработка на отказ в начале испытаний;

С—коэффициент сжатия тестов. Коэффициент С1 тогда, когда абсолютная реактивность программы при прогоне тестов или статистических испытаниях отличается от абсолютной реак­тивности при работе программы в реальных условиях. Если, на­пример, за один час испытаний моделируется управляемый про­цесс, происходящий в реальных условиях в течение десяти часов, то коэффициент сжатия С принимается равным 10.

Скорость обнаружения и устранения дефектов, измеряемая относительно времени функционирования программы, пропорцио­нальна интенсивности отказов. Коэффициент пропорционально­сти B=n/m называется коэффициентом уменьшения дефектов.

Количество зарегистрированных отказов т зависит от суммарного времени функционирования программы следующим образом:

Значение средней наработки на отказ также зависит от суммарного времени функционирования:

Если в ходе испытания обнаруженные ошибки устраняются, то текущее зна­чение средней наработки на отказ будет увеличиваться. Таким образом, в качестве критерия завершенности испытания можно принять достижение требуемого (заданного) значения средней наработки на отказ Tо. Тогда, определяя периодически текущее значение средней наработки на отказ по этой формуле , можно при планировании дальнейшего хода испытания рассчитать тре­буемое время для дальнейшего про­гона программы по формуле

При планировании отладки и ис­пытания ПО следует учитывать влия­ние следующих факторов: 1) скоро­сти выявления дефектов; 2) скорости устранения дефектов; 3) удовлетво­ренности машинным временем. Пер­вый фактор зависит от укомплек­тованности и квалификации испы­тателей, второй—от укомплекто­ванности и квалификации группы программистов отладчиков, третий — от фондовооруженности (технической оснащенности) разрабатывающей (испытывающей) организации.

На начальной стадии отладки программы интенсивность вы­явления дефектов высока. Программисты-отладчики перегружены работой, приходится даже прерывать тестовые прогоны, делать перерывы в испытаниях. На заключительной стадии интенсив­ность обнаружения дефектов низкая, но остро ощущается необ­ходимость в машинном времени. Испытатели перегружены в под­готовке все новых и новых тестовых исходных данных, в то время как у программистов-отладчиков работы может быть мало.

4. СТЕНДЫ ОТЛАДКИ И ИСПЫТАНИЯ ПРОГРАММ.

Идея имитационного моделирования положена в основу со­здания комплексных имитационно-моделирующих испытательных стендов, используемых для отладки и испытания сложных систем управления в реальном масштабе времени.

Комплексный имитационно-моделирующий испытательный стенд (КИМИС) представляет собой совокупность средств испы­тываемой системы и их моделей, модели внешней среды и про­грамм обработки результатов моделирования, функционально объединенных на основе испытываемого программного комплек­са. Комплексные имитационно-моделирующие испыта­тельные стенды используются при полигонных испытаниях сложных систем.


Страница: