I need to run tests in order. I fail to find this adequately documented anywhere. I would prefer to do this from command line. Something like
mvn -Dtest=test1,test2,test3,test5 test
How do I do this?
This means that the test data creation scenario needs to be run first, otherwise the subsequent scenarios will fail. Using Background is not an option, because those steps are run before each individual scenario, whereas we want to run the test data creation steps once every feature.
Annotation Type FixMethodOrder. This class allows the user to choose the order of execution of the methods within a test class.
By default, JUnit executes tests in a specific order of its own, but not predictable. JUnit 5 allows programmers to override that default, to run tests in a determined order: alphanumeric order or numeric order.
You can't specify the run order of your tests.
A workaround to do this is to set the runOrder parameter to alphabetical.
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <runOrder>alphabetical</runOrder> </configuration> </plugin>
and then you need to have rename your tests to obtain the expected order.
However it isn't a good idea to have dependent tests. Unit tests must be fIrst.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With