понедельник, апреля 06, 2009

11 апреля: Онлайн-семинар “Основы функционального тестирования”

Постепенно перевожу свои семинары и тренинги в онлайновую форму. Настала очередь самой центральной темы во всём тестировании ПО – функционального тестирования.

11 апреля 2009 г. в 10:00 по московскому времени состоится открытый онлайн-семинар «Основы функционального тестирования программного обеспечения».

Формат: Онлайн-семинар, продолжительность 4 часа.
Семинар организует компания «Лаборатория тестирования».

Программа семинара:

  • Краткое введение в тестирование, чтобы договориться о терминах
  • Место функционального тестирования по сравнению с другими видами
  • Системное, интеграционное и модульное тестирование
  • Методы "чёрного ящика" и "прозрачного ящика"
  • Способы определения полноты тестирования
  • Техники функционального тестирования
    • Покрытие области входных данных
    • Тестирование на основе сценариев
    • Тестирование на основе вариантов использования
    • Тестирование на основе гипотез об ошибках
    • Стохастическое тестирование
    • Тестирование на основе рисков
    • Тестирование на основе моделей
    • Исследовательское тестирование
  • Как выбрать среди различных техник тестирования?
  • Комбинирование различных техник тестирования
  • Ручное и автоматизированное тестирование
  • Регрессионное тестирование
  • Работа с требованиями, тестами и дефектами

Подробнее об условиях участия в семинаре можно узнать здесь: http://www.software-testing.ru/events/610-functional-testing

пятница, апреля 03, 2009

Отчёт о конференции Agile Labs, 31 марта 2009 г.

Два дня назад, 31 марта, я посетил конференцию Agile Labs, организованную УЦ Люксофт при поддержке ГУ ВШЭ.

Изначально я был настроен скептически, потому что доклады про agile-методы уже примелькались, осенью было много сказано об этом на конференции SECR 2008, была специализированная мини-конференция AgileDays. В общем, я ждал повторения в докладах тех же уже порядком затёртых идей. Поэтому я планировал сходить послушать парочку докладов утром, а потом ещё прийти вечером на обещанную "битву гигантов: противники agile против сторонников, Панкратов против Уразбаева.

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

Открыл конференцию Асхат Уразбаев с докладом "Процессные заболевания и методы их лечения". Я думал, что это иносказательное название. Ничего подобного -- доклад был чисто медицинский! Мне всегда нравился организмический подход, поэтому я с большим удовольствием послушал Асхата.

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

А где там agile, спросите вы? Да в общем-то не было там ничего про agile. Ну так, разве что в качестве примера. Предложенные методы лечения довольно универсальны. И это самое замечательное!

Затем Слава Панкратов удивил своим докладом "Почему я не верю в Agile". Он нападал на гибкие методы гораздо слабее, чем я ожидал. Слава в основном упирал на два пункта:

  1. что делать, если проект большой или распределённый (включая возможное наличие субподрядчиков),
  2. что делать, если заказчик не работает по agile (либо не вовлекается, либо вовлекается, но начинает играть "против", гипертрофируя особенности agile -- например, меняет требования слишком часто).

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

Далее Александр Ермакович должен был выступить с рассказом про "Тестирование в agile-проектах". Но он с самого начала прямо заявил, что не является поклонником agile, занимает нейтральную позицию, и будет на самом деле говорить про тестирование вообще. Даже напротив, некоторые из его тезисов, на мой взгляд, совершенно не совместимы с agile. Как вам, например, такое утверждение: планирование тестирования должно быть независимым от планирования разработки, ну и само тестирование, понятное дело, тоже должно быть независимым. Боюсь, что это уже за гранью agile. Картинки в его презентации тоже были как будто срисованы с RUP-диаграмм -- артефакты, рабочие процессы, роли.

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

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

После обеда Максим Дорофеев сделал отличный доклад про "Agile в мире снобов". В качестве снобов выступали "жрецы" великого стандарта DO-178B, основного регламентирующего документа в области разработки встраиваемого ПО для авионики. Вот это было действительно про agile.

