TestRail Integration With LambdaTest Selenium Grid
TestRail is a modern test case management tool which offers a comprehensive web-platform for software testers and developers. Offering a JIRA add-on for cloud-based integration, TestRail helps you to track, manage, and hasten software release cycle.
TestRail also offers integration with LambdaTest to help you perform automated cross browser testing through an on-cloud Selenium Grid offering 3000+ browsers. LambdaTest Selenium Grid integration to TestRail will help you run your Selenium automation scripts from TestRail instance to our cloud-based Selenium Grid.
Prerequisites
Global Dependencies
- Make sure you have Maven installed.
- You could also install Maven with Homebrew with the below command:
$ install maven
Project Dependencies
Clone our GitHub repository for Selenium & TestRail.
Ensure that the required packages are made available using the below command:
$ cd Java-TestNG-Selenium-TestRail
We recommend, you execute the below command for evaluating any outdated dependencies. As a best practice, it is always suggested to go for a verification check & perform any update, if needed, prior editing your pom.xml in order to avoid any code incompatibility.
mvn versions:display-dependency-updates
For authentication purpose, make sure you have your Testrail credentials – URL, Username and Password.
Integrating LambdaTest With TestRail
Step 1: Clone our GitHub repository for Selenium & TestRail.
Step 2: Open Eclipse and import the cloned project as maven project.
Step 3: Add Java Library into the project.
Step 4: Follow the Readme.md file for how to run the test.
Step 5: Once test would get run then find your result logged in Testrail for given test case and run id.
Running Automation Scripts Using LambdaTest Selenium Grid & TestRail
Step 1: Required JAVA files for TestRail integration are inside package com.library.utils.testrail
.
Step 2: In your test file you actually create an object of TestRailHandler like below:
TestRailHandler trh = new TestRailHandler(testrailusername,testrailpassword, testrailurl)
Step 3: Then call it’s method as below:
trh.updateResultToTestRail(executionstatus, run_id, testcase_id);
Step 4: In above arguments execution status is numeric number that denotes pass, fail statuses defined in TestRail. Example: Pass -> 1, Fail -> 5 etc.
Step 5:Use the below command to execute a single test.
//To run single test
$ mvn test -P single
Once Test gets run, it logs result in TestRail as output mentioned here:
Jun 12, 2019 2:34:50 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: OSS
here
add_result_for_case/215/3351
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 35.235 sec
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 40.209 s
[INFO] Finished at: 2019-06-12T14:35:10+05:30
[INFO] ------------------------------------------------------------------------
Kudos! Now you can deploy your code in a reliable & faster manner at scale, using LambdaTest integration with TestRail, for automated cross browser testing with Selenium Grid. Happy Testing!