Open agoncal opened 10 years ago
failsafe has a very specific use case; start and stop things before after the surefire execution and delay fail until stop has been called.
Arquillian doesn't need that behavior, as it start/stops things within the surefire lifecycle just fine.
If anything, we could bind a surefire addon to the integration-phase in Maven, but.. that kills mvn test
I hope one day Forge will have JUnit commands (junit-setup, junit-create-test, ...) and I would expect these ones to be in the test phase. As for Arquillian tests, it would be good if they were in a different phase (I like the idea of surefire with an integration phase) as well as a different naming convention to differentiate them (eg. BookServiceTest
for a unit test, and BookServiceIT
for an integration test)
When we create an Arquillian test with the Forge addon, each profile ends up using the
maven-surefire-plugin
:Shouldn't it be using the
maven-failsafe-plugin
? It's the same old story between unit test and integration test but the Maven phase is different :mvn test
with surefire andmvn integration-test
with failsafe.I usually use Arquillian with failsafe so I have my unit tests in one side, and my integration tests in another one (integration test classes finish with
IT
, exampleBookServiceIT
). Also remember that maybe one day, Forge will have anjunit-create-test
command. It would be good to havejunit-create-test
andarquillian-create-test
doing things separate (unit test vs integration tests).What do you think ?