среда, 11 апреля 2012 г.

Сhapter 5: Owerview

Слово Канеру:

Часть 5: Автоматизированное тестирование
Обзор


Роботы которые делают ваш завтрак, летающие автомобили. Это все научная фантастика. Но программное обеспечение может делать все. Так почему бы не заставить программу тестировать программу? Если компьютер может выполнить работу трех миллионов математиков, использующих палки и песок, то, конечно, один компьютер стоит армии тестировщиков.

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

Ваши инвестиции в автоматизацию тестирования ценны настолько, насколько она помогает в достижении ваших целей. Какую информацию предоставляет автоматизация?

Автоматизация была невероятно успешна в некоторых группах, но оставила другие разочарованными. Некоторые из провалившихся групп вводили в заблуждение сами себя и свое руководство, думая, что усилия, которые они вкладывают в автоматизацию были полезными.
Используй автоматизацию, когда она помогает достичь целей тестирования. Оценивайте успешность автоматизации с точки зрения степени в которой она помогла в достижении ваших целей.

Рецензенты ранних черновиков этой главы отдельно призвали обратить внимание на следующие моменты:

Разрабатывайте тесты до того, как решить, какие из них стоит автоматизировать. Это позволит вам не попасть в ловушку автоматизации тестов, которые легко автоматизировать, но которые слабы в поиске дефектов.

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

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

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

Комментариев нет:

Отправить комментарий