суббота, декабря 12, 2009

Кто платит за разработку бесплатных инструментов

В четверг (17 декабря) я проведу два семинара посвященные бесплатным и недорогим инструментам тестирования.

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

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

С читателями блога я решил тоже поделиться этой записью: http://software-testing.ru/files/webinar_free_tools_intro/Webinar_090415_part2.wmv

четверг, декабря 10, 2009

Тренинги по тестированию ПО в Минске

Мои минские коллеги пригласили меня прочитать три открытых тренинга в Минске.

Я принял предложение, таким образом с 17 по 19 января 2010 года я планирую прочитать в Минске три тренинга.

Вся дополнительная информация по ссылкам.

17 января, Минск, тренинг "Тестирование методом свободного поиска (exploratory testing)"

18 января, Минск, тренинг "Автоматизация функционального тестирования веб-приложений: Selenium + Selenium RC"

19 января, Минск, семинар "Обзор бесплатных инструментов тестирования"

пятница, декабря 04, 2009

Онлайн-семинары про бесплатные и недорогие инструменты тестирования

Весной этого года я проводил Онлайн семинар-обзор бесплатных инструментов тестирования .

Тема была настолько востребована, что пришлось повторить семинар несколько раз.

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

· 17.12.2009 | 13.00 15. Бесплатные и недорогие инструменты функционального тестирования

· 17.12.2009 | 16.00 16. Бесплатные и недорогие инструменты нефункционального тестирования

понедельник, ноября 30, 2009

SPMGuild: бесплатный вебинар по Lean, 4 декабря

4-го декабря с 13:00 до 14:30 (по московскому времени) под эгидой “Гильдии менеджеров программных проектов”, aka SPMGuild, пройдёт бесплатный вебинар с коротким и ёмким названием “Lean”.

Выступать будет Сурен Самарчян, руководитель  департамента управления проектами компании Innova Systems.

Записаться можно тут: https://www2.gotomeeting.com/register/176042747 .

Ниже -- официальный анонс.

Гильдия менеджеров программных проектов (www.spmguild.org) приглашает Вас 4-ого декабря в 13:00 принять участие в вебинаре на тему «Лин» - подходу к организации  работы, используемому такими компаниями как Toyota, Boeing, Intel и другими мировыми лидерами в своих отраслях. В России на Лин недавно начали переходить такие гиганты как «Сухой», «Камаз», «Сбербанк» и другие. Более того, эти компании не просто используют данный подход, а считают его одним из нескольких ключевых элементов своей стратегии. В софтверной индустрии Лин подходы используют Google, Nokia, Yahoo, British Telecom, IBM, Microsoft и многие другие.

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

1. Основные принципы Лин

2. Какие компании используют Лин и какие результаты были получены

3. Стандартные классы потерь

4. Канбан

5. Картирование потока добавления ценности для пользователя

6. Переработки, вариабельность и их влияние на скорость выпуска продуктов

7. Лин для разработки инновационных продуктов

8. С чего начать при внедрении Лин

Это первый из серии вебинаров, которые подготавливаются для вас Гильдией менеджеров программных  проектов. Темы вебинаров были выбраны на основе анализа наиболее частых причин неудач менеджеров и директоров софтверных компаний. Ждем Ваших пожеланий и комментариев по выбору тем вебинаров.

понедельник, ноября 23, 2009

Подробная программа тренинга "Программирование для тестировщиков"

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

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

Подробная программа тренинга "Программирование для тестировщиков"

1. Основы программирования: структуризация кода.

Мы не станем пытаться брать крепость программирования "лобовой атакой", последовательно изучая типы данных, операторы и конструкции языка. Вместо этого мы зайдём "с тыла", начав понимание основ программирования с изучения тех тестов, которые генерируются инструментами catch-n-replay. Это может показаться странным, потому что я часто повторяю, что эти инструменты создают плохие тесты, и вдруг я выбрал их как пример для изучения. Да, именно по этой причине и выбрал. Эти тесты слишком примитивны, чтобы быть пригодными к использованию в реальной жизни, но как учебные примеры они достаточно хороши -- они крайне просты по своему устройству, но несмотря на это являются готовыми к выполнению тестами. Кроме того, эти тесты уже используют специальный фреймворк для запуска тестов, который нам также предстоит освоить в рамках тренинга.
Сначала мы изучим возможности языка Java по структуризации кода -- пакеты и классы, методы и данные, а также посмотрим на то, как среда разработки позволяет манипулировать этой структурой кода. Затем поговорим о том, как тестовый фреймворк накладывает на код дополнительную структуру, выделяя специальные методы для работы с тестовым окружением, которые в нужный момент автоматически выполняются, чтобы выполнить инициализацию и зачистку.

