- •1. Автоматические системы регулирования. Общие сведения. Основные понятия и определения
- •2. Принципы регулирования. Принцип регулирования по возмущению
- •3. Принципы регулирования. Принцип регулирования по отклонению
- •4.Архитектура асутп. Функциональный подход
- •5.Архитектура асутп. Структурный подход
- •6. Подсистемы и функции асутп
- •7.Виды обеспечения асутп
- •8. Программное обеспечение систем управления. Основные понятия.
- •9. Информационное обеспечение асутп
- •10. Математическое обеспечение асутп. Классификация мат. Моделей
- •1. По способу построения:
- •11. Математическое обеспечение асутп. Виды динамических моделей асутп
- •12. Математическое обеспечение асутп. Алгоритмы в асутп
- •13. Микропроцессоры, их структура
- •14.Программируемые микропроцессорные контроллеры
- •15. Устройства ввода и вывода информации. Сопряжение эвм с аналоговыми регуляторами и исполнительными устройствами
- •16. Основные принципы тестирования программ
- •17. Элементарные типовые звенья. Законы регулирования.
- •Пропорционально-интегрально-дифференциальный регулятор.
- •Системы управления технологическими процессами (пб 09-540-03).
- •Системы противоаварийной автоматической защиты (пб 09-540-03).
- •Размещение и устройство помещений управления (пб 09-540-03).
16. Основные принципы тестирования программ
Тестирование является одним из этапов жизненного цикла ПП (программный продукт), направленным на повышение качественных характеристик. При создании типичного ПП около 40% общего времени и более 49% общей стоимости расходуется на проверку (тестирование) разрабатываемой программы.
Программы как объекты тестирования имеют ряд особенностей, которые отличают процесс их тестирования от общепринятого, применяемого при разработке аппаратуры и других технических изделий. Особенностями тестирования ПП являются:
-
отсутствие эталона (программы), которому должна соответствовать тестируемая программа;
-
высокая сложность программ и принципиальная невозможность исчерпывающего тестирования;
-
практическая невозможность создания единой методики тестирования (формализации процесса тестирования) в силу большого разнообразия ПП по их сложности, функциональному назначению, области использования и т.д.
Применительно к ПП тестирование – это процесс многократного выполнения программы с целью обнаружения ошибок. Программа тестируется для того, чтобы повысить уровень ее надежности, т.е. выявить максимальное число ошибок. Цель тестирования – выявление как можно большего числа ошибок. Из правильного определения тестирования вытекает ряд принципов, которые интуитивно ясны, но именно поэтому на них не обращают внимания.
Принцип 1. Процесс тестирования более эффективен, если проводится не автором программы. Тестовый прогон, в результате которого не выявлено ошибок считается неудачным (неэффективным).
Принцип 2. Описание предполагаемых значений результатов тестовых прогонов должно быть необходимой частью тестового набора данных. Сложность его заключается в том, что при тестировании программы (модуля) необходимо для каждого входного набора данных рассчитать вручную ожидаемый результат или найти допустимый интервал изменения выходных данных.
Принцип 3. Необходимо досконально изучать результаты каждого теста. Значительная часть всех обнаруженных в конечном итоге ошибок могла быть выявлена в результате самых первых тестовых прогонов, но они были пропущены вследствие недостаточно тщательного анализа первых тестовых прогонов.
Принцип 4. Тесты для неправильных и непредусмотренных входных данных должны разрабатываться также тщательно, как для правильных, предусмотренных.
Принцип 5. Необходимо проверять не только, делает ли программа то, для чего она предназначена, но и не делает ли она то, что не должна делать. Необходимо любую программу проверить на нежелательные побочные эффекты. Например, если программа обработки и печати какой-нибудь ведомости дублирует первую или последнюю строку, то она содержит ошибку.
Принцип 6. Вероятность наличия необнаруженных ошибок в части программы пропорциональна числу ошибок, уже обнаруженных в этой части. Из этого принципа можно сделать вывод: если в какой-нибудь части программы обнаружено больше ошибок, чем в других, то ее необходимо тестировать более тщательно.
