Verifyability (Проверяемость)¶
Проверяемость (verifiability) еще называют тестируемостью, и она показывает легкость, с которой программные компоненты или интегрированный продукт можно проверить на предмет реализации функций системы так, как ожидалось. Проектирование с расчетом на проверяемость критически важно для продукта, в котором используются сложные алгоритмы и логика или имеются тонкие функциональные взаимосвязи. Тестируемость также важна в том случае, если продукт необходимо часто модифицировать, поскольку предполагается подвергать его частому регрессивному тестированию, что- бы выяснить, не ухудшают ли внесенные изменения существующую функциональность.
Примеры
- VER-1. Конфигурация среды разработки должна быть идентичной конфи- гурации среды тестирования, чтобы предотвратить невоспроизводимость дефектов, выявляемых в тесте.
- VER-2. У тестировщика должна быть возможность конфигурировать, ка- кие результаты будут записываться во время тестирования.
- VER-3. У разработчика должна быть возможность настраивать вычис- лительный модуль на отображение промежуточных результатов любой за- данной группы алгоритмов для целей отладки.
- VER-4. Максимальная цикломатическая сложность модуля не должна превышать 20.
Вопросы
- Как можно подтвердить, что определенные вычисления дают ожидаемые результаты?
- Есть ли какие-то части системы, не обеспечивающие детерминированных результатов, из-за чего сложно определить, правильно ли они работают?
- Возможно ли создать набор тестовых данных, которые с высокой вероятностью позволять выявить какие-либо ошибки в требованиях или их реализации?
- Какие стандартные отчеты или другие результаты можно использовать для проверки того, что система возвращает правильные результаты?