CI Native Integration for Allure TestOps: GitLab and Jenkins

Testing automation in large projects is a large project itself. A great number of various tests run on different pipelines and conditions. A powerful tooling set is needed to take control over the testing zoo:

  • a couple of CI and virtualization tools.
  • several testing frameworks for web-, API- and backend testing.
  • a TMS for manual testing and documentation.
  • an issue tracker.

As soon as the infrastructure gets set up, managing it takes time. Not to mention the fact that the test run results still need to be sorted and analyzed.

Making it possible with reasonable effort is the mission of Allure TestOps. That is why Allure TestOps brings a wide range of native integrations with the most popular tools and frameworks in the field. This post covers setting up GitLab and Jenkins integration. Read, try and stay tuned!

CI pipelines

Modern problems require modern solutions, as you know. And the solution in testing is testing must run as frequently as possible. We have covered the topic and reasoning in another article. And this is why Allure TestOps provides native integration with the most common CI tools like Jenkins, GitLab, TeamCity, and Bamboo.

Native integration allows you to run and create jobs, get real-time test results from the Allure TestOps interface. That means that your testing team will not depend on the Ops team and will be able to create as many runs as necessary. If the test suite runs for hours, the team will see the results before the job is executed.

Prerequisites

  1. Download and install Allure TestOps CI plugin binary from Bintray.
  2. Make sure to have administrator’s access to the CI server (or, at least, the rights to create credentials).
  3. It is advised to create a dedicated user on the Allure side for CI. But do not forget to add this dedicated user to your project!

First step

Setting CI/CD variables is the first step for any CI system we are going to integrate.

  • ALLURE_ENDPOINT is a link to your Allure TestOps instance.
  • ALLURE_PROJECT_ID is the ID of the Allure TestOps project, get it from the project URL.
  • ALLURE_TOKEN is a security token that is created in Allure TestOps. It’s quite easy:
    • Go to your Allure TestOps profile and click the Create button in the token section. Name the token and submit it. Create the token right before pasting it to the CI as it is displayed to the user only on creation and never again.

GitLab Test Results Import Integration

Enter the GitLab repository. Go to the Settings → CI/CD page and find the variables section. Create and set the variables described in the previous section.

Remember to unmark “Protect variable” in settings. It is important to run tests in new and unprotected branches, not just in protected ones.

That’s it! Just run the pipeline from GitLab. Once it finishes execution, you will see the run and the results in the Launches tab in the Allure TestOps project. Also, the GitLab job will pop up on the Jobs page.

It’s also possible to integrate jobs management in Allure to gain more power and control over the testing infrastructure. See the docs.

Share this article

Subscribe to the blog

Menu