Connor Spangler
Connor Spangler

Reputation: 825

How to execute scripts before and after SureFire test phase

When I invoke mvm test, I want to execute a setup.sql script before Surefire JUnit is invoked and then execute a teardown.sql script after.

I know from questions like this how to execute scripts during the test phase, but I have no idea how to define this specific sequence of events. Thank you!

Upvotes: 2

Views: 1325

Answers (1)

wemu
wemu

Reputation: 8170

Not with the surefire plugin but with its sibling the failsafe plugin. They both execute Tests but in different life-cycle phases. The surefire plugin in test and the failsafe plugin in integration-test. See life-cycle phases and the default plugin bindings.

The advantage of the failsafe plugin running in the integration test phase is that there are pre- and post- phases.

Since you mention some sql script it seems you want to prepare a database. At that point you are not really doing unit testing anymore but writing an integration test. So using the failsafe plugin makes the most sense here.

Upvotes: 1

Related Questions