Dear all,
I don’t know if you noticed, but recently GeoNetwork code-base got a new component: an integration test software, based on Cucumber and Selenium.
The idea is to have high level tests, based on browser automation: easy to write, easy to maintain and to test GeoNetwork like real users would do: by opening a browser to use his functionalities.
There are already some tests to take as example, that cover core functionalities of GeoNetwork. I invite you to contribute with more test cases, especially if you are an end user and a specific functionality is very important to you: show your love with a test!
Together with unit tests, the integration tests could help to keep GeoNetwork project stable and to avoid regressions.
When is the right moment to run integration tests? Consider that they needs some extra time compared to unit tests, so it’s not a good idea to run it automatically for each pull request. The ideal is to run them before a merge or at the end of some automation tool like Jenkins (for example after a nightly build). Also consider that, to be deterministic, the integration test needs a running and clean instance of GeoNetwork: a clean DB, no customization, no weird stuff.
Let’s take some time to refine the idea, to discuss it, to improve it… Please, join the discussion. I really think that this could be good for GeoNetwork and for lowering the efforts of maintainers to keep it healthy.
···
Kind regards,
Antonio Cerciello
Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664
GeoCat bv
http://geocat.net