вторник, 22 ноября 2011 г.

Баг без палева=)

Bug xxxx - Рисунки с сайта вконтакте.ру не сохраняются.


Описание: Вставленные по URL рисунки с сайта vkontakte.ru не сохраняются после сохранения, а затем повторного открытия презентации.

понедельник, 7 ноября 2011 г.

Шаблон цикла в Selenium IDE


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

Поскольку тестирую я в основном web, а мозг у меня любознательный, а программисты неразговорчивые, то у меня возникает желание проверить "а сколько тут может быть комментариев?", "а сколько календарей доступно для добавления пользователем?". Для удовлетворения своего любопытства я решил использовать плагин для Firefox под названием Silenium IDE (спасибо Нижегородскуму Клубу Тестировщиков и Стасу Косареву за то что рассказали об этом интрументе)
Так, перейдем к делу. Для реализации поставленной задачи нам понадобятся:
  • Firefox
  • Selenium IDE 1.3 собственно для создания сценария
  • Flow Control - это плагин позволяющий создавать переменные и циклы
  • FireBug - это плагин позволяющий вытаскивать ID элементов
Давайте напишем цикл на добавление комментариев в этом замечательном блоггере.
Для этого ставим всё вышеперечисленное, далее открываем Firefox=>Инструменты=>Selenium IDE. Видим, что открылось окошечко (в подробности вдаваться не буду, если есть любознательный мозг - он подскажет где что почитать).
цикл выглядит следующим образом:


Теперь по строкам:
1. Задаем переменную с изначальным значением 1 и назовем её "а"
2. Ставим условие, что а меньше или равно 5
3. Пишем в поле значение переменной, чтобы если что видеть на каком значении отвалился тест id выцепляем с помощью FireBug(правая кнопка=>анализировать элемент=>смотрим в строке строчку id='имя'). Ещё для простоты можно использовать запись кликов, про нее подробнее в последней ссылке статьи показывается.
4. Кликаем на кнопке "отправить комментарий" и ждем обновления страницы
5. Прибавляем к значению переменной а единицу
6. Конец цикла. Тут для красоты можно alert приписать

Соответственно изменяя условие из строки 2 и тело из строк 3-4 можно этот цикл использовать почти везде, например в тестовом сообщении.

Сразу же предупреждаю о граблях:

  • Помните, что на то куда вы ставите этот цикл могут быть подписаны люди(я подписан на комменты к блогу, не надо условием ставить несколько тысяч на ночь;) ) и тогда их почта засориться.
  • Помните, что это случай когда ломать сложнее чем строить. У меня случалось когда после того как создалось много всего у каждого элемента свой id и их генерация логики не поддавалась - пришлось заново портал создавать.
Ну и под конец полезные ссылки:
Алексей Лупан - блог про Selenium IDE
мое выступление в Нижегородском Клубе Тестировщиков
p.s. то что картинка вылезает за поля - это бага и некрасиво, но иначе будет текст скомкан. поэтому вот так вот пусть будет.

АПД.
во второй строке вместо "javascript{storedVars['a']}" можно написать просто ${a}
и в строке наращивания storeEval // ${a}+1 // a
за корректировку спасибо Илье Кожухову aka ra007



тестовое сообщение

тут можете попробовать, надеюсь, что мой блог не заблочат за это=)

среда, 2 ноября 2011 г.

мотивация джуниоров


    Слава нам рассказывает про ценность ведущего разработчика или инженера, я же зо своей колокольни хочу поразмышлять на тему важности и ценности джуниоров (а то сейчас после статьи Славы все бросятся с ведущими разговаривать, а про нас забудут=()
    Так вот, нанимать джуниор тестеровщика можно с 2 целями:
1. Чтобы он был мартышкой, которая кликает по кнопкам, но мы этот вариант рассматривать не будем, потому что студентов много и тут люди легко заменяемы.
2. Вырастить хорошего специалиста, найти "волшебника тестирования"(с) или "тестировщика от Бога"(с) - вот именно об этой группе я и хочу поразмышлять. 
    Конечно, на мой взгляд, лояльность у людей из этой группы зашкаливает, но "в сказки о вечной любви мы уже не верим"(с) и всё меняется и то что для человека было вчера "вау, как круто" через пол года уже обыденность и рутина. Так чем же лучше мотивировать джуниоров?(дальше будет конечно же полная проекция с меня):
  • в первую очередь интересными задачами. Ничто не мотивирует так как что-то новое. А если ещё и показать как новую задачу можно решить новой тулзовиной, то тут можно потерять человека на 2 суток, но он эту тулзовину изучит вдоль и поперек и припилет ещё свистелок и перделок=)
  • знаниями. Немного перекликается с предыдущим пунктом, но тут просто надо давать интересные статьи, рассылки, которые будут полезны. разбирать какие-то кейсы, советовать вебинары. В идеале, конечно, ещё и на конференцию свозить
  • "улыбкой и добрым словом."  Не забывайте хвалить, каждое хорошее слово повышает эффективность.
  • говорите с людьми. Да, студенты тоже люди и у них тоже могут быть проблемы, а ещё они не всё понимают в этой жизни и если именно вы объясните им то что они не понимают - вы получите авторитет, а для менеджера/лида это самое главное. Так же у человека может завтра мегаважный экзамен, а ему упадет мегаважная задача - тогда он и экзамен завалит(и будет потом 3 дня уныло ходить или тово хуже с похмелья) и задачу не сделает(ибо будет разрываться и тайком читать лекции или писать шпоры).
  • соревнования. Устройте соревнование среди тестировщиков, даже можно внутри пары, даже если они разного уровня, они потом сядут и обсудят что и как смотрели и будет то же обучение и деление знаниями и будет азарт в поиске багов.
  • деньгами. Да, это не лучший мотиватор и не долго работает, но просто не надо забывать, что человеку, особенно студентам, всегда хочется чего-то большего, а есть люди из разряда "без разницы где лишь бы платили побольше".
