Shiny metal hammers » Blog Archive » Роботы и тестирование
Shiny metal hammers
Дикие разработчики съели ручного тестировщика!
Роботы и тестирование
Когда-то очень давно я слышал или читал историю про неудачную попытку внедрения роботов на каком-то предприятии. Производство было очень вредным, и людей решили заменить роботами. Построили автоматическую линию, подключили, запустили… И роботы стали ломаться. Постоянно. Выяснение обстоятельств показало, что виной всему были те самые сложные условия труда. В общем, по моему мнению, из этой истории можно сделать два вывода:
бездумная автоматизация бесплезна
иногда проще и эффективнее всё-таки заплатить людям.
Почему-то именно эта история возникает у меня в памяти, когда на разных форумах тестировщиков появляется очередной страдалец, которому поставили задачу “автоматизировать тестирование”. Никаких целей, никакого направления, просто “ну это, в общем, вот программка, посмотри тут, надо автоматизировать”. И страдалец, разумеется, бросается искать инструмент. А еще инструкцию к инструменту, желательно на русском языке.
Вообще говоря, такая картина часто бывает замечана в компаниях, которые какое-то время занимаются разработкой, но только начинают тестировать. И чаще всего они не понимают, зачем им тестирование и как оно проводится. Просто “надо потестировать”. Разработчики, как правило, вообще любители автоматизации во всех проявлениях (и это хорошо), поэтому, увидев в сети статью про очередное волшебное средство записи-воспроизведения действий, тотчас начинают грезить о том, как всё будет тестироваться само собой.
На самом же деле, даже элементарные обывательские соображения показывают, что это только грёзы. Не берусь делать точные подсчеты, но примерная картина такая. Для начала нужен тестировщик, или хотя бы кто-то, кто будет так называться. У разработчиков обычно достаточно работы, так что до тестирования у них руки не дойдут. Им бы хоть на модульное тестирование время найти. Если мы видим вышеописанную постановку задачи, значит тестировщика наняли неопытного, но смелого. Одно рабочее место. Дальше он “выбирает инструмент”, параллельно пытаясь понять, а что же вообще делать нужно. Это, предположим, 1-2 человеко-месяца, в течение которых тестирования еще нет.
Потом приобретается инструмент. Цены на типовые инструменты тестирования начинаются с нескольких тысяч условных единиц. Это как если еще несколько человеко-месяцев оплатить. Уже набирается примерно на полгода. В каких-то случаях инструмент не покупают: существуют бесплатные или “найденные” продукты. В первом случае ситуация немного улучшается с точки зрения начальных затрат (но без учета стоимости поддержки), во втором появляется дополнительный (и достаточно дорогой) риск “потерять” инструмент.
Если в разработке используются “нестандартные” компоненты, инструмент “из коробки” с таким приложением работать не будет или будет, но плохо. Нужно “заточить” приложение под инструмент. Это будет… ну, предположим, месяц работы разработчика.
Добавляем сюда время, необходимоесмелому тестировщику на то, чтобы записать какое-то количество скриптов и сделать из них что-то, что может работать как тест. Всё это время, напомню, тестирования как такового еще нет.
Что получилось? Один человек, несколько месяцев работы, дополнительно несколько месяцев работы (в денежном выражении). И никакого тестирования. И это еще без учета поддержки всех этих скриптов в будущем.
Практика показывает, что два человека, даже если они совсем новички, за несколько месяцев вытрясут из продукта столько проблем, что следующие полгода могут заниматься только проверкой исправлений, или ехать отдыхать в Нидерланды.
Вывод из всего этого можно сделать следующий. Автоматизация - процесс дорогостоящий, рискованный и далеко не всегда нужный. Кроме того, как показывает опыт многих практиков, автоматизация никогда не покрывает 100% нужд тестирования. Поэтому заниматься ей нужно тогда и только тогда, когда уже есть стабильно работающий процесс обычного (ручного, полуавтоматического) тестирования, когда есть четкая цель (ответ на вечный вопрос “А зачем?”) и свободные ресурсы. С другой стороны, это хорошая возможность для начинающего тестировщика побыть внутри процесса разработки, разобраться в нем, освоить бюджет, выделенный на автоматизацию, и двигаться дальше.
About this entry
You’re currently reading “Роботы и тестирование,” an entry on Shiny metal hammers
Published:
02.11.07 / 6pm
Category:
Тестирование
1 Comment
Jump to comment form | comments rss [?] | trackback uri [?]
Denis Vasiliev
06.11.07 / 8am
Ага. У нас этот вопрос уже в третий раз поднялся.
Я примерно это и рассказал человеку.
Have your say
XHTML: You can use these tags:
Name
Email
Website
Safari hates me
Notify me of followup comments via e-mail
About
Здесь должно быть описание, зачем, почему, как, но его пока нет. Зато есть ответ на главный вопрос жизни, вселенной и всего такого. 42.
Recently
22.01 Microsoft Live исправился
20.11 Побеждаем инсталяцию Mac OSX Server Leopard
15.11 Таинственный LiveJournal
15.11 Тестируем кросспостинг в дневничок
02.11 Роботы и тестирование
01.11 Всем привет
Categories
Интерфейсы (1)
Разное (4)
Тестирование (2)
Powered by Hemingway flavored Wordpress.
Entries RSS Comments RSS
5440.16 ()
dvd-box
dvd-box
hansa
telecomfm gsmphone
nokia 6021
ielts
ziplock