ConservationInternational / trends.earth

trends.earth - measure land change
http://trends.earth
GNU General Public License v2.0
111 stars 45 forks source link

Refractoring to continuous integration tests #694

Open vermeulendivan opened 2 years ago

vermeulendivan commented 2 years ago

Continuous Integration testing provides a critical tool to ensure that regressions (breakages with the introduction of new changes) do not occur in the code base. In this work package with will migrate the integration testing suite to use the GitHub Actions system for automating tests. The goal will be to automatically prevent the merging of any changes if the test framework does not pass. In addition, we will use any remaining hours in this deliverable to make other improvements to the testing framework such as expanding the number of tests, automatic creation of build artifacts (that can be downloaded and tested in a user’s local QGIS session) and ensuring that the test framework uses latest current best practice for the QGIS project. Steps:

  1. Samweli to perform a quick review of which framework to use
  2. Any new functionality entering into the codebase should be accompanied by test
  3. Retroactively add tests for key components like land cover class functionality
  4. GUI testing is also needed so we need to review options e.g. Victor Olaya’s test tool versus Qtest framework, versus other test frameworks.
Samweli commented 2 years ago

Related to https://github.com/ConservationInternational/trends.earth/issues/664