
- •Системное программное обеспечение Кошкин в. В.
- •Место программных средств в вычислительных системах
- •Состав по
- •Общие требования к программному обеспечению
- •Требования к проектируемому программному обеспечению
- •(2) Основные принципы проектирования программного обеспечения (по).
- •Механизмы выполнения программы
- •Последовательность выполнения программы. Основные положения.
- •2) Понятие процедур.
- •(3) Прерывания
- •(4) Процедура ввода/вывода.
- •Управление реальной памятью.
- •Управление виртуальной памятью.
- •Р абота с файлами.
- •Планирование заданий.
- •Распределение ресурсов
- •Защита пользователей.
- •Синхронизация процессов. (1) Синхронизация. Мониторы как инструмент синхронизации.
- •(2) Синхронизация. Реализация взаимного исключения. Семафоры.
- •Загрузчики.
- •Загрузчик, абсолютный загрузчик
- •Перемещающий загрузчик.
- •Управление процессами загрузки.
- •Связывающие загрузчики.
- •Динамическое связывание.
- •Макропроцессоры. (1) понятия о макропроцессорах.
- •(2 )Варианты построения макропроцессоров.
- •Компиляторы Основные функции компиляторов. Последовательность компиляции.
- •Свойства компиляторов, варианты построения.
- •Интерпретаторы.
- •Компиляторы в р-код.
- •Автоматизация процедуры компиляции.
- •Тестовое по. Основные принципы построения тестового по.
- •Основы методики тестирования.
- •Генерация тестовых последовательностей.
- •Вопросы для подготовки к экзаменам по Системному программному обеспечению
- •Объектный файл 1.Obj
- •Выполняемый файл 1.Exe
- •Если нужны изменения
Основы методики тестирования.
Наиболее простым критерием тестирования считают выполнение каждого оператора хотя бы один раз. Анализ блок схемы программы следует проводить так, чтобы тестовое задание проходило через меньшее число циклов. В первую очередь на это окажет влияние набор входных данных. Условие, которому должен удовлетворять набор входных данных для пересечения (прохождения по программе) называют предикатом пути. Предикат пути определяет подобласть, на которой задана функция для тестирования. В процессе тестирования самым простым подходом считается использование в программе исходных точек. В блок-схеме программы определяют операторы, после которых проверяется состояние переменных. Большое число контрольных точек — выше надежность, однако, контрольные точки стремятся сократить и оставить их только для того, чтобы определить по каким ветвям проходит программа. Рассматривают некие промежутки между операторами условных переходов. Эти промежутки удовлетворяют следующим требованиям: начинаются из входной вершины или блока проверки условия, оканчиваются на блоке проверки условия или на выходном блоке. В промежутке между ними отсутствует блок проверки условия. Контрольная точка на таком интервале одна. Для нахождения минимального тестового набора используют тестовые случаи:
находят все возможные пути по блок-схеме.
Проверяют условие для каждого пути (предиката)
Находят набор входных переменных по предикате пути.
Выбор тестовых данных идеально может быть решен автоматически, однако для этого необходима программа более сложная, чем рабочая. Отсюда, тестовые данные выбирают на основе анализа: если программа корректна — возможные результаты, если программы некорректна — какие могут быть ошибки.
В процессе тестирования помимо выбора конкретных данных для проверки возникают сложности связанные со следующими ограничениями:
В большой программе значительное число путей — контрольных точек, т. е. необходимо время для их проверки.
При определенных наборах входных данных некоторые пути в программе могут не пересекаться. Их нельзя использовать как тестовые. Отсюда выявление таких наборов.
Большинство программ имеют циклическую структуру при проверке по контрольным точкам достаточно одного прохода по цепи, но часто для полной работы в программе одного прохода недостаточно (если изменяется переменная в цикле), поэтому приходится учитывать число проходов по циклу по величине переменной (диапазону переменной).
Индексируемая переменная. Индекс может изменяться согласно алгоритму, либо с отличием от него. Анализ индексируемых переменных при тестировании обязателен.
При использовании модульной структуры рассматривают переменную, которая присутствует в нескольких блоках. Необходимо переназначать в начале блока ее исходное значение.
Формат плавающая запятая имеет некоторые особенности в зависимости от типа от типа машин, поэтому необходимо контролировать прямое и обратное преобразование из рабочего формата в формат с плавающей запятой.
Стремятся использовать в качестве входного набора тестовых данных результаты автоматизированных процедур.