Newly-Introduced JUnit 5 Annotations and Classes. Tagged tests

Newly-Introduced JUnit 5 Annotations and Classes. Tagged tests

 

4. Tagged tests

 

Tagged tests represent a replacement for the JUnit 4 Categories. The @Tag annotation can be used over classes and test methods. Tags can later be used to filter test discovery and execution. Listing 5 presents the CustomerTest tagged class, which tests the correct creation of the customers. A use case may be to group your tests into a few categories, based on the business logic and on those things you are effectively testing. Each tests category has its own particular tag. Then, you decide which tests to run, or alternate between running different categories, depending on the current needs.

 

CustomerTest tagged class.JPG

 

The @Tag annotation is added on the whole CustomerTest class (1).

CustomerRepositoryTest tagged class.JPG

 

Similarly, the @Tag annotation is added on the whole CustomerRepositoryTest class (1).

pom.xml configuration file.JPG

 

In order to activate the usage of the tags, you’ve a few alternatives. One way to do it’s to work at the level of the pom.xml configuration file. In listing 7, it’s enough to uncomment the configuration node of the surfire plugin (1) and run mvn clean install.

 

Another alternative is from the IntelliJ IDEA IDE: you can activate the usage of the tags by going to Run -> Edit Configurations and choose Tags (JUnit 5) as test kind (figure 2).

 

Configuring the tagged tests from the IntelliJ IDEA IDE.jpg

Figure 2 Configuring the tagged tests from the IntelliJ IDEA IDE

 

Conclusions

 

JUnit 5 comes with a lot of new annotations that make the life of the programmer easier and nicer. We investigated the capabilities of a few of them: @DisplayName, @Disabled, @Nested and @Tag. The examples provided in this article will allow you to understand how to use them in your current work.

Interested in JUnit?

Check out our trainings
Tudose, Florin-Catalin , Java Champion; Java Chapter Lead; Author at Pluralsight and Manning

Tudose, Florin-Catalin Tudose author linkedin

Java Champion; Java Chapter Lead; Author at Pluralsight and Manning

Tudose, Florin-Catalin , Java Champion; Java Chapter Lead; Author at Pluralsight and Manning

Tudose, Florin-Catalin Tudose author linkedin

Java Champion; Java Chapter Lead; Author at Pluralsight and Manning