Краткие аннотации к книгам по тестированию

Старый текст, написанный для рабочего интранета.

Gerald M. Weinberg. Perfect Software: And Other Illusions about Testing. Если кого и можно назвать «дедушкой тестирования», так это Джери Вайнберга. За свою карьеру он написал просто безумное количество книжек, в основном про процессы и подходы, в разработке софта. При всем этом, почему-то, ни одна из его книг не выходила на русском языке.
«Иллюзии» чем-то похожи на «Психбольницу в руках пациентов» Купера — такой же научно-популярный подход к освещению тестирования. Книга полезна как тестировщикам, желающим сделать свою работу не такой унылой, так и менеджерам, желающим лучше понимать, что у нас там в тестировании такое творится.
Вайнберг рассказывает не только о проблемах и решениях в тестировании, но захватывает также вопросы коммуникации в команде, расстановки приоритетов, мифах тестирования. При этом книжка небольшая и написана достаточно простым языком. Впрочем, кому-то может не понравиться стиль изложения, напоминающий «Дедлайн» Тома Демарко.

Сем Кем Канер и другие, Тестирование программного обеспечения. Классическая книжка, первый перевод на русский язык был в 80х годах прошлого века. Многими считается устаревшей, но, тем не менее, у начинающего тестировщика закладывает очень хороший базис для дальнейшего развития. В последний раз переиздавалась очень давно, в бумажном виде можно найти только у букинистов. Говорят, есть где-то в сети.

Cem Kaner, James Bach, Bret Pettichord. Lessons Learned in Software Testing. Настольная книга для тестировщика, задумавшегося вдруг, что он делает. Авторы — активные сторонники так называемого контекстного подхода в тестировании. Состоит из нескольких сотен небольших советов, что делать, зачем и почему, по всем проблемам тестера: методике, коммуникациям, карьере и так далее. Кроме того, у каждого из авторов есть много очень хороших статей по теме на их сайтах в сети. Познавательно.

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

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

Рекс Блэк, Ключевые процессы тестирования. Блэк — давний и очень крутой гуру risk-based подхода к планированию тестирования. В общем, о нем и эта книжка. Очень хороша разобрана оценка рисков, приоритизация, управление процессом. Рекомендую, хотя не видел еще, чтобы кто-то из знакомых хорошо этот подход применял. Мой экземпляр простоял пару лет в пыли корпоративной библиотеки и потерялся.

Lee Copeland. A Practitioner’s Guide to Software Test Design. Одна из лучших методичек по техникам тестиирования. Классы эквивалентности, границы, потоки данных, пайрвайз — все разобрано очень понятно и с примерами.

Rex Black, Pragmatic Software Testing. Тоже методичка по техникам тестирования, применительно к risk-based подходу (автор же — Блэк). Есть описания, и упражнения с ответами.

Gerard Meszaros. xUnit Test Patterns. Вообще книжка для разработчиков, но в полной мере полезна тем, кто занимается автоматизацией тестирования. Набор практик (паттернов) для автоматизации — как правильно сетапить, мокать, выполнять и отлаживать. С какой-то частью паттернов можно ознакомиться свободно на сайте-компаньоне книжки.

Cédric Beust, Hani Suleiman. Next Generation Java Testing: TestNG and Advanced Concepts. Учебник для тех, кто переходит с junit на testNG. Подробный разбор особенностей testNG, и построения тестов на нем.