TestArchitect Corner: How to Use Jenkins in TestArchitect

Jenkins is a Continuous Integration (CI) tool that controls repeatable tasks in software development. Check out this guide to see how TestArchitect seamlessly integrates with Jenkins to establish a CI environment for Automated Testing.

With the rising popularity of Continuous Integration/Continuous Delivery (CI/CD), Continuous Testing (CT) is becoming a hot topic for discussion. Knowing that comprehensive tests are running smoothly is highly beneficial for the CI/CD pipeline; but, running tests can be both times- and resource-consuming—not to mention that tests can become boring and rigid! Using the repetitive characteristics of CI/CD and applying them to testing can be a way to address this.

A key component of Continuous Integration (CI) is the frequent running of automated tests to catch potential bugs as soon as they are introduced in the development process. The CI software life cycle involves a process of coding, building, testing, and bug-fixing, often at a rate of several iterations per day.

Most CI systems allow for much of this cyclic process to be automated: Code commits can be set to trigger software builds, build completion can trigger Automated Testing, and test results can be rapidly compiled, processed, and reported to allow bugs to be addressed in the coding process.

TestArchitect supports integration with all CI/CD tools––as long as the tools support command-line interfaces (CLI).

How to Integrate TestArchitect with Jenkins

Jenkins is a Java-based, open-source Continuous Integration (CI) tool that controls and monitors the execution of repeatable tasks in software development. TestArchitect incorporates features that allow it to be readily integrated into a Jenkins-based CI environment.

A typical Jenkins-based CI environment with integrated TestArchitect involves the following components:

  • Software development workstations with a common source control server such as SVN or CVS.
  • A Jenkins master server to manage the CI process.
  • One or more test execution machines. Each machine must be set up as both a TestArchitect controller and Jenkins slave.
  • At least one machine with TestArchitect installed to:
    • Allow for the development of tests in TestArchitect Client,
    • Provide a repository for test-related project items such as test modules and results, and
    • Generate execution batch files for the test controllers.

Note that TestArchitect may be installed on a Jenkins slave, but not on the Jenkins master.

Creating a Batch File

To establish a connection between TestArchitect and a Jenkins server, a batch file that includes executed test modules is required.

1. Select a test module or test folder for execution, then click Execute on the toolbar.

2. In the Execute Test dialog box, click the Advanced Settings tab.

3. Select the Export result(s) to xUnit checkbox.

4. Click to specify the path where the XML file is to be saved.

5. In the Open dialog box, specify the path to the Jenkins slave workspace.

  • Note:
  • The Jenkins master machine is responsible for controlling and monitoring executed jobs on slave machines.
  • Jenkins slave machines are responsible for executing jobs.

6. Click Open.

  • The specified installation path now appears in the Select a destination folder text box.

7. Click Generate Batch File.

  • The Creation of a batch file complete message appears, letting you know that the batch file creation was successful.

Importing the Batch File

1. On the Jenkins dashboard, select New Job.asd

2. Enter a Job name and select a project category.

3. Click OK.

  • The Config page appears.

4. In the Build section, click the Add build step.

5. In the drop-down list, select Execute Windows batch command.

6. Enter the path to the batch file in the Command text box.

  • Note: The batch file must be stored on the Jenkins master machine. You must copy the generated batch files on the Jenkins slave machines and paste them into the Jenkins master machine.

7. In the Post-Build Actions section, click Add post-build action.

8. In the drop-down list, select Publish JUnit test result report.

9. Enter *.xml into the Test report XMLs text box to specify that all XML files related to executing test modules are to be selected.

10. Click Save.

TestArchitect Support Team
We are the TestArchitect Support team who will help you achieve Automation success. Creating a few dozen automated test cases is easy. Maintaining them overtime while scaling your test suite to thousands of tests is not. It needs the right mix of tools, methods, and expertise.

The Related Post

We’ve scoured the internet to search for videos that provide a wealth of knowledge about Test Automation. We curated this short-list of videos that cover everything from the basics, to the more advanced, and why Test Automation should be part of part of any software development organization. Automation Testing Tutorial for Beginners This tutorial introduces ...
All too often, software development organizations look at automating software testing as a means of executing existing test cases faster. Very frequently there is no strategic or methodological underpinning to such an effort. The approach is one of running test cases faster is better, which will help to deliver software faster. Even in organizations that ...
Source: From I.M.Testy (BJ Rollison’s blog) I just finished reading Implementing Automated Software Testing by E.Dustin, T. Garrett, and B. Gauf and overall this is a good read providing some well thought out arguments for beginning an automation project, and provides strategic perspectives to manage a test automation project. The first chapter made several excellent ...
Every once in a while a book is put together that should be read by every person with a relationship to software development. This book is one of them. Everyone dreams of automating their software testing, but few make it a reality. This down-to-earth book contains stories of 28 teams that went for it, including ...
Introduction A common issue that I come across in projects is the relationship between test automation and programming. In this article I want to highlight some of the differences that I feel exist between the two.
Developers of large data-intensive software often notice an interesting — though not surprising — phenomenon: When usage of an application jumps dramatically, components that have operated for months without trouble suddenly develop previously undetected errors. For example, the application may have been installed on a different OS-hardware-DBMS-networking platform, or newly added customers may have account ...
How lagging automotive design principles adversely affect final products. Cars are integrating more and more software with every model year. The ginormous screen introduced by Tesla in their flagship Model S a few years ago was seemingly unrivaled at the time. Nowadays, screens of this size are not only commonplace in vehicles such as the ...
With the new year just around the corner, here’s a look at the Test Automation trends that have the potential to dominate. DevOps is being relied upon more than ever. With there being strong Market Drivers for the adoption of DevOps, the need for Test Automation has also never been greater. But what’s next after ...
Having the right Test Automation plan helps bridge gaps and fragmentations in the complex mobile environment. Figuring out the best Test Automation plan is one of the biggest frustrations for today’s digital teams. Organizations struggle to develop cross-platform Test Automation that can fit with their Continuous Integration cadence, their regression cycles and other elements of ...
For this interview, we talked to Greg Wester, Senior Member Technical Staff, Craig Jennings, Senior Director, Quality Engineering and Ritu Ganguly, QE Director at Salesforce. Salesforce.com is a cloud-based enterprise software company specializing in software as a service (SaaS). Best known for its Customer Relationship Management (CRM) product, it was ranked number 27 in Fortune’s 100 ...
Automated Testing is a huge part of DevOps, but without human-performed quality assurance testing, you’re increasing the risk of  lower-quality software making it into production.  Automated Testing is an essential DevOps practice to increase organizations’ release cadence and code quality. But there are definitely limits to only using Automated Testing. Without human quality assurance (QA) ...

Leave a Reply

Your email address will not be published.

Stay in the loop with the lastest
software testing news

Subscribe