Integrating Third-Party Testing Tools with FlexDeploy

There’s no denying that automated testing plays an important role in an efficient development process. That’s why FlexDeploy allows users to create customized testing tools. By configuring a custom testing tool, users can integrate almost any third-party testing tool with FlexDeploy. Thanks to the FlexDeploy JUnit Plugin, we can now import test results from any testing tool that can generate a JUnit Report! In this guide, we’ll learn how to configure FlexDeploy to run tests and import their results from a tool not natively supported in FlexDeploy.

What We’ll Do:

* Create new Testing Tools and Test Types in FlexDeploy.
* Create a Testing Instance in FlexDeploy, reference installation of Testing Tool when necessary.
* Create a Test Definition Workflow for the newly added Testing Tool.
* Configure Test Automation on a project in FlexDeploy to use the new Testing Tool.
* Execute the tests from a project in FlexDeploy.

What We’ll Use

* For our external testing tool, we will be using Tricentis Tosca 11.2 (https://www.tricentis.com)
* FlexDeploy JUnit Plugin (JUnit Plugin Guide)
* FlexDeploy 4.6 (https://flexagon.com/flexdeploy/)

Step 1: Creating the Testing Tools and Test Types

* First, we need to create a new testing tool in FlexDeploy. To do this, we will open the Administration menu in FlexDeploy, then choose Test Automation > Testing Tools. On the Testing Tools screen, click Create to start creating a new testing tool.
* On the New Testing Tool screen, we will need to provide a name and define any properties the tool will require. If no properties are required, just give it a name and click save. To define a property, simply click the create button under Testing Tool Properties. In this example, I used “Tosca” as the tool name, and then I defined a property for the path to the Tosca CI Client.
* The next step is going to be creating test types. To do this, we will go to the Test Automation section of the Administration menu again, but this time, we’ll choose Test Types. On the Test Types screen, click Create, and give a name for the test type we will be running. I’m using “Unit Test.”

Step 2: Creating a Testing Instance

* Now that the testing tool and test type have been created, it’s time to create the testing instance. For this, we’ll go to the Topology Screen and choose Integrations. From here, we will open the Testing tab at the top of the screen. Lastly, click the “+” icon to begin creating a testing instance.
* On the Create Instance screen, we’ll give our instance a meaningful name and code, select the testing tool we created earlier, and enter any properties required by the testing tool. After all the fields are filled in, click Apply, then click on the Environments tab to specify what environments we will be running tests in.
* On the Environments screen, we should add any environment we want to execute these tests in by dragging it from the list on the right into the center of the page. I will be using the QA environment. Finally, after adding environments, press Save. This will bring you back to the Test Instances screen, and from here, we will click on the instance again to open it and select the Environments tab again.
* Back on the Environments screen, we see that there are no endpoints associated with the new Instance, so we will click the Endpoints link, and drag in the endpoint where our tests will be executed. In this example, we’re invoking a command line utility to run the tests, so we need to select an endpoint that has the utility installed.
* Once the Environment/Instance pair has an endpoint associated, press Save. Now we’re done with topology, and we can start creating a workflow.

Step 3: Creating a Test Definition Workflow

* Now that we’ve got our topology configured, we can start building a Test Definition workflow that will execute tests and parse the results. To start, let’s go to the Workflows screen and click the “+” icon on the left side above the workflow browser. On the new workflow form, we’ll give the workflow a meaningful name and choose Test Definition from the Workflow Type drop-down menu.
* Click save if you haven’t already, then select the Definition tab at the top of the screen to open the workflow editor.
* The testing tool I selected has a command line interface, so this workflow will use the Windows Shell plugin to execute the test. We’ll do this by dragging the execute operation of the Windows Shell plugin onto the canvas. For the Code Snippet input, we’ll first change to script input by pressing the ‘T’ icon. This allows us to easily use the property we defined earlier on the Test Instance. Note: To find properties easily, with groovy script input enabled, click the “(x)=” icon and start typing the property code.
* This testing tool also allows us to format the test output as a JUnit report, so we will also be using the JUnit plugin to parse the test results. This operation only needs the path to a JUnit report XML file. We’ll change the input to groovy script so we can easily use the FD_TEMP_DIR property to reference the location we specified in the Windows Shell step earlier.
* After configuring the JUnit plugin, our workflow is complete. We just need to activate the workflow, and we’re ready to set up Test Automation on a project.

Step 4: Configuring Test Automation on a Project

* Now that the workflow is activated, we’ll go over to the Projects screen and open the project we want to set up Test Automation on. The next step is opening the Test Automation tab on the project. Here, we’ll define Test Cases for FlexDeploy to run using the new workflow. First, we’ll configure a Strategy by selecting the Environment and Instance the code we’re testing is deployed to.
* With the strategy saved, we can create a Test Set to contain our tests. To do this, we open the Test Sets tab, and then press Create. On the Create new Test Set screen, we give the test set a meaningful name, select a test type, then press Next to go to the qualifiers screen. Qualifiers can be used to set the expected results of the tests being run. If we wanted to allow any failures, we would set that here. For this example, we’ll be expecting all the tests to pass, so we’ll specify that 100% of the tests must pass.
* Now that we have a Test Set, we can create a Test Definition to put in it. To start creating a Test Definition, Open the Test Definitions tab, and click Create.
* On the Create new Test Definition screen, we’ll enter a name for the Test Definition and select the Test Set, Test Tool, and Testing Instance. After that, we’ll click Next to move to the Workflow Selection screen.
* On the Workflow Selection screen, we choose the workflow we just created and press Next again.
* On the Streams selection, we select what stream we will be executing tests in. We’ll leave these on their default settings and just press Next to go to the Qualifiers screen.
* Here we can set qualifiers the same way we did for the test set. We’ll use the same values as before because we’re expecting every test to pass.
* Once the qualifiers are set, we can save the Test Definition, and we’re ready to run automated tests on our project.

Step 5: Executing the Tests

* Now that our tests are configured, we’re ready to run them with FlexDeploy. We’ll go back to the execution tab of the project and make sure we have successfully deployed the project before we run any tests. Once the project has been deployed, we can open the Run Tests Request form by clicking the Test button in the upper right.
* On the Run Tests Request form, we can select the Environment, Instance, and Stream where we want to run tests. We can also optionally select a Test Type, Test Set, and Test Definition if we only want to execute specific tests. Once all the required selections are made, we click Submit Request to execute the test workflow.
* Once the tests are complete, we should see a successful workflow execution. To view the test results, we can click the workflow execution ID to show more information about the test workflow.
* On the Project Workflow Execution Screen, we can open the Test Results tab at the top to see our test results. Here we see our test set, and when we expand the test set, we can see test definition results. Clicking the name of the test definition will open the Test Definition Execution popup, which lists all the test cases executed and information about them. https://goo.gl/FZ49tu #DataIntegration #ML

A Mobile-Powered Learning Makeover

There was a time when Aggreko didn’t allow employees to take out their mobile phones during technical training sessions. However, in an effort to transition from being a training-focused organization to a learning-focused organization, we have embraced mobile apps as a fundamental part of Aggreko’s “Be Your Future” learning program.

With the understanding that collecting certificates and building compliance won’t be enough for the challenges ahead, we are focusing on delivering a dynamic learning approach to support high-performing teams. “Be Your Future” embodies continuous learning to enable our employees to efficiently overcome obstacles they’re facing in the moment and be innovative and adaptable to the requirements and pace that our customers demand.

By the end of 2018, we’re on track to offer more than 300 courses to more than 2,000 Aggreko employees across the globe through Guidebook, a mobile app creation platform.

Digitizing the Classroom Experience

While a classroom-based course is a valuable way to help master the skills necessary to deliver superior service to customers, at Aggreko, we saw opportunity to modernize. In response to industry trends, we sought new ways to use technology and create digital efficiency for improved decision making.

First, we wanted to cut down our dependency on paper. We were printing huge stacks of handouts for every training session, all of which ended up getting tossed in the recycling bin.
Aggreko leadership also recognized how useful smartphones are for schedules and course materials, so we included them as an asset in our trainings. Our thinking was that millennial and Generation Z employees, as well as many boomers, certainly have their phones with them in the field, so why take them away during training? We wanted to bring the same mobile-based operational and social behavior that we’re encouraging in the field into the classroom.

To create a classroom digital learning experience that is collaborative and engaging, we turned to Guidebook.

My Guide, Aggreko’s branded, enterprise mobile app built on the Guidebook platform, offers our employees a new way to build connections, socialize and collaborate — whether through sharing pictures or asking questions. Compared with email and texts, the app gives people one place to “Be Together” — one of Aggreko’s core values — during the learning journey.
“We are creating a new learning culture at pace, from the ground up,” said Kate Sberna, Aggreko’s vice president, global learning and talent. “And My Guide is a key enabler in bringing learning and information to our employees and meeting them where they are.”

The app also produces training environments that have the same feeling of excitement and sharing that surrounds an in-person event. To build anticipation leading up to a course, Aggreko instructors pre-populate My Guide with content, create automated posts around schedule and logistical details, and post pre-course discussion questions and other information to help employees plan and start to engage.

“I really like how My Guide allows the technicians to connect with each other and the instructor prior to the class,” said Matt Barry, Aggreko’s technical curriculum manager. “This helps build some excitement and momentum going into the class.”

Our employees also have expressed satisfaction with the new app. One shared that “You really felt connected to your fellow participants prior to, during and even after the event.”

Extending Into the Field

Aggreko’s learning journey continues beyond the classroom. All handouts and handbooks that were printed are now digital, and learning is accomplished through the My Guide app that goes with you on the job. Our employees have digital knowledge, resources and even pictures and memories from the in-app social feed, Interact, in the palm of their hand.

During the first pilot, one employee raved about not having to haul around a massive binder of training manuals while on site with customers. Instead of trying to track down information on schematics located on a piece of paper floating around their truck, workers could reference valuable resources digitally, just a few clicks away on their phones.

By empowering everyone on their own learning journey and making it easier to find an expert and be an expert, the app is sparking a change in how our employees connect, communicate and learn. One employee said, “I think [the app] engages us in what is now more natural interaction for everyone. It helped to remove communication barriers and therefore we were more invested when it came time for workshop participation.”

Mobilizing for Hurricane Relief

When Hurricane Harvey brought widespread flooding and devastation to Houston in August 2017, our team was even able to use Guidebook to create a disaster relief tool.
At the time, Aggreko’s services were in high demand, and our employees were busy with disaster recovery efforts, not only for the greater Houston area but also for our colleagues in need.

Volunteer offers from both the operational and office-based workforce were abundant, but it was becoming overwhelming to track, manage and communicate what was needed and who was available.

Already in the process of rolling out Guidebook for our global learning program, we got creative. We considered: Could we use the existing mobile app platform to quickly mobilize employees’ relief efforts?

The answer was yes. In less than three days, our team created the Be Together Houston app to mobilize, train and communicate with employee volunteers who wanted to help colleagues impacted by the storm. Like My Guide, the new app was a reflection of the “Be Together” value — asking for the best of each other and harnessing the company’s scale and diverse skills to grow stronger together.

Be Together Houston offered an easy way to efficiently organize volunteers, housing all logistics in a single location. At a glance, people could see times and locations for volunteer opportunities, like meeting at a colleague’s home to remove drywall. There was a web view in the app from the existing web page form to enable donations, and Guidebook’s Interact feed was full of pictures as employees shared their experiences helping each other.

In all, our teams truly came together. We were heartened by the positive messages in the Interact feed. It gave us the opportunity to be there for our people and for our people to be there for each other.

It also gave us the chance to uncover a learning opportunity. We were able to add a unique training element to the relief efforts, offering courses on how to make repairs. When a colleague hosted a course for a specific skill, like how to remove or hang drywall, details were shared about when and where the course was happening via the Be Together Houston app. Employees could view schedules and sign up directly in the app, as well as invite friends and family to join.

Aggreko’s Learning Center served as the emergency response headquarters during the relief efforts with the mobile app at the center of it all — a powerful tool to help everyone unite and learn while helping the community recover.

Tip of the App Iceberg

We anticipate this being only the beginning of Aggreko’s journey with mobile apps. When our senior leadership team saw the enthusiastic adoption of the new mobile apps for learning, they began creating apps for leadership events and our annual conference.

Aggreko has already seen an 80 to 100 percent reduction in print costs for every course that uses a mobile app. Overall, we expect a 50 to 60 percent decrease globally in course material printing costs by 2020, with further reductions in the future.

It also allows us to avoid costly investment in new devices for the classroom by using the devices employees already have.
Employees who complete courses with the app want more, asking for every piece of content to be digital. They see that the company takes their development seriously, which we hope will impact retention.

It’s an exciting time of digital transformation. With Guidebook, we’re investing in a smarter, more strategic way. We’re investing in our employees’ futures.

Walter Davis is global learning and talent technologies manager at Aggreko. He can be reached at CLOmedia.com. 

Tags: “Be Your Future”, Aggreko, Aggreko’s Learning Center, Digitizing the Classroom, mobile apps https://goo.gl/Cy7FJN #HR #WorkForce #CLO