2009/02/16

7 вещей, которые необходимо узнать перед началом автоматизации

1. Что такое автоматизированное тестирование?

У вас есть несколько новых релизов и исправленные баги работающем функционале. Итак, вам нужно быть уверенным, что новые фиксы не стали причиной каких-либо новых ошибок в предыдущем рабочем функционале.

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

Автоматизируйте тестовые сценарии, используемые в регрессионном тестировании.

2) Вы тестируете веб-приложение, которое могут использовать тысячи пользователей одновременно? Как вы будете тестировать такое веб-приложение? Как вы будете создавать такое количество пользователей и эмулировать их работу? Это очень сложная задача, если ее делать вручную.

Автоматизируйте нагрузочное тестирование по созданию виртуальных пользователей для проверки запаса производительности тестируемого приложения.

3) Вы тестируете приложение, в котором изменения в коде происходят очень часто. Интерефейс уже почти стабильный, но функционал изменяется постоянно.

Автоматизируйте тестирование, когда GUI уже практически стабилен, но происходит еще много функциональных изменений.

4) Для изучения процессов автоматизиции нужно время
У вас должны быть хорошие навыки программирования.
5) Инструменты автоматизации стоят довольно дорого.
Даже если вы используете опенсорсные инструменты - поддержка и написание тестов дорогое удовольствие.

6) Не автоматизируйте нестабильный функционал.

Зря потратите время.
7) Не пытайтесь покрыть приложение функциональными тестами на 100%


1 comment:

А.Б. said...

Странно, заявлено, что будет "10 вещей, которые необходимо узнать перед началом автоматизации", а тексте из тока 7 :)

Ну да ладно, суть не в этом...
1. Тема "Что такое автоматизированное тестирование?" - не раскрыта... На вопрос "что" обычно ждут конкретного ответа. По тексту это не ясно :)

2. Чтобы избежать двойственности смысла лучше написать, что виртуальные пользователи не "симулируют", а эмулировать (emulate) работу :)
Далее... Фраза "автоматизированное нагрузочное тестирование по созданию виртуальных пользователей" звучит очень уж не однозначно. Думаю лучше сказать: "Автоматизируйте нагрузочное тестирование с использованием виртуальных пользователей..."

3. Автоматизация тестирования в условиях частых изменений будь то GUI? будь то функционала в любом случае будет очень накладна!!!

4. Скажем так, для автоматизации нужны не только навыки, а также способности и умения.

5. Дорого, и если использовать их без навыков и умений, они станут еще дороже

6. см. пункт 3.

7. Не пытайтесь, т.к. все равно ничего не выйдет. Это противоречит первому закону тестирования "Нет продуктов без багов", а раз так, то и нет 100% покрытия тестами.

Спасибо за внимание.