Максим продемонстрировал, что ум и смекалка позволяют справиться даже с такими снобами, причём играя по их правилам и на их поле. Снобы требуют, чтобы у вас был план проекта, а вам хочется сохранить гибкость? Нет проблем, пишем план, в котором в качестве работ указаны "Итерация 1", "Итерация 2", "Итерация 3" и так далее, а на вопрос, что является результатом каждой из этих итераций, отвечаем, что это будет "работающий продукт, но с не полностью реализованной функциональностью". Нужен план конфигурационного управления? Рисуем на бумажке или белой доске схему репозитория, правила обозначения версий и релизов, диаграмму процесса сборки, сканируем или фотографируем, на получившейся картинке проставляем нужные данные (кто и когда создал документ, кто и когда завизировал) и дело в шляпе. Ну и так далее, принцип ясен? Всё гениальное, как всегда, очень просто.

Следующий доклад, на котором Александр Кондаков рассказывал про то, как скрестить agile и CMMI, я практически полностью пропустил. Про это я с разными вариациями наслушался на прошедшей конференции SECR.

Доклад Сергея Архипенкова про "Антипаттерны командного поведения" опять не имел ни малейшего отношения к agile, но от этого он не стал менее интересен. Замечательное психологическое исследование, прекрасно дополняющее не менее замечательные книги того же автора, посвященные управлению проектами. Как книжки, так и презентацию доклада можно найти на сайте http://www.arkhipenkov.ru/. Даже писать много не буду -- качайте и читайте, оно стоит того.

Дальше все пошли играть в Lego. Под чутким руководством Алексея Кривицкого три команды по шесть человек строили игрушечный город -- домики, машинки, светофоры, деревья. Но строили не просто так, а в полном соответствии со Scrum'ом. Играли в Planning Poker, двигали жёлтые бумажки по белой доске, вели переговоры, в общем, всё как на самом деле. К сожалению, как это часто бывает с играми-симуляциями, отведённое время закончилось когда игра была в самом разгаре. Получаса явно не хватило, для полноценного результата надо было бы выделить часа полтора, чтобы можно было не только доиграть до конца, но и обсудить полученный опыт. Тем не менее, это было весело, ждите видео!

Ну и под занавес конференции состоялась широко разрекламированная "битва гигантов". Слава Панкратов обещал раскатать agile в блин и свернуть в трубочку, а Асхату Уразбаеву выпала честь защищать гибкие методы. Гиганты не удовлетворились единоборьем, каждая из сторон была удвоена -- на помощь Асхату вышел Алексей Кривицкий, а нападение было усилено Александром Александровым. В роли рефери выступил Сергей Мартыненко.

Увы, битвы не получилось. Бойцы покружили друг вокруг друга и разошлись без особых шрамов и повреждений. Со стороны нападения прозвучали главным образом все те же агрументы, которые Слава высказывал ещё утром и которые я уже перечислил выше. И даже несмотря на то, что Сергей явно подыгрывал нападающим, Асхат без труда отбил все нацеленные в agile удары. Точнее говоря, он вообще не стал их отбивать, а просто погасил, признав по всем пунктам, что agile иногда работает, а иногда нет. Что, в общем-то, и так практически всем ясно.

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

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

Ну а под конец Сергей (на мой взгляд совершенно напрасно) добавил ещё одну ложку дёгтя, решив напомнить всем, что собственно предмет спора весьма неопределён, никто не может внятно сформулировать, что же такое agile, где он начинается и где заканчивается. В результате вся дискуссия сразу стала ни о чём и сдулась. Гиганты издалека погрозили друг другу и разошлись.

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

Ждём следующую конференцию в серии -- в июне планируется проведение Training Labs.

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

четверг, апреля 02, 2009

Отчет о семинаре "Обзор бесплатных инструментов тестирования" 28 февраля 2009 г.

С некоторым опозданием решил написать отчёт о прошедшем 28 февраля семинаре "Обзор бесплатных инструментов тестирования".

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

Про участников

В семинаре приняли участие 11 человек, из них: 4 руководителя отдела тестирования или группы, 4 ведущих тестировщика, 2 разработчика, 1 руководитель проекта.

