This is a small library of code-pieces that I find useful when writing tests.
It covers areas that I miss in JUnit itself e.g. for verifying compare()/hashCode()/equals() implementations and for multi-threaded tests.
- MockSMTPServer - simulate an SMTP Server for testing code which sends emails
- MockRESTServer - simulate a HTTP Server for testing code which accesses other systems, e.g. to mock REST interfaces in tests
- TestHelpers - small utilities for testing things like equals(), hashCode(), toString(), compare() and implementations of Comparator, they ensure some things that the Java spec mandates
- ThreadTestHelpers - easily run unit tests multiple times in parallel to ensure the code does not contain hidden race conditions
- MemoryLeakVerifier - a simple way of adding memory leak assertions to unit tests
- TestEnvironment - handling temporary files/directories in a clean way, ensure that files are not locked any more at the end of the test
- PrivateConstructorCoverage - use this if you would like to get 100% coverage of classes with private constructors
- HeapDump - trigger a writing a .hprof file
compile 'org.dstadler:commons-test:1.+'
git clone https://github.com/centic9/commons-test.git
cd commons-test
./gradlew check jacocoTestReport
./gradlew --console=plain release && ./gradlew closeAndReleaseRepository
- This should automatically release the new version on MavenCentral
- Afterwards go to the Github releases page and add release-notes
If you find this library useful and would like to support it, you can Sponsor the author
- commons-test is licensed under the BSD 2-Clause License.
- A few pieces are imported from other sources, the source-files contain the necessary license pieces/references.