Key FeaturesIn-depth coverage of Jupiter, the new programming and extension model provided by JUnit 5Integration of JUnit 5 with other frameworks such as Mockito, Spring, Selenium, Cucumber, and DockerBest practices for writing meaningful Jupiter test casesBook DescriptionWhen building an application it is of utmost importance to have clean code, a productive environment and efficient systems in place. Having automated unit testing in place helps developers to achieve these goals. The JUnit testing framework is a popular choice among Java developers and has recently released a major version update with JUnit 5.
This book shows you how to make use of the power of JUnit 5 to write better software.
The book begins with an introduction to software quality and software testing. After that, you will see an in-depth analysis of all the features of Jupiter, the new programming and extension model provided by JUnit 5. You will learn how to integrate JUnit 5 with other frameworks such as Mockito, Spring, Selenium, Cucumber, and Docker.
After the technical features of JUnit 5, the final part of this book will train you for the daily work of a software tester. You will learn best practices for writing meaningful tests. Finally, you will learn how software testing fits into the overall software development process, and sits alongside continuous integration, defect tracking, and test reporting.
What you will learnThe importance of software testing and its impact on software qualityThe options available for testing Java applicationsThe architecture, features and extension model of JUnit 5Writing test cases using the Jupiter programming modelHow to use the latest and advanced features of JUnit 5Integrating JUnit 5 with existing third-party frameworksBest practices for writing meaningful JUnit 5 test casesManaging software testing activities in a living software projectAbout the AuthorBoni Garcia has a PhD degree on Information and Communications Technology from Technical University of Madrid (UPM) in Spain since 2011. Currently he works as a Researcher at King Juan Carlos University (URJC) and Assistant Professor at Digital Art and Technology University (U-tad) in Spain. He is member of Kurento project, where he is in charge of the testing framework for WebRTC applications. He participates in the coordination of the ElasTest project, an elastic platform aimed to ease end-to-end testing. Boni is an active member on the free open source software (FOSS) community with big emphasis on software testing and web engineering. Among other, he owns the open source projects WebDriverManager and selenium-jupiter (JUnit 5 extension for Selenium).
Table of ContentsRetrospective on software quality and Java testingWhat's new in JUnit 5JUnit 5 standard testsSimplifying testing with advanced JUnit featuresIntegration of JUnit 5 with external frameworksFrom requirements to test casesTesting management
Books published by Packtpub are often a hit or miss. This was a hit.
I bought this one in the new year $5 sale with a ton of other books for summer reading. This one is worth the full price.
It has a bit stuffing on the beginning explaining on testing and test standards. It did not bother me. I think it is a valuable book for people new to the field. I think the. book is suitable for classroom use. At the end it also has some extra stuffing on integrating other tooling that is remotely related to Junit.
The book explains Junit 5 and it's benefits over version 3 and 4 very well. It has a good explanation of the differences in handy tables. It also explains compatibility plugins. However it does not mention Junit 4.13. IMHO, moving to that from 4.12 and then to 5 is also a viable strategy in some cases.
Interesting where the sections on naming tests human readable via @Display and tagging to group tests. Also the section on writing Extensions instead of Rules was interesting. The buildin matchers make Hamcrest no longer needed for many situations. Also the section on all different kinds of parameterized tests was worth reading.
In later chapters it goes into integrating Mockito, Hamcrest and more . I especially liked the chapters on REST API testing and using Docker. However only read these briefly because I was more interested in migration from 3 and 4 and the core benefits.
The writing style is pleasant and the examples are good too.
Buy if you need/want to migrate tests or want to start learning on unit testing with Junit 5.