2. Основы программирования: управление потоком выполнения кода.

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

3. Работа с контейнерами, предназначенными для хранения наборов данных: множествами, списками, ассоциативными массивами.

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

4. Работа со строками -- анализ строк, проверка соответствия образцу, регулярные выражения.

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

5. Автоматизация управления веб-приложением через браузер.

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

6. Автоматизация Java GUI.

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

7. Работа с файлами -- чтение и запись данных из файла и в файл, анализ содержимого директорий.

Многие приложения читают или пишут файлы. В конфигурационных файлах хранятся различные настройки. В файлы журнализации сбрасываются сообщения об ошибках и иная служебная информация. Файлами приложения обмениваются между собой, передавая таким образом информацию. В файлы записывается информация с целью её хранения и использования впоследствии. И конечно же при тестировании нужно создавать файлы, которые приложение читает, а также проверять корректность содержимого файлов, созданных приложением.
Нам нужно научиться читать и писать файлы различного формата. Для работы с содержимым текстовых файлов нам пригодятся изученные ранее приёмы работы со строками. Для работы с более сложными форматами (MS Office, PDF, ZIP и т.д.) существуют специальные библиотеки, которыми мы тоже научимся пользоваться.

8. Работа с базами данных.

Подавляющее большинство многопользовательских приложений (к которым относятся и веб-приложения), а также многие однопользовательские приложения, используют базы данных для хранения информации. Когда пользователь вводит какую-то информацию через интерфейс приложения, она после некоторой обработки попадает в базу данных и хранится там до тех пор, пока она не потребуется для работы того же самого или или какого-то иного приложения. При тестировании часто бывает удобно проверить, правильно ли сохранилась информация в базе данных. Поэтому многие тестировщики, даже не умея программировать, достаточно хорошо владеют языком запросов к базе данных SQL.
Сначала мы научимся пользоваться технологией доступа к базам данных JDBC, которая позволяет выполнять привычные SQL-запросы и анализировать полученный ответ как таблицу. Затем мы освоим более современную технологию объектно-реляционных преобразований Java Persistence, позволяющую практически полностью забыть про язык запросов SQL, а вместо него использовать более высокоуровневый и не зависящий от конкретной базы данных язык запросов. Наконец, мы научимся пользоваться инструментами, которые позволяют сохранять и сравнивать снимки (снапшоты) базы данных.

9. Работа с почтой -- сервер James и клиент Java Mail.

10. Сетевое программирование -- HTTP, FTP и другие протоколы прикладного уровня.

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

вторник, ноября 03, 2009

Онлайн-тренинг "Программирование для тестировщиков"

Бытует мнение, что тестировщикам вредно уметь программировать. Якобы это умение мешает им потому, что из-за него они слишком много думают о реализации программы и слишком мало о том, как же её протестировать.
Определённый смысл в этом есть, возможно для кого-то умение программировать действительно служит отвлекающим фактором. Но если вы умеете бороться с искушениями, тогда этот навык может оказаться весьма полезным, потому что он даёт возможность переложить часть своей работы на компьютер.
Да, имеется в виду автоматизацию тестирования. Но под автоматизацией подразумевается не только написание скриптов, которые эмулируют взаимодействие пользователя с графическим интерфейсом программы. Помимо этих скриптов можно автоматизировать генерацию тестовых данных, проверку содержимого базы данных, развёртывание и настройку тестового окружения, проверку отсутствия сообщения об ошибках в лог-файлах, генерацию отчётов, и многое-многое другое.
Сложно ли научиться программировать? Вероятно, бывают люди, для которых алгоритмический стиль мышления абсолютно неприемлем. Но большинство айтишников по крайней мере на интуитивном уровне уже обладают алгоритмическим мышлением. Многие тест-дизайнеры пишут весьма подробные инструкции для ручного тестирования, это почти готовые программы, но предназначенные для "биороботов". Осталось сделать один небольшой шаг и научиться управлять настоящими роботами-компьютерами.
Разучитесь ли вы тестировать, научившись программировать? Вовсе нет, существующие навыки тестировщика от вас никуда не денутся. Но в дополнение к ним в ваших руках появится ещё один инструмент, и весьма мощный. Разумеется, владение навыками программирования не означает, что их нужно применять здесь и там без разбора, стремясь автоматизировать всё подряд. Силу нужно держать под контролем и применять её лишь там, где её применение обосновано. Для этого нужно хорошо овладеть силой, чтобы она подчинялась вам, чтобы это был привычный инструмент с понятными принципами работы, а не магический артефакт, управляемый загадочными заклинаниями.