Про организационные моменты

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

Вывод: Надо спрессовать эту часть, не "разжевывать" материал. Во второй версии эта проблема была устранена (к чему это привело я напишу в следующем отчёте).

Суббота, 9 часов утра -- не самое лучшее время для семинара. Народ роптал, намекая, что 11 или даже 12 часов было бы куда лучше. С одной стороны, я вроде хотел сделать как лучше, чтобы хотя бы послеобеденну часть субботы сохранить людям для отдыха. Однако же 9 часов -- таки очень рано для многих...

Вывод: Онлайновый семинар надо начинать часов в 10, а оффлайновый лучше даже в 11. Чтобы все успели проснуться.

Кофе-брейки -- очень важный момент. Они должны быть -- и они были. На кофе-брейках должна быть еда, не только печенье, а что-нибудь достаточно сытное, типа бутербродов (они тоже были). Потому что некоторые утром явно не позавтракали. Участники в отзывах писали про кофе-брейки с такой теплотой, какой не было в комментариях по поводу самого семинара :)

В целом организация семинара вызвала у участников исключительно положительные эмоции (ну, кроме жалоб на то, что будить людей утром в субботу бесчеловечно):

"Задержка на час. Но это простительно, потому что было интересно!"

"Всё удобно, встретили на входе и проводили"

"Организация на высоте. Оч. приятно!"

Всей организацией занималась моя жена, за что ей огромное спасибо! :)

Про содержание тренинга

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

Это и хорошо, и плохо одновременно. Каждый участник приходит на семинар с каким-то бэкграундом и с какими-то своими ожиданиями и интересами. Один занимается веб-приложениями и тестирование десктопных приложений ему совершенно неинтересно. Другому наоборот. Тест-менеджерам возможно больше хотелось бы послушать про инструменты управления тестами, чем про инструменты для их разработки. В итоге каждый остаётся наполовину неудовлетворён:

"Было акцентировано внимание на Java и Web приложениях".

"Хотел ещё услышать о security и usability. Модульное тестирование преподносилось очень долго".

"О некоторых упомянутых инструментах было бы интересно услышать подробнее".

"Лично мне .NET инструменты были не очень интересны, не хватало баз данных и приёмочного тестирования. Но тема реально ОЧЕНЬ большая".

"Хотелось бы немного большего разнообразия инструментов Win".

Вывод: Нужно делать несколько более узкоспециализированных семинаров, дробить во-первых по технологическому признаку (unit-тестирование, веб-приложения, Java, Windows, Linux), а во-вторых инструменты поддержки процесса вынести отдельно.

Я заметил, что большинству слушателей интересны в первую очередь "утилиты", несложные инструменты, которые можно начать применять немедленно и которые дают мгновенную отдачу. Чёрт возьми, и мне самому тоже было бы интересно именно это!

Вывод: Нужно больше работать над тем, как "уравнять" более рутинные инструменты с "фановыми". Рутинные инструменты, если их начать внедрять в правильном порядке тоже могут дать быстрый эффект, надо научитьсяч показывать эти пути.

Ну и напоследок приведу усреднённые оценки по ряду параметров, данные участниками после семинара (по пятибалльной шкале):

1 Тренер
1.1 Компетентность тренера -- общее впечатление о том, насколько хорошо тренер знает то, что рассказывает, как тренер отвечает на вопросы, в том числе смежные с основной темой тренинга 4,77
1.2 Регламент -- насколько хорошо тренер контролирует время и управляет ходом событий 4,05
(я ожидал гораздо худшего, с учётом задержки на час)
1.3 Риторика -- текст (что тренер говорит) и речь (как тренер говорит) 4,82
2 Тренинг
2.1 Соответствие описания содержанию 4,27
2.2 Полнота раскрытия темы 4,27
2.3 Интересность 4,41
3 Общее
3.1 Организация тренинга 4,59
3.2 Оправдались ли ожидания от тренинга? 4,5
3.3 Общее впечатление 4,45

вторник, марта 17, 2009

