Introduction

Jenkins is an automation server for continuous integration in software development. 

It’s available for free under an open-source license at www.jenkins.io. For information on how to set up Jenkins, please follow the official Jenkins documentation.

In this chapter, you’ll find out how to integrate your Ranorex Studio tests as a build step in Jenkins.

On this introduction page, we explain the basic structure of this integration and which tools you need to set it up. The other pages of this chapter then show the required steps in detail.

Overview

Integrations are always based on making different systems work with each other. The following diagram illustrates a typical structure of Ranorex Studio tests integrated in Jenkins.

Note icon

Note

While typical, this structure is only an example. You can also use other version control and repository providers that are compatible with Jenkins.

The Ranorex Studio solution is under version control with Git and stored and managed in a repository on GitHub

The Jenkins server connects to the GitHub repository through a plugin and in this way has access to the Ranorex Studio solution

In Jenkins, the build process is set up as a project. It contains all the required build and post-build steps and their configurations. Some of the steps are implemented through Jenkins plugins

Once the build process is started, Jenkins carries out the build steps, which means it builds and executes the Ranorex Studio solution, thereby running the test

Software requirements

To set up the process illustrated above, you need the following software. 

Ranorex Studio

For creating and maintaining tests, you will need a full installation of Ranorex Studio and a Premium license. For only running a test on a machine with a Jenkins server, you will need a Runtime license.

Reference

Licensing in Ranorex Studio explained in

Ranorex Studio system details > ⇢ Licensing

Jenkins

You need a Jenkins server set up and running. For more information about downloading and setting up Jenkins, please refer to the official Jenkins documentation at www.jenkins.io.

Note icon

Note

Considering that Jenkins or the nodes executing the CI jobs do not have sufficient rights to start UI-applications, they initialize as a windows service. Ensure Jenkins is disabled as a service on the master or on the slave nodes where Ranorex automation is triggered.

To disable the Jenkins service, open the Services tool, right-click the Jenkins service, select Properties, and set the Startup type to Disabled, as shown below:

Use the following command to start Jenkins manually from the installation folder:

java -jar jenkins.war

After starting Jenkins, use this address to access the web interface: http://localhost:8080/

Git (version control)

The Ranorex Studio solution(s) you want to integrate as a Jenkins build step must be under version control. For the example process described in this chapter, we use Git. It is free under the GNU GPL and you can get it from https://git-scm.com/. You can also use other version control providers that are compatible with Jenkins.

Reference

Putting your Ranorex Studio solution under version control with Git is explained in

Interfaces and connectivity > Source control & revision control > ⇢ Git

GitHub (repository provider)

Typically, a free GitHub repository is used to store the files under Git version control online. This is optional, but in the explanations in this chapter, we use GitHub. You can create a GitHub repository for free on www.github.com.

Microsoft Visual Studio

Jenkins builds integrated Ranorex Studio solutions with a Microsoft Visual Studio compiler. You therefore need to have Microsoft Visual Studio installed. The free version is enough to use the integration, but depending on your requirements, you may need to upgrade to a paid version.

Go to https://visualstudio.microsoft.com/ for more information about different versions.