К основному контенту

Заметки на коленке - 2. Книжки про тестирование для разрабов

Есть тред в твиттере, но пусть тут для удобства тоже будет.


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

Вводная по "разработческому" тестированию
Про тестирование обзорно для разработчика

The Art of Unit Testing (лучшая, на мой взгляд, книга по юнит-тестам)
С примерами на С# 
С примерами на JS 
Применимо и к другим языкам

Паттерны для хороших тестов (практически любых)
xUnit Test Patterns: Refactoring Test Code (есть книга)

То, что мало кто из тестировщиков читал:
Теория тестирования
Lessons Learned in Software Testing: A Context-Driven Approach

Букварь по тест-дизайну
A Practitioner's Guide to Software Test Design

Гибрид двух предыдущих
Software Testing and Analysis: Process, Principles and Techniques: Process, Principles, and Techniques

Еще один гибрид
The Art of Software Testing

Факультативно:
Теория автоматизации, термины, практики (без упора в стек, можно просто пролистать)
Automated Testing Handbook

Философия автоматизации
The "A" Word
Мои пару слов про нее 

"Achieving Software Quality With Testing Coverage Measures"
Для желающих почитать немного "теорию" покрытия тестами. Просто можно погуглить по названию, там небольшая статья

И немного "философии" и истории от меня. Практически моя "инженерная лебединая песня" :)

Комментарии

Популярные сообщения из этого блога

Mock vs Stub

Когда мы начали изучать модульное тестирование, то одними из первых терминов, с которыми пришлось познакомиться, стали Mock и Stub. Ниже попробуем порассуждать в чем их сходство и различие, как и для чего они применяются. Проверять работоспособность тестируемого объекта (system under test - SUT) можно двумя способами: оценивая состояние объекта или его поведение. В первом случае проверка правильности работы метода SUT заключается в оценке состояния самого SUT, а также взаимодействующих объектов, после вызова этого метода. Во-втором, мы проверяем набор и порядок действий (вызовов методов взаимодействующих объектов, других методов SUT), которое должен совершить метод SUT. Собственно, если коротко, то в одном случае используется Stub, а в другом Mock. Это объекты, которые создаются и используются взамен реальных объектов, с которым взаимодействует SUT в процессе своей работы. Теперь подробнее. Gerard Meszaros использует термин Test Double (дублер), как обозначение для объе

Полезные ресурсы для молодых (и не только) тестировщиков

сперто(с) Уже 3 месяца провожу собеседования тестировщиков (март 2016). Поначалу они просто  веселили - после 15-летнего опыта собеседования С++-разработчиков, общение с тестировщиками (чаще были "-цы") было чем-то экзотическим и забавным. Потом становилось все грустнее и грустнее, мимими закончилось. Началась печаль.

Заметки на коленке - 3. Что еще делать, если ваши тесты уже "зеленые"?

"Lately I find I'm working on automated tests that return non-binary results. Tests that neither pass nor fail" by  @noahsussman Отличная мысль, которую я ретвитил еще в 2016. Но давайте вместе подумаем, что за этим может скрываться? ( кстати, не знаю, что при этом думал Noah ) Ваши тесты прошли и прошли "успешно". Все хорошо или все же есть, куда еще посмотреть? Дальше то, что использовал я лично и то, что еще можно прикрутить дополнительно. Естественно все шаги ниже должны быть автоматизированны. 1. Контролируйте время выполнения тестов. Если набор проверок не меняется (а такое часто бывает, к сожалению), то рост времени выполнения может говорить о проблемах в продакшен коде (чаще всего) или проблемах с окружением. 2. Контроль за количеством выполняемых тестов. "Все зеленое" не значит, что сегодня выполняли те же Х тестов, что и вчера. Смешно(нет), но случается такое, что какие-то проверки "исчезают" из запуска из-за того, что у кого-то &qu