While researching on the subject of automating my integration tests, I found out a nice plugin in the maven world called FailSafe. it gives me phases like pre-integration-test, post-integration-test and integration-test.
By tying into these phases, I can have other plugins which can start/stop and run docker images.
The plugin also has a nice way in which I can differentiate between UnitTests and IntegrationTests (even though both are written in JUNIT).
Well now the question is how can I do the same thing with Scala / SBT combination?
my requirement is
- Write Integration tests in SpecFlow.
- Integration tests are treated differently than unit tests.
- First Unit Tests are run.
- Then docker containers are created and run
- then integration tests are run.
- docker contains are shut-down.
- test results are captured in files. (just like surefire/failsafe plugins).
Is this possible in Scala/sbt combo?