Разделы портала

Онлайн-тренинги

.
Повышаем эффективность имеющихся тестов (с юмором)
02.04.2010 08:32

Оригинальная публикация: Dawn Haynes http://www.sqetraining.com/file/DawnHaynesArticle.pdf

Перевод: Лаборатория Качества.

Как сделать тестирование эффективнее и полезнее, почти не меняя действующую стратегию? За 10 лет я составила 10 эвристических правил «увеличения отдачи» от тестов с помощью разумных изменений в условиях, последовательности, данных или перспективе тестов во время их выполнения.

1. Déjà vu. В знакомом чистом режиме или изначальном режиме запуска выполните тест или сценарий. Затем сразу же повторите тот же самый тест с теми же данными, если это возможно, без очистки или перезагрузки между выполнением тестов. Так можно выявить проблемы, связанные со значениями по умолчанию или режимами, если в приложении изменяется результат или режим работы из-за хитрых переменных.

2. Вспеньте, смойте, повторите… и повторяйте, и повторяйте. Повторение часто воспроизводит реальную модель использования тестируемого приложения или софта. Большинство пользователей делает несколько циклов малого числа операций по много раз в день. Если не тестировать реалистичные модели использования, то во время производства можно обнаружить нежелательные сюрпризы (например, утечки памяти).

3. Путешествие по бездорожью. Не стоит всегда следовать указаниям, процедурам, инструкциям или очевидным путям - многие из ваших пользователей не станут этого делать. Одними из самых дорогостоящих дефектов, вышедших в релиз, которые я видел, были выявленные дефекты, но отклоненные как “учебная тревога” или не исправленные по причине “пользователь никогда не будет этого делать”. Даже если к вашему программному обеспечению обращаются только другие системы, рискованно предполагать, что другие системы будут всегда взаимодействовать с вашей по той же самой модели или четко по путям спецификаций или дизайна.

4. Я - гений. Используйте тактику эксперта или суперпользователя. Выбирайте кратчайшие пути, переходите из одного места в другое, пропускайте шаги, используйте интерфейсы командной строки, входите через черные ходы, растягивайте настройки, используйте неописанные средства или быстро работайте с интерфейсом. Как правило, системы и пользовательские интерфейсы проектируются для среднего пользователя. Найдите способы, чтобы “убыстрить” ваше использование.

5. "Вот это да!". Прогоняя очевидные, общие или критические сценарии, остановитесь, стукните себя по лбу (несильно, если у вас и без того частые головные боли), затем попробуйте вернуться и настроить что-нибудь, сделайте что-то, что забыли сделать, подредактируйте запись и т.д. По сути, прервитесь и затем измените что-либо, что вы сделали, с помощью опций вернуться, восстановить, переписать, отменить или изменить последовательность или режим использования. Если в вашем приложении есть UI и, в особенности, если это Web-UI, найдутся пользователи, которые проделают подобные фокусы в самый неподходящий момент.

6. Мыслите шире. А именно: подумайте о больших объемах данных. Ваше ПО за свою жизнь может столкнуться с большими базами или наборами данных, большими файлами, большими значениями в полях ввода, большими транзакциями и большими объемами транзакций. Выявление пределов и ограничений, с которыми можно рано или поздно встретиться в промышленной эксплуатации, чрезвычайно полезно при планировании и выполнении успешной программной реализации.

7. Собираем части. Системы часто конструируют и выстраивают по частям, затем эти части собирают определенным образом, чтобы они приносили пользу фирмам, пользователям или заказчикам. Насколько части сошлись, когда их собрали в целое? Подумайте о связях между частями, которые могли быть или, возможно, не были предусмотрены посредством дизайна или рабочего процесса.

8. Блендер: смешайте, потрясите, охладите, раздавите. Смешайте параметры, функциональности и сценарии использования в различных соотношениях (смешивайте аккуратно и хаотично – как Вашей душе угодно).

9. Меняйте пространственно-временной континуум. Работайте в системе то очень медленно (как неопытный пользователь, который вводит текст одним пальцем, Любопытный Джордж или воскресный водитель), то очень быстро (Быстрый Гонсалес). Каждый из них нагружает систему по-своему. Переключайтесь между быстрыми и медленными режимами. Прерывайте проверку, например, проведите “тест на кофе-брейк” - прервите работу по ходу, без сохранения или выхода из программы. Во время путешествия через червоточины между медленными и быстрыми вселенными при совершении скачков туда-обратно могут происходить интересные вещи.

10. Стихийные бедствия. Рассмотрите несколько сценариев использования, которые противоречат реализациям, функциональностям и "адекватной" работе. Проведите тест “туфля на клавиатуре”: поместите любую обувь (или руку, или чашку из-под кофе) на клавиатуру (предпочтительно на клавишу ENTER) и наблюдайте за происходящим. Конечно, такие проверки, как“разлить кофе на клавиатуру” и “выдёрнуть шнур питания”, могут оказаться более затратными, чем маленькие неожиданные происшествия. Выбирайте с умом.

Обсудить в форуме