четверг, 29 мая 2014 г.

Книжная полка. Graham Bath, Judy McKay "The Software Test Engineer's Handbook"

После небольшого перерыва - очередной экземпляр на моей книжной полке. Это книга Graham Bath, Judy McKay "The Software Test Engineer's Handbook". Уникальная книга, которую "нельзя просто так взять и прочитать". Для продвинутых тестировщиков и тех, кто считает себя таковыми, - must read. Подробности - ниже.

Технико-тактические характеристики:
Год издания: 2011
Страниц: 397
Формат: 205*290 мм
ISBN: 978-1933952246
Язык - английский
Скорость чтения - ниже среднего
Ориентировочное время на прочтение: 14-18 часов
Полезность - высокая

Эта книга оказалась для меня уникальной по нескольким причинам. Первое - скорость чтения на "не родном языке" упала где-то в два раза. Второе - книга и сама по себе нелегкая в понимании, но при этом - нисколько не сложная и не занудная. Авторам удалось пройти по лезвию бритвы между тем объемом информации, которая заложена в книге, и вниманием читателя, чтобы читатель не бросил читать книгу как "слишком заумную и непонятную". В первую очередь, благодаря многочисленным примерам из своего опыта (так называемым "war stories") и увлекательному повествовательному стилю.

Вряд ли вы прочитаете ее одним залпом. Лично я читал книгу почти 3 месяца, небольшими порциями, с начала и до конца. Как вариант, можете читать только интересующие вас главы. Особенно, если вы по этой книге будете готовиться к экзаменам ISTQB Advanced Level Test Analyst и Technical Test Analyst, о которых вы можете почитать в моем блоге, или вы просто ищете информацию по какой-то одной конкретной теме из нескольких источников. Здесь вы не найдете примеры заданий, как в серии "Advanced Software Testing" Рекса Блэка, но книга Бэт и Маккей проще для восприятия, при этом оба автора входят в число составителей силлабуса ISTQB, так что формулировки и используемые определения очень близки к силлабусу.

О структуре книги. Как обычно, первая глава - введение, о чем и зачем эта книга, вторая глава - описание тестового проекта, на примере которого и будут рассмотрены две большие части этой книги:
  • Первая часть - функциональное тестирование, техники. В нее входят главы про 
  1. техники тестирования черного ящика (Specification-Based Testing Techniques)
  2. техники тестирования белого ящика (Structure-Based Testing Techniques)
  3. техники тестирования, основанные на дефектах (Defect Based Testing Techniques)
  4. техники тестирования, основанные на опыте (Experience Based Testing Techniques)
  5. аналитические техники - статический и динамический анализ (Analysis Techniques)
  • Вторая часть - атрибуты качества функционального и нефункционального тестирования
  1. Для функционального тестирования - аккуратность (Accuracy), пригодность (Suitability), взаимодействие (Interoperability), функциональная безопасность (Functional security)
  2. Для нефункционального тестирования - удобство использования (Usability), доступность (Accessibility), эффективность (Efficiency, включает в себя производительность , масштабируемость и использование ресурсов), безопасность (Security), надежность (Reliability), сопроводимость (Maintainability), портативность (Portability).
И последние главы: про ревью, концепцию использования инструментов и коммуникационные навыки.

На мой взгляд, первая часть описана довольно хорошо. Про техники черного ящика, если вы читали книги Коупленда, Майерса или Канера, вы вряд ли найдете много нового, но "козырная карта" данной книги Бэт и МакКей - техники белого ящика: примеры, описания покрытий кода даны просто отлично, и при этом достаточно понятно. Дается разбор не только покрытия состояний  (statement coverage) и покрытия ветвей/решений (branch/decision coverage) - вопросы уровня ISTQB Foundation Level - но и покрытия условий (condition coverage), множественного покрытия ветвей (multiple condition coverage), тестирования циклов (loop testing, LCSAJ). Также в книге описывается различие и сравнение данных покрытий.

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

Последние 3 главы написаны достаточно кратко и обзорно. Если вы готовитесь к экзаменам ISTQB Advanced Level, то рекомендую почитать про ревью дополнительно, например, в упомянутой серии книг Рекса Блэка, так как вопросы на эту тему достаточно сложные. А про коммуникативные навыки более подробно можно ознакомиться как в силлабусе для тест-менеджера, так и в других книгах по управлению. В экзамене на тест-аналитика всего один вопрос по коммуникациям, а на технического тест-аналитика - ни одного.

Общий вывод: хорошая, полезная книга в оригинале на английском, если вы готовитесь к экзамену ISTQB AL TA или TTA, то читать обязательно. Для остальных тоже достаточно полезна в качестве чтения либо целиком, либо отдельных глав по интересующим вопросам. Достаточно полно и доступно освещена тема техник тестирования белого ящика, а также будет интересно почитать про атрибуты качества для расширения общего кругозора.

4 комментария:

  1. Спасибо за полезный обзор и за наводку на книгу.

    ОтветитьУдалить
    Ответы
    1. Лена, всегда пожалуйста. Я тоже благодаря твоему интересному обзору запланировал "Как тестируют в Google" в свой ToRead-лист :)

      Удалить
  2. С ящикам более или менее все понятно, а вот оставшиеся три надо бы изучить, пойду искать книгу :)

    ОтветитьУдалить
    Ответы
    1. Марина, оставшиеся три даны обзорно, информация по ним достаточно общая, хватит для начала. Но для более глубокого изучения надо будет еще "копать" литературу, ссылка на которую есть в конце книге.

      Удалить