Ну что ж, довольно слов, пора перейти к делу.

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

Программа курса

В этом курсе мы будем учиться программировать на языке Java.

Первые два занятия посвящены основам программирования. Вы учили это в школе и вузе, но если всё благополучно забылось, придётся вспомнить.
1.2. Основы программирования.
На остальных занятиях будет рассмотрен ряд задач, с которыми часто приходится сталкиваться тестировщикам в реальной жизни, и будет рассказано, как средствами программирования эти задачи решаются. Мы не станем углубляться в изучение различий между парадигмами программирования и в тонкости использования тех или иных конструкций. Всё это придёт потом. А пока мы просто научимся решать конкретные практические задачи.
3. Работа со строками -- анализ строк, проверка соответствия образцу, регулярные выражения.
4. Работа с контейнерами, предназначенными для хранения наборов данных: множествами, списками, ассоциативными массивами.
5. Работа с файлами -- чтение и запись данных из файла и в файл, анализ содержимого директорий.
6. Автоматизация браузера с использованием инструментов Selenium и WebDriver.
7. Автоматизация Java GUI с использованием Jemmy.
8. Работа с базами данных -- JDBC и Java Persistence.
9. Работа с почтой -- сервер James и клиент Java Mail.
10. Сетевое программирование -- HTTP, FTP и другие протоколы прикладного уровня.

Формат курса

Онлайн-тренинг продолжительностью примерно два с половиной месяца (10 занятий), с еженедельными онлайн-занятиями и практическими домашними заданиями.
Онлайн-занятия состоятся каждый четверг, начиная с 3 декабря с 19.00 до 20.30 за исключением 31 декабря и 7 января :-).

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

В случае, если Вы пропустите какое-либо занятие, Вы получите его запись и домашнее задание.

Технические требования

