As a follow-up on [1], I wanted to let you know that we set up a new
test suite for the management console: 'hal/manatoko' [2].
The motivation for the new test suite was to address some weak points
with the existing test suite 'hal/testsuite.next' [3]:
- Still on Arquillian 1.6, JUnit 4
- Weak SoC (separation of concerns)
- Hard to run in a CI environment
The new test suite was developed with the idea that each test should be
self-contained. This is possible by leveraging the Testcontainers [4]
framework. WildFly, the management console, and browsers run in containers,
and the unit tests can focus on testing the UI and verifying the modifications
in the management model.
This approach makes running the test suite in CI environments very easy.
We already do this using GitHub actions [5].
Currently, the new test suite doesn't contain all tests from the existing
test suite. But we already migrated 27 of 34 test modules. The migration
requires effort, but the new unit tests can re-use classes from the existing
test suite, such as Arquillian pages and constants from the HAL code base.
In the next month, I'd like to migrate the remaining tests from
'hal/testsuite.next' to 'hal/manatoko'.
If you want to learn more, browse the README.md [6]. If you have any questions
or any ideas or want to get involved, leave a comment or reach out to me.
Best regards
Harald Pehl
---
[1]
https://lists.jboss.org/archives/list/wildfly-dev@lists.jboss.org/thread/...
[2]
https://github.com/hal/manatoko
[3]
https://github.com/hal/testsuite.next
[4]
https://www.testcontainers.org/
[5]
https://github.com/hal/manatoko/actions
[6]
https://github.com/hal/manatoko#readme