Spock was a game changer for all the Java software developers struggling with unit testing in JUnit 4. Compact syntax, parameterized tests or flexibility to mention just a few advantages. Over 10 years after JUnit 4.0, the brand new, written from scratch, Java 8 optimized JUnit 5 has been released. Is it still worth to write tests in Spock?
Java Software Testing tutorials: unit testing, open source, JUnit, Mockito, TestNG, Spring, JGiven, etc.
Spock is a Groovy-based open source testing and specification framework for Java and Groovy applications that makes writing tests fun again. We can write beautiful and highly expressive tests for Java applications because of its domain-specific language (DSL) and all the power that Groovy provides us.
Testing and validating REST services in Java is harder than in dynamic languages such as Ruby and Groovy. REST Assured is an open source software testing tool that brings the simplicity of using these languages into the Java domain.
This tutorial presents how to do Test-Driven Development (TDD) for a Spring Boot application and how some of the latest Spring Boot annotations and utilities make that easy. Ever wonder how to test a hard problem like caching or write an integration test without making an external API call? Or come across a situation where testing something was so hard that it never got tested?
It is not easy to write good automated tests as it involves to create and maintain a stable testing environment and configure the right tools. In this free less extracted from his “Test With Spring” course, Petri Kainulainen explains how to run integration tests With Maven, Spock edition.
The possibilities to write parametrized tests have changed and improved a lot with the release of JUnit 5, the open source unit testing tool for Java. In his blog post “Using JUnit 5 Parameterized Tests, Argument Sources and Converters”, Micha Kops provides an overview covers all new types of parameter sources for JUnit 5 tests as well as the new conversion API for test arguments.
JUnit 5 is the next generation of JUnit. The goal is to create an up-to-date foundation for developer-side testing on the JVM. This includes focusing on Java 8 and above, as well as enabling many different styles of testing.