А если забыть про джуниора - то ему станет скучно и он начнет искать и найдет, благо отрасль не насыщенна, а время и деньги потраченные на человека уже не вернуть, да и предотвратить уход гораздо сложнее чем предупредить. Разве нам всем многого надо?;)

тестирование - это искусство.

На мой взгляд тема данного топика - аксиома, и я не понимаю людей, которые пытаются загнать тестировщиков в какие-то рамки. Представьте, например, если бы Леонардо да Винчи рисовал Мона Лизу только с 10 до 18, интересно что бы тогда получилось...

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

Тем не менее в тестировании применяется много разных методик и ту же Мона Лизу разные тестировщики нарисовали бы по разному(далее идёт исключительно субъективное мнение):
(первые 3 пункта кликабельны)
  • Наташа Руколь, мне кажется, рисовала бы Мона Лизу, вкладывая в неё всю душу, но с большими перерывами и под настроение, иногда отвлекаясь на другие шедевры.
  • Слава Панкратов и Саша Орлов нарисовали бы Мона Лизу, а потом научили бы всех остальных интересным трюкам, встретившимся подводным камням и многим интересным и забавным вещам с которыми они столкнулись во время написания картины.

Надеюсь никого не обидел, а только улыбнул. К вышеназванным людям питаю огромнейшую симпатию.

Творите и не давайте загнать вас в рамки.

вторник, 1 ноября 2011 г.

на работу как на праздник? да, черт возьми! это возможно

Когда вы последний раз шли на работу как на праздник? Помните ли вы то состояние или те факторы, которые необходимы для этого?

У меня в памяти всё это свежо и хочется поделиться.
В тестирование я попал совсем недавно и более чем случайно, но сейчас речь не об этом. Мир тестирования был и есть для меня нов, интересен, разнообразен. Когда я пришел я не знал ничего про организацию, кроме того, что там вкусно кормят=)(это первый фактор, но далеко не самый главный), на собеседовании меня спрашивали как бы я протестировал ручку и хочу ли я быть похожем на Доктора Хауса, а ещё задали вопрос, который я наверно никогда не забуду:"ты всегда такой жизнерадостный?"(сейчас я могу сказать, что нет, не всегда, Стас), но уже тогда я понял, что в этой команде я хочу работать(второй фактор). Потом было тестовое задание, успешно пройденное и устройство на работу. Молодой, дружелюбный коллектив во главе с таким же молодым и не менее дружелюбным ментором(именно ментором, а не начальником. он делал всё так, что я сам доходил до всего вплоть до того, что я сам себе ставил задачи, сам их выполнял и сам ставил оценку относительно того как я их выполняю - это третий фактор, на мой взгляд самый главный). Со временем были прочитаны книги, статьи, прослушаны тренинги, просмотрены вебинары, работа должна зацепить! К середине воскресенья я уже хотел на работу чтобы научиться чему-то новому, найти новые баги, сделать этот мир лучше!:)

Резюмируя в порядке приоритетности:

  1. Работать надо с удовольствием, как сказал Алексей Баранцев в интервью:"У тестировщиков во все времена было одно качество, которое их выделяло среди всех остальных людей, которое не меняется – это любопытство и жажда что-то узнать."
  2. Должен быть хороший наставник с которым можно обсуждать не только рабочие моменты.(мне он просто необходим)
  3. Нельзя хорошо работать или думать на пустой желудок=)