Все семинары будут организованы с использованием системы DimDim (http://www.dimdim.com).

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

Для участия Вам не нужно устанавливать никакого специального программного обеспечения, требуется только браузер c плагином Adobe Flash Player и достаточно быстрое Интернет-соединение.
Проверить пропускную способность своего соединения можно здесь: http://www.dimdim.com/support/dimdim_tools.html (слева инструмент Bandwidth Checker).
Необходимы наушники или другая акустическая система, чтобы слушать ведущего. Микрофон не требуется, вопросы можно будет задавать письменно в чате.
В случае возможных технических сбоев с ведущим можно будет связаться через систему Skype.

Узнать условия участия: http://www.software-testing.ru/events/834-programming-for-testers

среда, сентября 30, 2009

Обзор анкет слушателей вебинаров серии "Онлайн-семинары по четвергам"

Прошло уже больше половины вебинаров серии «Онлайн-семинары по четвергам», пора подвести некоторые итоги. Как обычно, положительные отзывы просто процитирую, а отрицательные будут представлены в виде анализа с оргвыводами. Надеюсь, что это окажется полезно не только мне, но также тем, кто сам проводит какие-либо онлайн-мероприятия (семинары, презентации, демонстрация продуктов заказчикам и т.д.)

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

Подробности на сайте Software-Testing.Ru

вторник, сентября 22, 2009

Тренинг “Автоматизация функционального тестирования веб-приложений”

Еще неделю до 26 сентября при записи на открытый очный тренинг "Автоматизация функционального тестирования веб-приложений: Selenium + Selenium RC", действует скидка 15%. Кроме того, каждый участник тренинга получит бесплатно записи трех любых онлайн-семинаров серии "Онлайн-семинары по четвергам". Тренинг пройдет 6 октября в Москве.

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

  1. Как устроен Selenium (Core, RC, Grid). В чём отличие от других аналогичных фреймворков.
  2. Selenum IDE. Простейшие тесты. Запись и воспроизведение тестовых скриптов. Отладка и доработка тестовых скриптов в среде Selenium IDE.
  3. Переход к Selenium RC. Перенос тестовых скриптов из Selenium IDE в Selenium RC. Запуск, отладка и доработка тестовых скриптов.
  4. *Основы разработки тестов с использованием TestNG.
  5. Принципы организации тестового набора. Повторное использование фрагментов кода. Многослойная архитектура тестов. Повышение устойчивости тестов к изменениям требований и реализации.
  6. Принципы создания устойчивых локаторов.
  7. *Вспомогательные инструменты -- Firebug, XPather, IE Developer Toolbar.
  8. Использование различных браузеров и особенности взаимодействия Selenium с ними.

Подробности про условия участия в тренинге на сайте Software-Testing.Ru

воскресенье, сентября 06, 2009

Расписание тренингов по тестированию ПО на осень

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

6 октября состоится однодневный тренинг "Автоматизация функционального тестирования веб-приложений: Selenium + Selenium RC".

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

24 октября состоится тренинг "Тестирование методом свободного поиска (exploratory testing)".

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

Оба открытых тренинга пройдут в Москве.

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

17.09.2009
13:00-15:00
Функциональное тестирование на основе вариантов использования
17.09.2009
16:00-18:00
Управление требованиями, запросами на изменение и дефектами
08.10.2009
13:00-15:00
Инструменты автоматизации функционального тестирования веб-приложений семейства Selenium
08.10.2009
16:00-18:00
Тестирование методом свободного поиска (exploratory testing)
22.10.2009
13:00-15:00
Регрессионное тестирование: принципы формирования тестовых наборов для повторного выполнения
22.10.2009
16:00-18:00
Тестирование веб-сервисов
05.11.2009
13:00-15:00
Основные техники функционального тестирования и их комбинирование
05.11.2009
16:00-18:00
Модульное тестирование: техники и инструменты
19.11.2009
13:00-15:00
Тестирование защищенности веб-приложений: наиболее распространенные уязвимости
19.11.2009
16:00-18:00
Стандарты в области тестирования и их применение на практике
03.12.2009
13:00-15:00
Тестирование производительности веб-приложений: основные приемы генерации нагрузки и мониторинга
03.12.2009
16:00-18:00
Работа с исходным программным кодом для тестировщиков

вторник, сентября 01, 2009

Панбагон 2.0: две недели, полёт нормальный

Несмотря на некоторые наши опасения, проект Панбагон 2.0 успешно функционирует уже две недели (новость о запуске проекта можно прочитать здесь).

По просьбам наших читателей приводим некоторую статистику. За две недели написано 43 заметки и к проекту присоединилось 43 человека, 25 из которых активно участвуют в обсуждениях, а 11 человек за две недели получили бонусные баллы, опубликовав собственные заметки: Первая раздача бонусных баллов и Вторая раздача бонусных баллов, и наши благодарности.

Почему это важная веха? Потому что 42 -- это ответ на Самый Главный Вопрос Жизни, Вселенной и Вообще. И мы пересекли этот рубеж!

вторник, августа 18, 2009

Панбагон 2.0 или Полное торжество демократии

Я не верю в профессиональные социальные сети. И особенно утопичной мне представляется социальная сеть для тестировщиков.

Есть мнение, что в силу специфики своей профессии тестировщики мало общаются друг с другом, но зато много общаются с разработчиками, аналитиками, службой техподдержки. Это приводит к замедленному обмену информацией, что не может не сказываться отрицательно на развитии нашей отрасли. Все проекты, которые мы строим вокруг портала Software-Testing.Ru, нацелены на преодоление этой "информационной блокады".

В интервью, которое я давал порталу www.it4business.ru чуть больше полугода тому назад, я говорил, что "вебдваноль" нам не грозит, что я не собираюсь всех агитировать публиковать свои творения на сайте Software-Testing.Ru. Наоборот, я всячески приветствую появление новых блогов, сайтов, тренингов, конференций и других мест для профессионального общения тестировщиков. И некоторые позитивные результаты имеются -- за год количество блогов о тестировании выросло почти в три раза!

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

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

Примерно три месяца назад был запущен первый коллективный проект Панбагон. Для тех, кто не в курсе, расшифрую значение названия этого проекта. Пантеон -- так в Древнем Риме назывался храм, посвящённый всем богам. А наш проект посвящён не бОгам, а бАгам, поэтому он так и называется. Здесь мы выставляем на всеобщее обозрение баги, найденные случайно или специально в тех программах, которые мы использовали, или на тех веб-сайтах, которые мы посещали. Целью является не простая фиксация чужих ошибок, не желание посмеяться над нерадивыми разработчиками и тестировщиками, которые пропустили дефект. Мне бы хотелось, чтобы не просто публиковались описания багов, но и были попытки понять и описать, чем вызван этот дефект, почему он остался необнаруженным, какие приёмы, техники, инструменты тестирования могли бы помочь в его поимке, как можно профилактическими мерами добиться того, чтобы такие баги вообще не возникали.

Панбагон жил некоторое время на платформе Blogger, но её возможности оказались ограничены. Хотелось добавить в Панбагон некий элемент "игры", а также сделать его более открытым для всех. Поэтому было принято решение о переходе на standalone-платформу. Теперь он будет работать на движке LiveStreet и жить здесь: http://community.software-testing.ru/blog/panbugon/.

Что нового появляется в Панбагоне после переезда?

Во-первых, открытая регистрация -- теперь жрецом может стать каждый, все ограничения отменены, полное торжество демократии!

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

Вперед, тестировщики, смелее!!!

Вне зависимости от набранных баллов рейтинга всем, кто опубликует заметку в первую неделю, рейтинг будет увеличен на 20 баллов, во вторую неделю на 15, третью на 10 и четвертую на 5 баллов.

Регистрируйтесь, пишите заметки, комментируйте, общайтесь!

вторник, августа 11, 2009

Инструменты статического анализа кода для поиска уязвимостей

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

Для понятности приведу пример одного такого известного мне инструмента – Pixy, я уже неоднократно упоминал про него на своих семинарах и собираюсь достаточно подробно рассказать и продемонстрировать его в работе на семинаре “Работа с программным кодом для тестировщиков”, который состоится через полторы недели.

Вкратце, суть работы таких инструментов в том, что инструмент сканирует исходный код и пытается строить графы потоков данных. И затем по этому графу прослеживается путь данных, которые поступают извне программы – от пользователя, из базы данных, от какого-нибудь внешнего плагина и т.п. Если такие данные без проверок и преобразований доходят до SQL-запроса – имеем уязвимость типа SQL injection. Если они добираются до вывода в HTML-код – извольте получить XSS.

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

Инструмент Pixy работает с языком PHP, и неплохо работает, но для полноты картины хочу найти аналогичные инструменты для других языков – Perl, Python, Ruby, Java, .Net или хотя бы понять, есть ли такие, сделал ли уже кто-нибудь или ниша пока открыта.

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

понедельник, августа 03, 2009

Защищенность правительственных сайтов

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

При этом я не обращал внимания на то, можно ли атаковать сервер целиком, проверял только сами сайты на наличие базовых уязвимостей – XSS, SQL-инъекции, инъекции команд. Просмотрел не все, штук сорок, то есть около половины. Из них:

  • 5 сайтов подвержены пассивному XSS,
  • 1 сайт подвержен слепой SQL-инъекции,
  • 1 сайт подвержен SQL-инъекции с возможностью внедрения UNION,
  • 3 сайта раскрывают некоторые детали внутреннего устройства, из них 2 предоставляют доступ к phpinfo, а 1 выдаёт сообщения об ошибках с отладочной информацией,
  • 1 сайт подвержен внедрению команд, это наиболее серьёзная проблема из всех, что мне встретились.

В общем, я бы не сказал, что всё плохо, несмотря на наличие отдельных проблем.

Но вот что я хотел бы узнать – имеется ли какая-то единая служба, которая отвечает за информационную защищенность всех сайтов министерств и ведомств (хотя бы за защищенность, функциональность оставим в стороне)? Или каждый отвечает сам за себя?

P.S. Да, кстати, для интересующихся – в тот же день пройдёт ещё семинар, посвящённый стандартам в области тестирования программного обеспечения.

четверг, июля 09, 2009

Новая серия онлайн-семинаров по тестированию ПО

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

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

Расписание

23.07.2009
13:00-15:00
Основные техники функционального тестирования и их комбинирование
23.07.2009
16:00-18:00
Модульное тестирование: техники и инструменты
06.08.2009
13:00-15:00
Тестирование защищенности веб-приложений: наиболее распространенные уязвимости
06.08.2009
16:00-18:00
Стандарты в области тестирования и их применение на практике
20.08.2009
13:00-15:00
Тестирование производительности веб-приложений: основные приемы генерации нагрузки и мониторинга
20.08.2009
16:00-18:00
Работа с исходным программным кодом для тестировщиков
03.09.2009
13:00-15:00
Функциональное тестирование на основе моделей
03.09.2009
16:00-18:00
Автоматизация функционального тестирования веб-приложений: хорошие практики
17.09.2009
13:00-15:00
Функциональное тестирование на основе вариантов использования
17.09.2009
16:00-18:00
Управление требованиями, запросами на изменение и дефектами
08.10.2009
13:00-15:00
Инструменты автоматизации функционального тестирования веб-приложений семейства Selenium
08.10.2009
16:00-18:00
Тестирование методом свободного поиска (exploratory testing)
22.10.2009
13:00-15:00
Регрессионное тестирование: принципы формирования тестовых наборов для повторного выполнения
22.10.2009
16:00-18:00
Тестирование веб-сервисов

Получить дополнительную информацию и узнать условия участия можно здесь:  http://www.software-testing.ru/events/706-online-seminars

пятница, июля 03, 2009

Почта России получила дилом за информационные технологии?

image Забрёл сегодня случайно на сайт УФПС Приморского края (филиал ФГУП «Почта России») и обнаружил там замечательную новость от вчерашнего числа – “Почта России получила дилом за информационные технологии!”. Не могу удержаться, чтобы не прокомментировать этот потрясающий текст.

По итогам участия в четвертой международной Азиатско-Тихоокеанской выставке «Информационные технологии и связь 2009» Приморский филиала ФГУП «Почта России» получил диплом за участие в выставке и вклад в развитие информационных технологий на территории Приморского края. Организаторы выставки признали, что Почта России самым уникальным образом подошла к участию в выставке.

Вы думаете, что “уникальным образом” – это значит демонстрировались суперсовременные технологии? Ха! Читайте дальше :)

