
Mastering Software Testing with JUnit 5
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions

Person
Boni 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).
Content
- Cover
- Title Page
- Copyright
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Customer Feedback
- Table of Contents
- Preface
- Chapter 1: Retrospective On Software Quality And Java Testing
- Software quality
- Quality engineering
- Requirements and specification
- Quality Assurance
- ISO/IEC-25000
- Verification and Validation
- Software defects
- Static analysis
- Software testing
- Testing levels
- Unit testing
- Integration testing
- System testing
- Testing methods
- Black-box testing
- White-box testing
- Non-functional testing
- Testing types
- Other testing approaches
- Testing frameworks for the JVM
- JUnit 3
- Standard tests in JUnit 3
- Test execution in JUnit 3
- JUnit 4
- Standard tests in JUnit 4
- Test execution in JUnit 4
- Advanced features of JUnit 4
- JUnit ecosystem
- Summary
- Chapter 2: What's New In JUnit 5
- Road to JUnit 5
- JUnit 5 motivation
- Modularity
- JUnit 4 runners
- JUnit 4 rules
- JUnit 5 inception
- JUnit 5 community
- JUnit 5 architecture
- Test Engine SPI
- Test Launcher API
- Running tests in JUnit 5
- Jupiter tests with Maven
- Jupiter tests with Gradle
- Legacy tests with Maven
- Legacy tests wih Gradle
- The ConsoleLauncher
- Jupiter tests in JUnit 4
- IntelliJ
- Eclipse
- The extension model of JUnit 5
- Test lifecycle
- Conditional extension points
- Dependency injection
- Third-party extensions
- Summary
- Chapter 3: JUnit 5 Standard Tests
- Test lifecycle
- Test instance lifecycle
- Skipping tests
- Display names
- Assertions
- Jupiter assertions
- Group of assertions
- Asserting exceptions
- Asserting timeouts
- Third-party assertion libraries
- Tagging and filtering tests
- Filtering tests with Maven
- Maven regular support
- Filtering tests with Gradle
- Meta-annotations
- Conditional test execution
- Assumptions
- Nested tests
- Repeated tests
- Migration from JUnit 4 to JUnit 5
- Rule support in Jupiter
- Summary
- Chapter 4: Simplifying Testing With Advanced JUnit Features
- Dependency injection
- TestInfoParameterResolver
- RepetitionInfoParameterResolver
- TestReporterParameterResolver
- Dynamic tests
- Test interfaces
- Test templates
- Parameterized tests
- @ValueSource
- @EnumSource
- @MethodSource
- @CsvSource and @CsvFileSource
- @ArgumentsSource
- Argument conversion
- Implicit conversion
- Explicit conversion
- Custom names
- Java 9
- JUnit 5 and Java 9 compatibility
- Beyond JUnit 5.0
- Summary
- Chapter 5: Integration Of JUnit 5 With External Frameworks
- Mockito
- Mockito in a nutshell
- JUnit 5 extension for Mockito
- Spring
- Spring in a nutshell
- Spring modules
- Introduction to Spring Test
- Testing Spring Boot applications
- JUnit 5 extension for Spring
- Selenium
- Selenium in a nutshell
- JUnit 5 extension for Selenium
- Cucumber
- Cucumber in a nutshell
- JUnit 5 extension for Cucumber
- Docker
- Docker in a nutshell
- JUnit 5 extension for Docker
- Android
- Android in a nutshell
- Gradle plugin for JUnit 5 in Android projects
- REST
- REST in a nutshell
- Using REST test libraries with Jupiter
- Summary
- Chapter 6: From Requirements To Test Cases
- The importance of requirements
- Test planning
- Test design
- Equivalence partitioning
- Boundary analysis
- Test coverage
- Software testing principles
- The psychology of testing
- Test anti-patterns
- Code smells
- Summary
- Chapter 7: Testing Management
- Software development processes
- Continuous Integration
- Jenkins
- Travis CI
- Test reporting
- Maven Surefire Report
- Allure
- Defect-tracking systems
- Static analysis
- Putting all pieces together
- Features and requirements
- Design
- Tests
- Summary
- Index
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.