Основные понятия

Основные принципы тестирования

Основные принципы тестирования

1. Исчерпывающее тестирование невозможно ни одним из тестировщиков.
Протестировать все возможные случаи и комбинации просто невозможно, конечно если это не тривиальный случай, так как это заняло бы очень много времени и в конце концов не стоило бы нам таких усилий.

2. Скопление багов. Если брать продукт и разбить его по модулям, то в процессе тестирования можно заметить что основная часть багов лежит в одном или нескольких модулях продукта, следовательно можно отметить эффект скопления багов.

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


3. Эффективность раннего тестирования. Очень важно чтобы тестирование начиналось как можно раньше, и предугадывались возможные ошибки, которые может совершить разработчик. Чем раньше найдутся баги, тем дешевле их исправить.

Перед тем как разрабатывать и тестировать тот или иной продукт, следует выяснить всю специфику, возможные конфликты в спецификации, невозможность новой фичи взаимодействовать с другим модулем, убедиться что тестировщик, разработчик и product owner одинаково правильно понимают, как это будет реализовано.

 4. Парадокс пестицида. Если написав тест кейсы, прогонять их много раз, то в конечном счете эти кейсы не помогут нам найти новые баги.

Поэтому существует практика в тестировании, когда пересматривают и модернизируют тест кейсы, чтобы найти какие-то новые баги. Тест кейсы могут усложняться, быть разносторонними так чтобы охватить все компоненты, модули нашего продукта, что в свою очередь поможет нам найти больше интересных и новых багов.

5. Тестирование зависит от нашего продукта. Существует много программ, продуктов и к каждой из них следует подходить индивидуально в плане тестирования.

В каких-то больше усилий в тестировании нужно на безопасность, в каких-то на юзабилити. Поэтому не стоит грести все продукты под одну гребенку и тестировать по какому-то одному шаблону.


6. Тестирование показывает наличие багов в продукте но ни как не их отсутствие.

Тестирование лишь снижает вероятность наличия багов в продукте. В процессе тестирования много багов может быть пропущено и это не будет означать, что если продукт прошел тестирование, то сейчас этот продукт на 100% работает корректно.


7. Если эта фича не соответствует ожиданиям пользователя и его потребностям, то какой бы качественный наш продукт не был — это уже не так важно.

Иногда тестрируя и выискивая функциональные баги, мы забываем посмотреть с другой стороны и спросить, а нужно ли это пользователю.

Если эта фича не соответствует ожиданиям пользователя и его потребностям, то какой бы качественный наш продукт не был — это уже не так важно.

© 2021 QAstart.by