Skip to content
Daina edited this page Jun 24, 2020 · 12 revisions

This page describes CRABServer and CRABClient tests executed on each PR in corresponding GitHub repositories. Both CRABServer and CRABClient test can be found in CMSDOCKS Gitlab repository.

All test are executed as Docker containers in DMWM Jenkins. CRABServer tests configuration can be found at https://cmssdt.cern.ch/dmwm-jenkins/job/DMWM-CRABServer-PR-test/configure while CRABClient at https://cmssdt.cern.ch/dmwm-jenkins/job/DMWM-CRABClient-PR-test/configure. However, you will need to request access rights to view/edit it. You can do that by writing an email to Shahzad.

After new PR is created, Jenkins generates a report that has 4 sections:

  1. Pylint;
  2. Python3 compatibility;
  3. Default;
  4. Unit tests.

each of this section has an indication whether that test passed or failed. Below all sections are described in more detailed.

Pylint tests

Pylint configuration can be found in WMCore repository. So in case you want to run pylint test on your code before creating PR, use this file.

When do pylint test fails?

Things in the pylint report that are bold are causing PR tests to fail. Function which decides if test failed can be found here, while short summary would look like this:

  • If pylint report has warnings or errors, then pylint test fails. However, there is a predefined list of warnings that do not cause pylint test to fail. This list is made of the following warnings: ['0511', '0703', '0613'];
  • If pylint report score is below 8, then pylint test fails;

Python3 compatibility tests

How to use Jenkins to read the

"You may see tests as red and with stormy skies (previous builds failed). You shouldn't see the sub-tests mentioned with anything but green and sunny skies."