Nowadays developers are expected to provide code verified by automated tests. And this is good.The tests you write should verify some important parts of the system. They should exercise all important cases and document the way your software works. Your tests are also expected to survive refactorings, and even redesigns, of the system.Unfortunately, not all of the tests we write live up to these expectations. This book provides numerous examples of improvements you can introduce to make your tests stronger, more readable, and more resilient to changes. You will learn about real-life issues, and discover ways of overcoming them. You will get to know new techniques for writing high-quality tests.The goal of this book is to teach you how to write tests in such a way that all the effort you put into them really pays off!
Лично религиозно ползвам verifyNoMoreInteractions и забелязвам, че доста проблеми се решават с това, та има съвети, с които не съм съгласен. Също за безплатно-достъпния пдф бих очаквал да има поне цветове в стайлинга на кода, все пак не си го принтирам на хартия.
//polish Jest to książka poświęcona dobrym praktykom w trakcie pisania testów w Java. Prezentowane testy są napisane głównie w JUnit i Mockito. Książka jest przeznaczona dla osób które mają jakieś podstawowe pojęcie o pisaniu testów w tych bibliotekach, ponieważ autor nie wyjaśnia podstaw tylko od razu przedstawia złe praktyki.
Cała książka opiera się na pokazywaniu przykładowych testów, które są napisane w brzydki sposób, omówieniu związanych z nimi problemów oraz pokazanie poprawionego testu. Autor omawia częste błędy popełniane podczas testów oraz promuje zasady czystego kodu.
Książka jest napisana w lekki sposób oraz jest krótka(niewiele ponad 100 stron). Autor chciał tą książką reklamować swoje inne książki o testach, więc udostępnił ją za darmo(chyba że ktoś chce wpłacić dobrowolnie). Książkę można pobrać na stronie wydawcy: https://leanpub.com/zletestydobretesty
Jeśli programuje się już w Java i napisało się trochę testów, to wiele przykładów będzie bardzo oczywiste, jednak ze względu na krótkość oraz darmowość polecam każdemu programiście Javy. Dodatkowo dowiedziałem się, że istnieją takie biblioteki jak assertJ i JUnitParams, które na pewno wykorzystam w przyszłych testach.