28 марта: Онлайн-семинар "Обзор бесплатных инструментов тестирования"

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

Когда: 28 марта в 10:00

Формат: Онлайн-семинар с использованием платформы DimDim. Продолжительность 4 часа, из которых 3 часа будут посвящены живой демонстрации различных инструментов тестирования.

Подробности участия: Семинар проводит компания "Лаборатория тестирования". Стоимость участия в семинаре 1000 рублей. Оплата через банк.

Записаться на семинар и получить реквизиты для оплаты можно по адресу trainings@software-testing.ru

Программа семинара

В первой части семинара мы обсудим, что обычно имеется в виду под "инструментами тестирования" и постараемся ответить на следующие вопросы:

  • что входит в набор инструментов тестировщика;
  • инструменты поддержки процесса и инструменты решения задач;
  • инструменты группового и индивидуального пользования.

Во второй части семинара мы поговорим про платные и бесплатные инструменты, точнее говоря про дорогие платные, недорогие платные, условно бесплатные, бесплатные с закрытым кодом и бесплатные с открытым кодом. Вы узнаете:

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

Третья часть семинара будет посвящена рассмотрению конкретных примеров бесплатных инструментов:

  • модульное тестирование (семейство xUnit, TesNG);
  • функциональное тестирование веб-приложений (Selenium, Watir/Watij/WatiN);
  • функциональное тестирование Java-приложений (Jemmy, Marathon, Abbot);
  • функциональное тестирование Windows-приложений (AutoIt, Ranorex, TAFX);
  • тестирование производительности веб-приложений (httperf, JMeter, OpenSTA, grinder);
  • виртуальные машины для организации тестовой лаборатории (VirtualBox, VirtualPC, VMWare);
  • управление требованиями (Wiki, GatherSpace);
  • управление тестами (XStudio, TestLink, JSystem);
  • управление дефектами (Bugzilla, Mantis);
  • исследовательское (exploratory) тестирование;
  • "сопутствующие" инструменты.

понедельник, февраля 16, 2009

Конференция SQA Days 2009 -- ищем докладчиков

sqa5_logo 23-24 апреля 2009 г. в Санкт-Петербурге (Россия) пройдёт 5-я Международная конференция специалистов в области обеспечения качества, на которую приглашаются специалисты по тестированию и обеспечению качества программных систем, разработчики, аналитики и архитекторы систем, технические писатели, руководители среднего и высшего звена, а также другие заинтересованные лица.

Желающие выступить с докладом на конференции должны не позднее 15 марта подать заявку на участие и не позднее 20 марта предоставить на рассмотрение программного комитета тезисы своего доклада: 1-2 страницы печатного текста. Заявки необходимо отправлять на адрес org@it-conf.ru

Конференция посвящается вопросам, связанным с тестированием и обеспечением качества ПО:

  • функциональное тестирование;
  • интеграционное тестирование;
  • тестирование производительности;
  • автоматизация тестирования и инструментальные средства;
  • конфигурационное тестирование;
  • тестирование удобства использования (usability);
  • тестирование защищенности (security);
  • статические методы обеспечения качества;
  • внедрение процессов тестирования на предприятии;
  • управление процессами обеспечения качества ПО;
  • менеджмент команд тестировщиков и инженеров качества ПО;
  • аутсорсинг тестирования;
  • тестирование системных приложений (не Web), а также тестирования игр и мобильных приложений;
  • мотивация проектной команды и сертификация специалистов в области обеспечения качества ПО.
Формат участия:
  • Доклад - оригинальная работа, непосредственно связанная с тематикой конференции, представленная в форме выступления продолжительностью 30-40 минут (включая вопросы зала), сопровождаемая показом слайдов.
  • Флип - короткое (15 минут) выступление на тему, связанную с тематикой конференции или близкую ей, с использованием флип-чарта и фломастеров, либо устно, без использования специальных технических средств.
  • Круглый стол – обсуждение ключевых тем в составе экспертов.
  • Мастер-класс – обучающее мероприятие, проводимое экспертом в отрасли.
