[Geoserver-devel] Adding code coverage checks to the PR builds

Hi,
I’ve been discussing with some of my colleagues the idea of adding code coverage checks
to the build, in particular, the PR builds.

What we’d like to propose is to add a check that would verify the continuous “improvement”
of code coverage, rather than checking a minimum percentage. Rationale:

  • There are likely core modules that had a bad coverage when we introduced the minimum test coverage rules for graduation
  • There has been no check for graduated modules, meaning the coverage might have gone down
  • If a module has a good coverage, exceeding the minimum requirements, subsequent PRs can make it go down, and it could continue until the minim coverage is reached
    GeoSolutions has been using Covealls for a while on javascript projects with good success,

it’s possible to set both a minimum coverage (which we would not do) and a check on coverage decrease.
I’m however not sure if it’s possible to set it up on a module by module bases, which is desirable,
since we would not want to check community modules… it would seem so (looks like there is a maven
plugin to be used to send reports to coveralls), but if anyone has previous experience, please let us know.

So two questions for the community:

  • Would you be agree in having code coverage checks in the RPs?
  • Do you have experience with integration of coverage tools in the build, and have recommendations?
    Cheers

Andrea

···

GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

I like the idea of checking code coverage for pull requests, I do not have any experience with the specific Covealls tool

···


Jody Garnett