План тестирования
Все шаги тестирования фиксируются в журнале тестирования.
Дата | Тестируемый объект | Описание теста |
20.05-22.05 | Различные блоки системы | Блочное тестирование |
20.05-22.05 | Различные блоки системы | Интеграционное тестирование |
20.05-22.05 | Система в целом | Тестирование интерфейсов |
22.05-25.05 | Система в целом | Аттестационное тестирование |
Тестерами определенного блока системы назначаются члены команды, не принимавшие участие в кодировании этого блока.
Проект вариантов тестирования
Цель тестирования – выявление ошибок и дефектов в программе.
Основные шаги тестирования:
1. Блочное тестирование:
- выбор блоков для тестирования
· блок распознавания
- создание программы драйвера
- запуск драйвера с вводом различных вариантов данных для проверки реакции функции
- ветви выполнения
Группа тестов № 1
Вход: Корректно заданная функция.
Описание: Проверка правильности работы блока.
Результат: Функция должна быть распознана.
- тестирование циклов
Группа тестов № 2
Описание: Задаем переменные Q, W-целые числа
вставляем в циклы вместо M, N соответственно.
M, N – максимальное число выполнений циклов
Q, W – реальное число выполнений циклов
Результат: После окончания работы программы выводится
реальное число выполнений цикла и так во всех остальных.
- тесты на обработку ошибок
Группа тестов № 3
Вход: Не корректно заданная функция.
Описание: Ввод не правильно организованной функции.
Результат: В блок решения должно передаться код ошибки.
· блок не явной схемы
- создание программы драйвера
- запуск драйвера с вводом различных вариантов данных для проверки реакции функции
- тесты на граничные условия
Группа тестов № 4
Вход: Вводим Min и Max значения в поля так, чтобы схема была устойчива и удовлетворяла другим условиям.
Описание: Проверка возможностей системы.
Результат: Ответы на поставленные задачи.
- ветви выполнения
Группа тестов № 5
Вход: a = 1; b = c = 0; f(x, t) = 0; φ(x) = x(x – l); μ(t) = 0; l = 1; T = 0.1; N = 10; M =50 .
Описание: Проверка работы блока.
Результат: Ответ на поставленную задачу.
- тестирование циклов:
Группа тестов № 6
Описание: Задаем переменные Q, W-целые числа
вставляем в циклы вместо M, N соответственно.
M, N – максимальное число выполнений циклов
Q, W – реальное число выполнений циклов
Результат: После окончания работы программы выводится
реальное число выполнений цикла и так во всех остальных.
- ветви обработки ошибок
Группа тестов № 7
Вход: a = 1; l = 1; T = 1; N = 10; M =10; sigma = 0.1 .
Описание: Проверка на устойчивость схемы.
Результат: Сообщение о том, что схема не устойчива.
Группа тестов № 8
Вход: sigma = ρ = 0
Описание: Проверка обработки ограничений.
Результат: Сообщение об ошибки.
· блок явной схемы
- создание программы драйвера
- запуск драйвера с вводом различных вариантов данных для проверки реакции функции
- тесты на граничные условия
Группа тестов № 9
Вход: Вводим Min и Max значения в поля так, чтобы схема была устойчива и удовлетворяла другим условиям.
Описание: Проверка возможностей системы.
Результат: Ответы на поставленные задачи.
- ветви выполнения
Группа тестов № 10
Вход: a = 1; b = c = 0; f(x, t) = 0; φ(x) = x(x – l); μ(t) = 0; l = 1; T = 0.1; N = 10; M =50 .
Описание: Проверка работы блока.
Результат: Ответ на поставленную задачу.
- тестирование циклов
Группа тестов № 11
Описание: Задаем переменные Q, W-целые числа
вставляем в циклы вместо M, N соответственно.
M, N – максимальное число выполнений циклов
Q, W – реальное число выполнений циклов
Результат: После окончания работы программы выводится
реальное число выполнений цикла и так во всех остальных.
- ветви обработки ошибок
Группа тестов № 12
Вход: a = 1; l = 1; T = 1; N = 10; M =10.
Описание: Проверка на устойчивость схемы.
Результат: Сообщение о том, что схема не устойчива.
Группа тестов № 13
Вход: sigma = ρ = 0.2
Описание: Проверка обработки ограничений.
Результат: Сообщение об ошибки.
· интерфейс
- создание программы драйвера
- запуск драйвера с вводом различных вариантов данных для проверки реакции функции
- тесты на локальные структуры данных
Группа тестов № 14 (проверка на ввод некорректных данных)
Вход: Пустой или не правильно организованный файл.
Описание: Проверка работы с не правильно организованным файлом.
Результат: Вывод сообщения об ошибке ввода.
Группа тестов № 15 (проверка на ввод некорректных данных)
Вход: Ввод числа с несколькими буквами во все поля, куда разрешен
ввод чисел.
Описание: Проверка обработки ввода символов и букв туда, где этого не должно производится.
Результат: Вывод сообщения об ошибке ввода.
Группа тестов № 16 (проверка на ввод некорректных данных)
Вход: Ввод числа с несколькими запятыми вначале, в середине и в конце числа, во все поля, куда разрешен ввод чисел.
Описание: Проверка обработки ввода некорректно организованные числа.
Результат: Вывод сообщения об ошибке ввода.
Группа тестов № 17 (проверка на ввод некорректных данных)
Вход: Ввод числа с несколькими минусами вначале, в середине и в конце числа, во все поля, куда разрешен ввод чисел.
Описание: Проверка обработки ввода некорректно организованные числа.
Результат: Вывод сообщения об ошибке ввода.
- ветви выполнения
Группа тестов № 18
Вход: a = 1; b = c = 0; f(x, t) = 0; φ(x) = x(x – l); μ(t) = 0; l = 1; T = 0.1; N = 10; M =50. За тем ждем, пока, система выдаст результат. Полученный результат сохраняем в файл.
Описание: Проверка правильности работы сохранения результатов в файл.
Результат: Ответ на поставленную задачу.
- ветви обработки ошибок
Группа тестов № 19
Вход: a = 1; l = 1; T = 1; N = 10; M =10; явная схема.
Описание: Проверка на устойчивость явной схемы.
Результат: Сообщение о том, что явная схема не устойчива.
Группа тестов № 20
Вход: a = 1; l = 1; T = 1; N = 10; M =10; sigma = 0.1; не явная схема.
Описание: Проверка на устойчивость не явной схемы.
Результат: Сообщение о том, что не явная схема не устойчива.
2. Интеграционное тестирование и тестирование интерфейсов:
Восходящие тестирование
- объединяем блок явной и не явной схемы в кластер
- создание программы драйвера
- запуск драйвера с вводом различных вариантов данных для проверки реакции функции
- тестирование состояний
Группа тестов № 21
Вход: Выбор схемы решения и запуск системы с заданными данными.
Описание: Проверка работы двух схем вместе.
Результат: Ответ на поставленную задачу.
- добавляем к кластеру блок распознавания
- запуск драйвера с вводом различных вариантов данных для проверки реакции функции
- тесты на согласованность интерфейсов блоков
Группа тестов № 22
Вход: a = 1; l = 1; T = 1; N = 10; M =10; явная схема.
Описание: Проверка на реакцию при передаче не устойчивых данных и приеме их модулем решения.
Результат: Сообщение о том, что явная схема не устойчива.
Группа тестов № 23
Вход: a = 1; l = 1; T = 1; N = 10; M =10; sigma = 0.1; не явная схема.
Описание: Проверка на реакцию при передаче не устойчивых данных и приеме их модулем решения.
Результат: Сообщение о том, что не явная схема не устойчива.
Группа тестов № 24
Вход: sigma = ρ = 0.2 для явной схемы, sigma = ρ = 0 для не явной схемы.
Описание: Проверка обработки ограничений. Проверка на реакцию при передаче данных не соответствующих ограничениям и приеме их модулем решения.
Результат: Сообщение об ошибки.
- тестирование состояний
Группа тестов № 25
Вход: Постановка задачи для разных схем выполнения.
Описание: Проверка правильности передачи данных блоком распознавания и приема их модулем решения.
Результат: Ответ на поставленную задачу.
- добавляем к кластеру блок интерфейса
- запуск системы с использованием различных вариантов входных данных:
корректных, некорректных, экстремальных
- тесты на согласованность интерфейсов блоков
Группа тестов № 26
Вход: a = 1; l = 1; T = 1; N = 10; M =10; явная схема.
Описание: Проверка на реакцию при передаче не устойчивых данных и приеме их модулем решения.
Результат: Сообщение о том, что явная схема не устойчива.
Группа тестов № 27
Вход: a = 1; l = 1; T = 1; N = 10; M =10; sigma = 0.1; не явная схема.
Описание: Проверка на реакцию при передаче не устойчивых данных и приеме их модулем решения.
Результат: Сообщение о том, что не явная схема не устойчива.
Группа тестов № 28
Вход: sigma = ρ = 0.2 для явной схемы, sigma = ρ = 0 для не явной схемы.
Описание: Проверка обработки ограничений. Проверка на реакцию при передаче данных не соответствующих ограничениям и приеме их модулем решения.
Результат: Сообщение об ошибки.
- тестирование состояний
Группа тестов № 29
Вход: Запуск системы с заданными данными.
Описание: Проверка правильности передачи данных интерфейсом и приема их блоком распознавания. Проверка правильности передачи данных блоком распознавания и приема их модулем решения.
Результат: Ответ на поставленную задачу.
4. Валидация требований:
- составляется список возможностей системы с учетом критериев аттестации.
Чтобы пройти аттестацию система должна:
· программный продукт должен представлять собой интерактивную среду для численного решения одномерных уравнений параболического типа;
· кодирование осуществляется на языке PHP и С++, руководство пользователя должно быть выполнено на HTML и PHP и ориентировано на ОС Linux;
· программный продукт должен быть произведен в рамках технологии «клиент-сервер»;
· исходные данные должны вводиться пользователем, при чем некоторые из них могут быть представлены в виде функций, а не констант;
· пользователь должен иметь возможность сохранить и вывести из указного им места исходные данные;
· пользователь должен иметь возможность получать результат в реальном времени или сообщение о том, что в данном конкретном случае это сделать невозможно;
· программа должна иметь интуитивно понятный интерфейс;
· программный продукт должен предоставлять ввод данных со стороны клиента;
· программный продукт должен предоставлять возможность выбора вида вывода решения (таблица или график);
· программный продукт должен предоставлять выбор вариантов параметров из базы данных (со стороны клиента);
· вычислительная часть программного продукта должна быть представлена в виде библиотеки;
· программный продукт должен предоставлять возможность выбора схемы решения (явная или неявная).
5. Аттестационное тестирование
- основная цель – убедиться, что система функционирует в условиях среды заказчика.