В этом году впервые экспозиция "Почты России" работала в режиме почтового отделения, где можно было воспользоваться почтовыми услугами - купить марки, отправить письмо, обналичить пластиковые карты.

Ну, я понимаю, что “отправить письмо” – это связь. Но где тут информационные технологии? И что такого гениального в том, чтобы демонстрировать на выставке в 21-ом веке отправку письма?

С учетом того, что выставка проводилась в канун Дня города Владивостока, почтовики, помимо тематического наполнения  выставочного стенда позаботились и о зрелищных акциях для посетителей. Так, венчая открытие выставки в выставочный зал вошли пять девушек в одежде из почтового расходного материала – открыток, скотча, бумаги, капронового жгута, привлекая все внимание прессы, организаторов, гостей выставки к стенду Почты России. Такое нестандартное решение презентации стенда стало поводом отметить почтовиков дипломом за яркое участие в отраслевой выставке.

ВОТ!!! Вот оно!!! А-а-а-а-а!!! Держитеменяпятеро!!! Вот это я понимаю, информационные технологии!

Согласно концепции, уже после открытия выставки стендисты Почты России начали активную работу с заранее приглашенными гостями  – демонстрировали работу франкировальной машины, способная обрабатывать до полутора тысяч писем, рассказывали про пункты коллективного доступа в Интернет, большая часть которых сегодня работают в сельской местности Приморья.

