Two years ago, we introduced Spock tests into the MongoDB Java driver. The decision could be considered controversial – the project used no external dependencies in production code, and was 100% Java. But there was a back door… with Gradle as the build system, there was a tiny excuse to use Groovy in the project, provided it was not in the production code. That was all the excuse we needed to start using Spock for unit and later, integration tests.
Java Software Testing tutorials: unit testing, open source, JUnit, Mockito, TestNG, Spring, JGiven, etc.
Tomek Kaczanowski writes that the idea behind its “Bad Tests, Good Tests” book is “to present test code snippets and discuss ways of making them better.” To achieve this goal, he explores a large amount of code and tests to discuss all the issues that you can meet in your software testing activities.
Concurrency has become an increasingly important topic in the Java space. Nevertheless, most Java developers do not address concurrency in their unit tests. This talk shows how to and how not to test concurrent code and introduces Thread Weaver, a library for testing concurrent code.
Is it possible to decrease the turn-around time of your test suite for applications built using the Spring framework for Java? How can you make sure that your tests execute independently? Is it possible to automatically verify that the database schema is kept in sync with the source code? What are the trade-offs?
Writing unit tests is easy in theory but could be more difficult in practice. Usually experience helps in getting better at unit testing. In this blog post, Patroklos Papapetrou shares some of his experience in writing Java unit tests.
We all love our tests to speak in the language of business and not in the language of implementation details. In this short presentation I will show how we can get closer to this goal by writing custom assertions with AssertJ.
Unit testing is a basic software testing activity that should be performed by every software developer. This handout produced by the Computer Science department of Stanford University introduces the ideas of unit testing and provides some examples on how to do it with JUnit in Eclipse.