Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • fest as the swing robot for interface interactions
  • TestNG in the izpack-test module which provides interesting features for integration tests like dependent test method.
  • Hamcrest to realise assertions with assertThat(). See hamcrest tutorial for more details. It is quite powerful thanks to its matcher system.
  • Mockito as the mock framework. It allows you to creates, control and check mocks.
  • And Junit , no need to present itJUnit
    Note: Junit 4 imported several classes from Hamcrest to a different package and has an implicit dependency to Hamcrest. Therefore, keep dependencies to JUnit and Hamcrest in sync, for not pulling in incompatibilities,
    Current state: JUnit 4.10 depends on Hamcrest 1.1.

Running Tests

Maven execution

Tests are automatically run by maven during the build. Just run "mvn install" to run tests on the project.

NOTE: GUI tests are disabled by default. To run these, use:

Code Block
mvn -Pwith-gui-tests install
IDE execution

You can run tests directly in your IDE.
If you use Eclipse, you need to install the TestNG eclipse plugin to run tests in the test-module.

...

It is possible to run graphical tests on a headless environment using Xvfb. Given that you have xvfb installed, you simply need to run
Maven build using xvfb

Code Block

xvfb-run -s "-screen 0 1280x1024x24" $MAVEN_BIN/mvn clean install

...

They are slower to run since there is more components to manage or there is some i/o processing. To run integration tests use the command below:

Code Block
mvn -Prun-its install

End-to-end tests

Those tests bootstrap and execute the entire application. They are heavy and keep to a minimum but they are used to execute end-to-end test.

...