Цитаты из книги Б. Бейзера “Тестирование черного ящика”
- Случайная корректность – случайное совпадение фактического результат с ожидаемым.
- Парадокс пестицида – падение эффективности тестов при повторном прогоне.
- Гипотеза компетентного программиста – считаем, что программист хорошо обучен, обладает надлежащими инструментами и компетентен.
- Три категории ошибок: ошибки модулей/компонентов, ошибки интеграции, системные ошибки.
- Поведенческое тестирование (тестирование черного ящика) занимает 35%-65% от общего времени тестирования.
- Блок-схемы и модели процесса ничего не значат, поскольку провал или успех процесса разработки ПО никоим образом не определяется моделью данного процесса. Культурные, этнические, прикладные и национальные особенности оказывают гораздо большее влияние на процесс, нежели грандиозные теории процессов.
- Составляющие любого эффективного процесса: дорожная карта процесса, управление процессов (механизм обмена данными между участниками), количественные измерения, контроль конфигурации, требования и прослеживаемость требований, критерии соответствия требованиям, стратегия развития, ответственность участников процесса, критерии завершенности и готовности, анализ, проектирование, проверка соответствия проекта, программирование, интеграция, тестирование.
- Графы и отношения. Всегда проверяйте транзитивность и нетранзитивность всех отношений из спецификации. Аналогично симметричность и рефлексивность.
- Пример симметричности. В меню проверяем всегда ли можно вернуться к предыдущему пункту.
- Рефлексивность – это возможность остаться в исходном состоянии.
- Проверка связей: тест на наличие всех связей, тест на отсутствие лишних связей. Если отношение симметрично, то убедиться, что каждая связь является двусторонней. Если отношение рефлексивно, то убедиться, что каждый узел связан сам с собой. Если отношение транзитивно, то убедиться, что для каждой тройки узлов выполняется транзитивность.
- Отдельное внимание тестированию циклов в графах.
- Тестирование потока управления.
- Негласное (и неудачное правило): входные параметры должны быть реалистичны.
- Циклы обязательно тестировать. Недетерминированные циклы – количество проходов цикла неизвестно до старта цикла.
- Типичное количество проходов: max, max+1, max-1, min, min – 1, 0, отрицательное количество.
- Тестирование потоков данных.
- Тестирование потоков транзакций.
- Тестирование доменов.
- Синтаксическое тестирование.
смотрите еще Цитаты из “Совершенный код” С. Макконнелла