Про русский язык молчим, ладно?

Стоит отметить, что особое внимание гостей выставки на стенде Почты России привлекли уникальные открытки и конверты, а также спецгашение праздничным штемпелем с изображением герба Владивостока, которые были выпущены специально в канун Дня Владивостока. «С каждым годом выставка «Инфотехнологии и связь» становится все более масштабной и интересной. Почта России - постоянный участник этой выставки: мы экспонируемся здесь с 2006 г. Активное внедрение современных технологий является стратегическим направлением деятельности Почты России, поэтому нам, безусловно, очень интересно принимать участие в подобной выставке-форуме» - отметила Ольга Рыжкова, заместитель директора УФПС Приморского края – филиала ФГУП «Почта России».

Конверты, открытки, марки – это всё круто, я тоже учась в школе собирал марки и карточки со спецгашением. Но для этого не надо делать во всех отделениях пункты коллективного доступа в Интернет. А зачем надо? Наверное для того, чтобы люди могли воспользоваться современными технологиями, внедрение которых является стратегическим направлением. Есть, есть современные технологии у Почты России, а как же! Прямо на главной странице сайта этого УФПС слева можно обнаружить симпатичные картинки с надписями “Отправления 1 класса”, “EMS Почта России”, “КиберПочта” и “КиберДеньги”. Четыре ссылки на четыре современных технологии. Но только все они, увы, приводят на страницу с надписью “Ошибка! Такой страницы не существует!”. Ну и что это такое? Можно же было хотя бы повесить там фотографию пяти девушек в одежде из почтового расходного материала, а?