Форма и сроки подачи и рассмотрения заявок:
  • 15 марта - последний срок подачи заявок на участие в форме доклада, флип-чарта или мастер-класса;
  • 20 марта - последний срок подачи тезисов докладов;
  • 27 марта - последний срок предоставления докладчиками готовых к показу слайдов и текстов выступлений;
  • 04 апреля - срок рассмотрения заявок и формирования программы конференции.
Более подробную информацию можно получить на сайте конференции

пятница, февраля 06, 2009

28 февраля, Москва: Cеминар-обзор бесплатных инструментов тестирования

На правах рекламы себя :)

28 февраля в Москве я буду проводить открытый четырехчасовой семинар-обзор бесплатных инструментов тестирования программного обеспечения.

Сейчас очень многие компании заботит проблема сокращения расходов. Одним из вариантов сокращения расходов может стать использование бесплатных инструментов тестирования. Конечно, если у Вас уже куплены лицензии на инструменты с неограниченным сроком действия — тогда Вам никакой кризис не страшен :)  Но если Вы только собираетесь купить какой-нибудь инструмент или продлить срок действия лицензии, возможно, имеет смысл рассмотреть в качестве альтернативы использование бесплатных инструментов.

Место проведения: Институт системного программирования РАН, ул.Солженицына (ранее Б.Коммунистическая), 25.

Стоимость участия в семинаре 1000 рублей.

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

Записаться на семинар и получить реквизиты для оплаты можно по адресу trainings@software-testing.ru.

Программа семинара

В первой части семинара мы обсудим, что обычно имеется в виду под "инструментами тестирования" и постараемся ответить на следующие вопросы:

  • что входит в набор инструментов тестировщика;
  • инструменты поддержки процесса и инструменты решения задач;
  • инструменты группового и индивидуального пользования.

Во второй части семинара мы поговорим про платные и бесплатные инструменты, точнее говоря про дорогие платные, недорогие платные, условно бесплатные, бесплатные с закрытым кодом и бесплатные с открытым кодом. Вы узнаете:

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

Третья часть семинара будет посвящена рассмотрению конкретных примеров бесплатных инструментов:

  • модульное тестирование (семейство xUnit, TesNG);
  • функциональное тестирование веб-приложений (Selenium, Watir/Watij/WatiN, Fitness);
  • функциональное тестирование Java-приложений (Jemmy, Marathon, Abbot);
  • функциональное тестирование Windows-приложений (AutoIt, AppPerfect, Ranorex, TAFX);
  • тестирование производительности веб-приложений (httperf, JMeter, OpenSTA, WebLOAD, grinder);
  • виртуальные машины для организации тестовой лаборатории (VirtualBox, VirtualPC, VMWare);
  • управление требованиями (Wiki, GatherSpace, LightHOUSE);
  • управление тестами (XStudio, LightHOUSE, TestLink);
  • управление дефектами (Bugzilla, Mantis);
  • исследовательское (exploratory) тестирование;
  • "сопутствующие" инструменты.

четверг, января 22, 2009

Онлайн тренинг по тест-дизайну от Вячеслава Панкратова

Кросс-пост с Software-Testing.Ru

Вячеслав Панкратов предлагает всем принять участие в онлайн-тренинге по тест-дизайну.

Тематика: практический тренинг на выработку навыков проектирования тестовых сценариев.

Формат: онлайн-тренинг, Skype-конференция (нужны наушники с микрофоном и хороший интернет), смотрим небольшую опорную презентацию в Google Docs, разбираем 3-4 практических кейса, задаем вопросы, закрепляем и становимся умнее.

Время проведения: суббота, 31-ое января 2009 года, начало 11-00. После начала сеанса зрители в зал не допускаются.

Особенности: маленькая группа, максимум 6 человек. Мало теории, много практики. Около 3 часов времени. Если будет принято менее 3 заявок, деньги слушателям возвращаются, устанавлявается новая дата и открывается новая регистрация.

Стоимость: 50 долларов или 1500 рублей. Оплата через WebMoney или Яндекс.Деньги
Запись в группу по факту оплаты. Реквизиты для оплаты можно получить в почте: slava@pankratov.org.ua