How To Execute TestNG Tests Using Jenkins | Software Testing Material
In the earlier post, we have seen How To Run TestNG Scripts (testng.xml) Using Command Prompt and Using Batch file (.bat). In this post, we see how to execute TestNG Tests Using Jenkins. To do this, we need to have the following
i. TestNG Project
ii. Jenkins – Check this post on Installation of Jenkins.
Don’t Miss: Selenium Complete Tutorial
How To Execute TestNG Tests Using Jenkins
Let’s get started on How To Create TestNG Project.
Step 1: Creating TestNG Project. Follow this link to create TestNG Project.
Must Read: TestNG Complete Tutorial
Step 2: Installing Jenkins. Follow this link for Installing Jenkins
We have TestNG Project and Jenkins ready. Now, lets execute TestNG Tests Using Jenkins.
In the below image, you could see the project structure and testng.xml
Open Jenkins. By default it will be ‘localhost/8080’
Click on ‘New Item’
Enter an Item Name of your preference. I gave the name as ‘TestNGProject‘. In the screenshot below, you could see the name as MavenProject (ignore it).
Select ‘Freestyle Project’ and click on OK button
Now, click on item ‘TestNGProject’
Under General Tab, you could see ‘TestNGProject‘. Click on ‘Advanced‘ button to add the custom workspace.
Now select the ‘Use Custom Workspace‘ checkbox and enter the path of your workspace. My workspace is available at this location ‘D:\DeleteNow\TestNGProject‘
Scroll down to ‘Build‘ option. Click on ‘Add Build Step‘ and choose the value ‘Execute Windows batch command‘ from the drop down list.
My batch file name is ‘BatchRun.bat’ and I specified the same here.
We have created a new project ‘TestNGProject‘ with the configuration to run TestNG Tests using Jenkins. You could see in the below screenshot.
Let’s execute it now. Click on ‘Build Now‘ button. It will invoke testng.xml from the batch file.
Right click on Build Number (here in my case it is #1) and click on Console Output to see the result.
You could see the print statement ‘softwaretestingmaterial.com’ and Build Status ‘Success’
This way, we could execute TestNG Tests using Jenkins. In the next post, we see how to generate TestNG Reports after the completion of execution. Same way, we could execute Maven Project Using Jenkins.
Hi Rajkumar,
Thanks for the post. But you didn’t mention how to create “BatchRun.bat” file
Hi Srinnivas, Welcome. I have placed a link in the post. Any way, here is the link for you click here on how to create batch file (.bat)
Hello sir,
I just want to know that, I am facing an issue after creating batch file. so my question is that, for creating batch file to run testNG is it neccessary to ad mozilla driver?
Hi Roney, in this post you could find how to create batch file.
FYKI: In the batch file, we don’t pass any driver info.
no sir. i am not passing any driver info in batch file. but in my script i am passing driver info for chrome. so its not excute the script. thats why i am asking you that is it necessary to pass only gecko driver?
My batch file is not running properly and not showing any GUI
If you are using chrome,
System.setProperty("webdriver.chrome.driver",path of executable file "Chromedriver.exe")
Here is the link
yes with the help of this driver i can run my script in eclipse properly.. But its not work after executing batch file.
ok i have done it. i think batch file is only supported to firefox browser..
Fine Roney. It supports chrome too.
Many Thanks for your fantastic Guides in all issues
Thanks for your kind words Akado
Hi Rajkumar,
Please help me with this question. I am getting Configuration failure:1
https://stackoverflow.com/questions/47679141/configuration-failures-1-skips-1
Hi whats the value you are passing in your xml file. Share your xml file
Thank you for responding!
This is my xml file:
Post without < and > replace it with ?
I have added XML in my question:
https://stackoverflow.com/questions/47679141/configuration-failures-1-skips-1
?xml version=”1.0″ encoding=”UTF-8″?
?xml version=”1.0″ encoding=”UTF-8″?
!DOCTYPE suite SYSTEM “http://testng.org/testng-1.0.dtd”
suite name=”Suite”
test name=”FirefoxTest”
parameter name=”browser” value=”Firefox”>
/suite
?xml version=”1.0″ encoding=”UTF-8″?
!DOCTYPE suite SYSTEM “http://testng.org/testng-1.0.dtd”
suite name=”Suite”
test name=”FirefoxTest”
parameter name=”browser” value=”Firefox” parameter
classes
class name=”scripts.testJenkins”
classes
test
suite
I managed to post the XML here!
Hi Sandeep,
I have posted answer here
Hi,
I am unable to run batch i am facing total test run:0 skip:0 issue while trying to run the testng.xml file in CMD.