image

P.S. Когда я уже дописывал эту заметку, мне стало интересно, что такое “EMS Почта России”. Чтобы уж наверняка не промахнуться, я пошёл на главный сайт Почты России -- http://www.russianpost.ru/. И что вы думаете?

image

Так что приморцам ещё повезло…

среда, июня 10, 2009

Лекции Динеса Бьорнера в Москве 11 июня

11 июня 2009 года ИСП РАН посетит с дружеским визитом Динес Бьорнер – основоположник и евангелист формальных методов.

Он предположительно прочитает две лекции, с содержанием которых можно ознакомиться заранее:

Rôle of Domain Engineering in Software Development: and Why Current Requirements Engineering is Flawed !
Paper and Slides. PSI'09, Akademgorodok, Siberia, 15-19 June 2009.

Mereologies in Computing Science: paper and slides
Paper for Sir Tony Hoare's 75th Festschrift, April 16-17, 2009, Cambridge, UK. Presented at Cambridge 16 April, 2009.

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

Предварительный план такой:

Лекция № 1 – с 11:00 до 12:30
Лекция № 2 – с 14:00 до 15:30

Вход свободный, если кто хочет послушать – добро пожаловать!

четверг, июня 04, 2009

А не послать ли себе виртуальный подарок?

Сегодня мне от ЖЖ пришло замечательное письмо, в котором содержался явный намёк на шизофрению, то есть раздвоение личности.

Вот, судите сами:

lj

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

Но предлагать мне поздравить себя с этим замечательным праздником и отправить себе виртуальный подарок – это уже, мне кажется, перебор!

Тестировщики ЖЖ, где вы???!!!

пятница, мая 29, 2009

6 июня: Онлайн-семинар “Обзор бесплатных инструментов тестирования”

6 июня последний раз в этом сезоне провожу онлайн-семинар, посвященный обзору бесплатных инструментов тестирования. Потом будет перерыв до осени. Подробности участия – на сайте Software-Testing.Ru.

P.S. На семинар “Основы функционального тестирования программного обеспечения”, который состоится завтра, 30 мая, ещё есть свободные места. Тоже, кстати, последний раз в этом сезоне.

суббота, мая 16, 2009

30 мая: Онлайн-семинар "Основы функционального тестирования"

30 мая 2009 г. в в 10:00 по московскому времени повторно провожу открытый онлайн-семинар на тему "Основы функционального тестирования программного обеспечения". Сезон онлайн-семинаров постепенно завершается, летом их будет существенно меньше, летом преимущество будет отдаваться другим форматам.

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

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

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

пятница, мая 01, 2009

12 мая: Функциональное тестирование веб-приложений

Сразу после завершения всех праздников 12 мая буду проводить онлайн-семинар на тему “Функциональное тестирование веб-приложений”.

Постепенно перевожу в онлайн-формат технически специализированные семинары. Скоро дойдёт дело и до тренингов, с выполнением самостоятельных заданий.

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

  • Краткое введение в тестирование, чтобы договориться о терминах
  • Автоматизация тестирования веб-приложений
    • инструментарий
    • принципы тест-дизайна
    • хорошие практики организации архитектуры тестового набора
  • Особенности тестирования серверной части
    • тестирование серверных компонентов в искусственном и естественном окружении
    • методы создания "заглушек"
  • Особенности тестирования клиентcкой части
    • тестирование без использования браузера
    • модульное тестирование JavaScript
    • системное тестирование в различных браузерах
    • кросс-браузерное тестирование
  • Исследовательское тестирование
  • Регрессионное тестирование

Узнать подробнее об условиях участия можно ЗДЕСЬ.

среда, апреля 29, 2009

Агрегирование RSS-лент: как я выбирал агрегатор

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

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

Кросс-пост делать не стал, просто дам ссылку:

