Maht 320 lehekülgi
2019 aasta
Принципы юнит-тестирования (pdf + epub)
Raamatust
Юнит-тестирование – это процесс проверки отдельных модулей программы на корректность работы. Правильный подход к тестированию позволит максимизировать качество и скорость разработки проекта. Некачественные тесты, наоборот, могут нанести вред: нарушить работоспособность кода, увеличить количество ошибок, растянуть сроки и затраты. Грамотное внедрение юнит-тестирования – хорошее решение для развития проекта.
Научитесь разрабатывать тесты профессионального уровня, без ошибок автоматизировать процессы тестирования, а также интегрировать тестирование в жизненный цикл приложения. Со временем вы овладеете особым чутьем, присущим специалистам по тестированию. Как ни удивительно, практика написания хороших тестов способствует созданию более качественного кода.
В этой книге: универсальные рекомендации по оценке тестов; тестирование для выявления и исключения антипаттернов; рефакторинг тестов вместе с рабочим кодом; использование интеграционных тестов для проверки всей системы.
После покупки предоставляется дополнительная возможность скачать книгу в формате epub.
Огромное спасибо автору за эту книгу: мастхэв имхо! Книга не просто про тестирование, но про архитектуру к кучей полезной практической информации и идей. Отлично сочетается с такими великими книгами от дядюшки Боба, как Чистый код и Чистая архитектура.
Наверное, единственная книга на русском языке, целиком посвященная юнит- (в основном) и интеграционному (в меньшей мере) тестированию. В книге совсем нет информации о применении фреймворков тестирования, только систематизация различных подходов, классификации и оценки юнит-тестов. Я, например, про существование лондонской и классической/детройтской школ тестирования не знал, как и про их отличия. Подробно рассматриваются вопросы работы с моками, стабами и зависимостями. В общем, соотношение объем/полезная информация на, казалось бы, простую тему - очень высокое.
Не исчерпывающая, но хорошая книга про то, как стоит писать тесты. Речь там идет не только юнит тестах, но и интеграционных, e2e.
Вообще это одна из немногих книг по тестированию, где просто рассказывается о том как тестировать, что тестировать и тд. Никаких TDD. Просто о тестировании.
Не могу сказать, что она перевернула мое сознание. Может быть не хватило опыта, ну или читал не очень вдумчиво. Но. Советов много и они полезные. Большинство из них я стал применять на практике.
Книга небольшая, читается просто. Не пугайтесь примеров на шарпах, если какой-то язык знаете, проблем разобраться в листингах не будет.
Это книга, которую я могу смело рекомендовать всем разработчикам. Мало кто пишет тесты, еще меньше тех, кто пишет хорошие тесты — книга как раз об этом, как писать эффективные юнит и интеграционные тесты, какими свойствами они обладают и тд. Отличный материал.
Для лучшего усвоения стоит читать после знакомства с гексагональной/чистой архитектурой, так как качественное тестирование и качественный код связаны, книга рассказывает и о теме архитектуры, но в целом уже подразумевая, что читатель с этой темой знаком. Можно порекомендовать прочесть Чистую архитектуру Мартина и возможно Паттерны разработки на Python Персиваля предварительно, чтобы лучше понять архитектурные темы, затронутые в книге Хорикова. Хотя, возможно, и так всё понятно будет:)
Материал — огонь!
Книга с большим количеством вредных советов, которую я ни в коем случае не порекомендую новичкам. Автор слишком зациклен на классической школе юнит тестирования, что ведет к плачевным результатам:
- отрицание использования мокирования в тестах бизнес логики, сервисов и т.д. не ведет к повышению их устойчивости к рефакторингу (как пишет сам автор), а создает ком из неизведанных проблем с тестами и окружением при любом неосторожном изменении в дебрях имплементации. Тесты становятся полностью беззащитны перед лицом рефакторинга, опять таки делая их хрупкими в виду недостатка изоляции от реализации.
- использование приватных внепроцессных зависимостей в тесте (!) с призывом "ну, раз будет быстро, то нормально" :\
Сомневаюсь, что кто-нибудь получит десятилетний опыт разработки тестов после прочтения данной книги.
Arvustused, 5 arvustust5