
- •Основы тестирования программного обеспечения
- •1.1 История развития тестирования программного обеспечения
- •Основные определения в области тестирования программного обеспечения. Цели и задачи тестирования
- •Классификация тестирования
- •Классификация ошибок
- •Список вопросов для выявления ошибок в начале процесса тестирования
- •Практическое применение
- •C чего начать?
- •Тестирование приложения «Определение типа треугольника»
- •Тестирование приложения «Библиотека»
- •Пример требований к приложению «Библиотека»
- •Категории тестов
- •Создание тестовых примеров
- •3. Тестирование при разработке программного обеспечения
- •Модульное тестирование
- •Цели создания тестов
- •Разработка тестов с помощью jUnit
- •Требования к приложению «Библиотека».
- •Категории тестов
- •Создание тестовых примеров
Тестирование приложения «Определение типа треугольника»
Используем полученные знания и протестируем простейшую программу, входными данными которой являются три целых числа. Данные числа интерпретируются как длины сторон треугольника. Выходными данные – информация о том, является ли треугольник равнобедренным, равносторонним или неравносторонним.
Напомним, что треугольник может быть построен, если сумма двух его сторон больше третьей. В данном примере такой треугольник будем называть правильным.
Проанализировав возможные ошибки можно составить следующие тесты.
Тест, который представляет правильный неравносторонний треугольник? (Тесты, со значениями 1, 2, 3 и 2, 5, 10 неудачны, так как не существует треугольников, имеющих такие стороны.).
Тест, который представляет правильный равносторонний треугольник?
Тест, который представляет правильный равнобедренный треугольник? (Тесты со значениями 2, 2, 4 принимать в расчет не следует.)
Три теста, которые представляют правильные равнобедренные треугольники, полученные перестановкой двух равных сторон треугольника (например, 3, 3, 4; 3, 4, 3 и 4, 3, 3).
Тест, в котором длина одной из сторон треугольника принимает нулевое значение.
Тест, в котором длина одной из сторон треугольника принимает отрицательное значение.
Тест, включающий три положительных целых числа, сумма двух из которых равна третьему. (Другими словами, если программа выдала сообщение о том, что числа 1, 2, 3 представляют собой стороны неравностороннего треугольника, то такая программа содержит ошибку.).
Три теста с заданными значениями всех трех перестановок, в которых длина одной стороны равна сумме длин двух других сторон (например, 1, 2, 3; 1, 3, 2 и 3, 1, 2).
Тест из трех целых положительных чисел, таких, что сумма двух из них меньше третьего числа (т. е. 1, 2, 4 или 12, 15, 30)?
Три теста из категории 9, в которых испытываются все три перестановки (например, 1, 2, 4; 1, 4, 2 и 4, 1, 2).
Тест, в котором все стороны треугольника имеют длину, равную нулю (т. е. 0, 0, 0).
12.Тест, содержащий нецелые значения.
13.Описали ли вы заранее в каждом тесте не только входные значения, но и выходные данные метода?
Для простоты просмотра результатов тестов используют таблицу. В таблице содержится следующая информация.
– ID тестового примера. Уникальный идентификационный номер тестового примера.
– Входные данные. Последовательность входных данных, которая вводится тестером.
– Ожидаемые результаты. Поведение системы, которое тестер ожидает увидеть.
– Реальные результаты. Место, куда тестер будет записывать неожиданные результаты, или где он будет делать отметку о том, что тест был пройден.
Результаты тестирования показаны в таблице 2.1.
Таблица 2.1. Набор тестов для приложения «Определение типа треугольника»
ID тестового примера |
Входные данные |
Ожидаемые результаты |
Реальные результаты |
||||
1 сторона |
2 сторона |
3 сторона |
|
||||
Т1 |
3 |
7 |
6 |
Сообщение, о том, что треугольник с введенными сторонами является неравносторонним |
|
||
Т2 |
3 |
3 |
3 |
Сообщение, о том, что треугольник с введенными сторонами является равносторонним |
|
||
Т3 |
6 |
6 |
3 |
Сообщение, о том, что треугольник с введенными сторонами является равнобедренным |
|
||
Т4.1 |
3 |
3 |
4 |
Сообщение, о том, что треугольник с введенными сторонами является равнобедренным |
|
||
Т4.2 |
3 |
4 |
3 |
Сообщение, о том, что треугольник с введенными сторонами является равнобедренным |
|
||
Т4.3 |
4 |
3 |
3 |
Сообщение, о том, что треугольник с введенными сторонами является равнобедренным |
|
||
Т5 |
0 |
3 |
4 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т6 |
-1 |
3 |
5 |
Сообщение, о том, что треугольник с отрицательными сторонами не может быть построен |
|
||
Т7 |
1 |
2 |
3 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т8.1 |
1 |
3 |
2 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т8.2 |
2 |
1 |
3 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т8.3 |
3 |
2 |
1 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т9 |
1 |
2 |
4 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т10.1 |
4 |
2 |
1 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т10.2 |
1 |
4 |
2 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т10.3 |
4 |
1 |
2 |
Сообщение, о том, что треугольник с введенными сторонами не может быть построен |
|
||
Т11 |
0 |
0 |
0 |
Сообщение, о том, что треугольник с отрицательными сторонами не может быть построен |
|
||
Т12 |
4.6 |
2 |
3 |
Сообщение о том, что введено нецелое число |
|