Агрегирование RSS-лент: как я выбирал агрегатор

Писать можно в комменты и здесь, и там.

суббота, апреля 25, 2009

Расписание онлайн-семинаров в мае

На правах рекламы себя и не только

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

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

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

В мае и начале июня сего года планируются следующие онлайн-семинары:

Дата Название тренинга Тренер
12.05 Функциональное тестирование веб-приложений Алексей Баранцев
16.05 Управление командой тестирования Вячеслав Панкратов
23.05 Менеджмент процесса тестирования Вячеслав Панкратов
30.05 Основы функционального тестирования программного обеспечения Алексей Баранцев
06.06 Cеминар-обзор бесплатных инструментов тестирования Алексей Баранцев
13.06 Тест-дизайн Вячеслав Панкратов

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

среда, апреля 08, 2009

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

По просьбам тех, кто не смог принять участие в предыдущем семинаре по причине того, что он состоялся в субботу, проводим ещё один, на этот раз в рабочий день – в среду 15 апреля. Подробности – на сайте Software-Testing.Ru

В апреле будет также уже ранее анонсированный онлайн-семинар “Основы функционального тестирования” в субботу 11 апреля. После этого до мая семинаров не будет, потому что буду занят на конференции SQA Days 2009 Piter.

Отзывы участников онлайн-семинара “Обзор бесплатных инструментов тестирования” 28 марта

В связи с активной подготовкой к конференции SQA Days 2009 Piter, проведением других семинаров и наличием ещё кучи разной другой работы, не хватает времени на то, чтобы сесть, порефлексировать и описать свои ощущения от проведения онлайн-семинара про бесплатные инструменты тестирования. Сделаю это после проведения ещё одного такого семинара, который состоится 15 апреля.

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

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

Ирина Куликова
ОАО "Комсофт", Тольятти

Самое главное – было достаточно «практики» - живых демонстрации инструментов. Новых инструментов на полгода изучения хватит!

Лидия Лебедева
Junior Tester
ООО "Вентор-Софт" (Daxx), Санкт-Петербург

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

Также приятным дополнением были дополнительные тулы для работы тестировщиков – это обязательно возьму на вооружение и, по-возможности, буду распространять в отделе.

Татьяна Голубева, aka culver
Senior Test Lead
Aricent Ukraine, Винница, Украина

Информация удобна для восприятия и анализа и подается в очень живой и интересной форме. Приятно было слушать и воспринималось все легко. Достаточно исчерпывающе и в меру кратко. То, что нужно! Мои ожидания не совсем оправдались, но я получила очень много полезной информации, а также ниточку, следуя которой буду двигаться дальше в своем поиске. Вы – очень хороший лектор. Не каждого человека можно без утомления слушать 4 часа :) , а в Вашем случае это получилось.

И отдельное спасибо за список ссылок на полезные ресурсы! Это просто нить Ариадны в лабиринте доступного ПО :)

Жанна Битюкова
Инженер по качеству программного обеспечения
Лаборатория качества ПО
"ИнноВинн", Винница, Украина

Да, да, да! Коллеги, это именно то, чего я хотел достичь – чтобы вы сами начали использовать инструменты, про которые я говорил на семинаре, чтобы вы рассказали о них коллегам и они тоже начали ими пользоваться, чтобы вы пробовали новые инструменты.

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

И напоследок ещё один отзыв, полученный буквально только что:

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

Мне очень понравилось. Удалось систематизировать знания. С удовольствием приму участие в следующем семинаре.

Было бы здорово после такого семинара получить что-нибудь наподобие сертификата «Я учился на тренингах Баранцева», например, в виде кнопки для блога. Честно признаюсь, что ради такого дела я бы даже блог завела.

Алиса Евсеева
Инженер-программист (тестировщик)
ООО "Газинформсервис", Санкт-Петербург

Кнопка имени меня? Гм… Вообще-то я в меру скромен, но ради появления нового блога о тестировании я готов пойти на такой шаг. В конце концов, фан лишним не бывает :) Решено, сделаю кнопку! Главное, чтобы никто не додумался показывать эту кнопку работодателю и требовать повышения зарплаты. Хотя… А почему бы и нет?

Огромная благодарность всем моим слушателям, кто нашёл время и силы, чтобы написать эти отзывы. Спасибо, коллеги!

понедельник, апреля 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) тестирование;
  • "сопутствующие" инструменты.