- •Общая характеристика процессов сбора, хранения передачи и обработки информации Общие понятия информационного процесса
- •Измерение информации
- •Технические и программные средства реализации информационных процессов Архитектура персонального компьютера
- •Устройства ввода
- •Устройства вывода
- •Матричный принтер
- •Термические принтер
- •Струйный принтер
- •Лазерный принтер
- •Устройства хранения информации
- •Устройство обработки информации
- •Программное обеспечение компьютера
- •Основные функции ос
- •Системы программирования
- •Прикладное программное обеспечение
- •Интерфейс пользователя
- •Рабочий стол
- •Панель задач
- •Главного меню
- •Структура окна Windows
- •Работа с окнами программ
- •Реорганизация окон, переключение между окнами
- •Файловая система Windows
- •Работа с файлами и папками в Windows
- •Создание ярлыка
- •Способы записи алгоритмов
- •Базовые алгоритмические конструкции
- •Массивы
- •Технология структурного программирования
- •Нисходящая разработка алгоритма
- •Использование базовых структур
- •Приемы структурирования
- •Использование булевого признака
- •Сквозной структурный контроль
- •Тестирование и отладка программ
- •Методы тестирования
- •Функциональное тестирование
- •Классы эквивалентности как метод снижения количества тестов
- •Выбор значений для тестов
- •Формулировка условий
- •Функциональные тесты
- •Структурное тестирование
- •Язык программирования Delphi Интегрированная среда Delphi 7.0
- •Окно инспектора объектов
- •Окно формы
- •Окно редактора кода
- •Управление проектом
- •Сохранение проекта
- •Открытие существующего проекта
- •Добавление дополнительных форм к проекту
- •Создание приложений в Delphi
- •Разработка пользовательского интерфейса приложения
- •Размещение компонентов на форме
- •Установка свойств во время разработки
- •Создание процедур обработки событий
- •Удаление процедур обработки событий
- •Структура проекта Delphi
- •Модули Delphi
- •Синтаксическая структура модуля
- •Идентификаторы
- •Типы данных в Delphi
- •Структурированные типы
- •Описание типа «массив»
- •Основные операторы языка Delphi
- •Оператор присваивания
- •Составной оператор
- •Условный оператор
- •Оператор выбора
- •Операторы цикла
- •Оператор цикла с предусловием
- •Оператор цикла с постусловием
- •Оператор цикла с параметром
- •Подпрограммы в Delphi
- •Описание процедуры
- •Вызов процедуры
- •Описание функции
- •Вызов функции
- •Графика в Delphi Графические компоненты
- •Свойство объектов Canvas
- •Свойства Canvas
- •Методы Canvas
- •Объект tPaintBox
Методы тестирования
Существует два метода тестирования:
функциональное тестирование или метод «черного ящика»,
структурное тестирование или метод «белого ящика».
Функциональное тестирование
При функциональном тестировании ни схема алгоритма, ни текст программы не используются. Используется только формулировка задачи.
Функциональные тесты можно разрабатывать еще до разработки алгоритма задачи.
В формулировке задачи два вида условий.
то, что известно (входные условия),
то, что не известно, т.е. цель задачи (выходные условия).
Классы эквивалентности как метод снижения количества тестов
Два теста считаются эквивалентными, если они проверяют истинность или ложность одного и того же входного и выходного условий, связывающих входные и выходные данные.
Выделение условий - нетривиальная задача.
Тесты объединяются в эквивалентные классы на основе входных и выходных условий.
Типы входных и выходных условий:
условие, определяющее диапазон,
условие, определяющее множество значений,
условие «может быть», «должно быть».
Выбор значений для тестов
При разработке тестов для каждого условия рассматриваются условия,, которые ему удовлетворяют и условия, которые ему не удовлетворяют. Из первых получает тесты, принадлежащие к классу исходных эквивалентных тестов, а из вторых тесты, принадлежащие к классу противоположных эквивалентных тестов.
Задача. Если в одномерном числовом массиве, состоящем из N элементов, минимальный элемент положителен, то элементы, расположенные между минимальным и максимальны, расположить в обратном порядке.
Формулировка условий
Таблица 1. Формулировка условий
Исходные |
Противоположные |
||
1 |
N>0 |
2 |
N<=0 |
3 |
N>0 и минимальный элемент положителен. |
4 |
N>0 и минимальный элемент не положителен. |
5 |
N>0 и минимальный элемент положителен и максимальный и минимальный элементы расположены в массиве не рядом. |
6 |
N>0 и минимальный элемент положителен и максимальный и минимальный элементы расположены в массиве рядом. |
Условие 1 можно объединить с условиями 3, 4, 5,6. Объединим условие 1 с условием 5.
Условие 3 можно объединить с условиями 5 и 6. Объединим условие 3 с условием 5.
Функциональные тесты
Таблица 2. Функциональные тесты
№ |
Вход |
Выход |
2 |
N=0 |
Сообщение о том, что задача не имеет решений |
4 |
N=4, Массив {-2, -5, -12,-1} |
Массив {-2, -5, -12,-1} |
5 |
N=4, Массив {3, 4, 7,23} |
Массив {3, 7, 4,23} |
6 |
N=4, Массив {3, 23 4,7} |
Массив {3, 23 4,7} |
Структурное тестирование
Структурное тестирование обычно используется в дополнение к функциональному. При структурном тестировании используется структура разработанного алгоритма (программы).
Выбирается конкретный путь из начала к конец алгоритма и Формулируются входные и выходные условия для этого пути. Далее выбираются конкретные входные и выходные данные, удовлетворяющие входным и выходным условиям(формируется тест).
Программа выполняется с тестовым входным набором данным и полученные выходные данные сравниваются с выходными данными из теста. Несовпадение обнаруживает ошибку в программе, которую необходимо локализовать и исправить.