-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Custom runners
Kevin Cooney edited this page Mar 18, 2021
·
31 revisions
Some popular third party implementations of runners for use with @RunWith
include:
- Spring Framework
- Spring TestContext Framework reference manual
- SpringJUnit4ClassRunner Javadoc API
- Mockito
- JMockit
- Concurrency / Test Helpers
- Parallel Test Runner
- ConcurrentTestRunner (Run tests in parallel)
- JUnit Toolbox (Run tests in parallel; also Suite and Categories with Patterns, async)
- IntermittentTestRunner (run repeatedly to expose intermittent failures)
- Hierarchical Context Runner – A runner implementation that supports context hierarchies in JUnit.
- Parameterised and data-driven testing
- junit-dataprovider – A TestNG like dataprovider (see here) runner for JUnit.
-
JUnitParams - an alternative to JUnit's
Parameterized
runner, which support test data on a per method basis - ParameterizedSuite - Allows to define parameters for test suites.
- TestParameterInjector - A simple yet powerful parameterized test runner developed by Google
-
HookInstallingRunner - This JUnit test runner implements four significant features:
- Invocation hooks for test and configuration methods
- Test method timeout management
- Automatic retry of failed tests
- Shutdown hook installation
- BDD testing - these integrate popular BDD/ATDD methodologies
- Cucumber Runner - Cucumber JVM integration for JUnit, based on Gherkin specifications written in feature files
- JBehave - JBehave JUnit runner - a Gherkin-based specification framework
- FitNesse - FitNesse Runner
- ConcordionRunner - the Concordion BDD framework based on Gherkin specifications written in markdown
- Spectrum - supports Specs in Jasmine/Mocha/Gherkin syntax (Java 8 required)
- Oleaster - supports Specs in Jasmine/Mocha syntax
- Ginkgo4jRunner - supports Specs in Jasmine/Mocha syntax
- Cola tests - technically a precompiler for tests - Cola Documentation
- JICUnit - A JUnit runner in the JEE container for in-container testing similar to JUnitEE and Jakarta Cactus, both which are not developed any more.
- JUnit Browser Runner - A JUnit runner that executes your tests in a Browser using bck2brwsr.