Jenkins Installation for Mac

Prerequisite

  1. Jira+RMsis installation which is up and running.

    • RMsis APIs based on GraphQL are available from RMsis v1.8.9.4-r350 onwards. 

    • If you are using an older version, you will have to upgrade your RMsis to version 1.8.9.4 or later to use this plugin.

  2. Jenkins installation with an item/project containing JUnit tests which uses surefire reports to populate test results after completing the build process.

 

Jenkins Installation for Mac

  1. Install the required version of Jenkins.

  2. Download the specific version "jenkins.war" (e.g., version 2.401.1).

  3. Navigate to the download folder using the terminal: cd Downloads

  4. List all items in the Downloads folder: ls

  5. Run Jenkins on a different port since the default port 8080 might be in use: java -jar jenkins.war --httpPort=9090

  6. Search for Maven in the terminal: brew search mvn

  7. Install Maven: brew install mvn

  8. Install JDK. Once Jenkins is running, go to Dashboard > Manage Jenkins > Tools, fill in the JDK details, and set the “Java_home.”

  1. Install maven, Once Jenkins is running, go to Dashboard > Manage Jenkins > Tools, fill in the maven details, and set the “maven_home”. refer screenshot.

 

mavenConfig.png

 

After Jenkins Installation

  1. Log in to the Jenkins instance.

  2. Create a project of type "freestyle project" by clicking on "New Item" and then "OK".

 

Configuration:

  1. Install the Jenkins Plugin for RMsis:

    • Go to Manage Jenkins > System Configuration.

    • Under System Configuration, click on "Plugins".

    • Click on the gear icon for "Advanced Settings" on the left side of the Jenkins dashboard.

    • Upload the RMsis Plugin for Jenkins. Download it from the following link: RMsis Jenkins Plugin

  2. Deploy the plugin and configure the Jira RMsis Server:

    • Open Jenkins Global Configuration.

    • Navigate to Dashboard > Manage Jenkins > System > Jira RMsis Server Configuration.

    • Input credentials to access the JIRA+RMsis server.

    • Multiple Jira RMsis Server instances can be stored here, e.g., test and production instances.

    • Required details include:

      • Jira Base URL

      • Username

      • Password

    • Click on "Test Configuration" to verify the details and then Save the configuration. Refer to the attached image for Global configuration.

RMsis Configuration

  • In RMsis, create a Test case custom field of type text to store test details.

Project Configuration

 

  • Open Jenkins Item/job configuration and switch to "Source Code Management", choose Git, and fill in the required credentials. Save the configuration.

 

Build Configuration

  • Switch to the "Build Steps" section and add "Invoke top-level Maven targets". Define Maven version and goals. Refer to the attached screenshot. Save this configuration.

Post-build Configuration

  • In the Post-build Actions section, add "Publish JUnit test result report" available under the "Add post-build action" dropdown.

  • Point to Test report XMLs. Results stored in this report will be used by Jenkins Plugin for RMsis to update the Status field in Test Run.

  • Save all configurations.

RMsis Test Run Plugin Configuration

  • Add RMsis Test Run Plugin for Jenkins available under "Add post-build action" dropdown.

  • Populate details of the test run to be updated after the build process. Select:

    • Jira RMsis Instance

    • Project Name

    • Test Run

    • Method Name Custom Field

  • Refer to the attached image for Test Run details.

Options will be fetched from RMsis and populated automatically using the details provided earlier in Global configuration. If not, verify the credentials under Manage Jenkins > System configuration > Jira RMsis Server Configuration.

Switch to Test Cases in RMsis and map RMsis Test cases with JUnit tests.

Execute the build in Jenkins. The status will be updated once the build process is complete. 

Before execution of the build please make sure that the test cases should be  binded with the method name with a created custom text field.

Copy this method name along with the custom field test cases created in RMsis to bind it with Jenkins.

 

Reload the Test Run table in RMsis to see the updated status.

 

 

Note: Constructor name should be mapped with the test case once build is ready click on “test result” option of the existing test project, navigate to the

com.mycompany.app > AppTest > testAppConstructor/ testAppMessage.”