В одной из твиттерных дискуссий Michael Bolton заметил, что тестировать, как точки зрения пользователя - это всего лишь часть тестирования, и предложил тестировать с точки зрения тестировщика.
Когда его спросили как это, он привел следующие 6 пунктов, которых я постараюсь адекватно перевести.

  1. Тестировщик активно принимает во внимание прогнозируемые риски, и готов обращать внимания на новые, доселе непредвиденные.
  2. При моделировании пользователей, рисков, покрытия, тестовых оракулов и т.п., тестировщик обычно предпочитает выражение "один из", выражению "конкретный", чтобы не модель не получилась чересчур ограниченной.
  3. Тестировщик практикует диаметральную смену методов (быстро/медленно, тщательно/бегло, поиск багов/знакомство с системой), чтобы диверсифицировать подходы.
  4. Тестировщик изучает технологии, чтобы понять их силу, слабость, известные проблемы и потенциальные уязвимости.
  5. Тестировщик чередует фокусирование на конкретной системе и её компонентах, дефокусированием  и изучением картины в целиком.
  6. Тестировщик чувствуют себя ответственными за моделирование элементов продукта и его связей с пользователями. Тестировщик ответственны за адекватную отчётность.

    А чувствуете ли вы разницу между тестированием как пользователь и как тестировщик?