Тестирование классов эквивалентности
Тестирование классов эквивалентности — это способ разработки тестов, при котором все возможные входные данные разбивают на группы с одинаковым ожидаемым поведением алгоритма. Из каждой группы выбирают один или несколько представителей, поэтому проверка становится короче, но сохраняет возможность обнаружить ошибки.
Метод применяют при тестировании алгоритмов. Сначала изучают условие задачи и выделяют ограничения, затем находят границы и особые случаи. После этого входы делят на допустимые классы, где данные корректны, и недопустимые, где нарушено хотя бы одно условие. Для каждого класса составляют тестовый пример. Особенно важны значения на границах классов и рядом с ними.
Пусть алгоритм принимает целое число \(x\) из диапазона \(10 \le x \le 99\). Можно выделить три класса: \(x < 10\) — недопустимые числа, \(10 \le x \le 99\) — допустимые двузначные числа, \(x > 99\) — недопустимые числа. Представители классов: 9, 50 и 100. Дополнительно полезно проверить границы 10 и 99, а также соседние значения 11 и 98.
При случайном тестировании значения выбирают случайно. При тестировании классов эквивалентности значения выбирают целенаправленно: они должны представлять разные правила обработки, прежде всего границы и недопустимые случаи.
Для условия \(0 \le x \le 100\) какое значение лучше всего представляет сынып \(x<0\)?
Главное
- Сынып эквивалентности объединяет входы с одинаковым ожидаемым поведением алгоритма.
- Нужно выделять допустимые и недопустимые классы, а также проверять границы и значения рядом с ними.
- Один представитель класса сокращает число тестов, но не заменяет отдельную проверку важных границ.