Understanding Agent Concept
Users can define Agent Alias and add tasks for QMetry Agent. On activation, the Agent requests for task through QMetry. QMetry Automation Agent checks schedule(s) set in QMetry and executes the automation tests. Users can run Custom Command regardless of Automation Framework or Build Framework. The automation agent can be run immediately or can be scheduled on future date and time. Users can schedule recurring execution of command. The execution will be scheduled automatically as per set occurrences. QMetry Agent keeps running the jobs accordingly.
The flow works like this:
- Configure QMetry Agent in Integration > Automation Agent. Download the Agent. Run custom command through QMetry Automation Agent wizard.
- QMetry Automation Agent will trigger the execution through custom command, the test result file will be generated accordingly.
- Import the above result file in QMetry using REST API.
Note: Automation related rights are assigned from Customization > Roles. The logged-in user will have access rights over Agent feature accordingly.
QMetry Agent Configuration
Compatibility : QMetry Agent is a java executable file that needs Open JDK 17.
Automation Agent Key
Use this key to configure QMetry Automation Agent.
To generate Automation Key, go to Integration > Automation Agent and click on the Generate new Key.
Steps to configure QMetry Automation Agent
Step 1. Go to Integration > Automation Agent.
Step 2. Expand the Download & Run Agent section, if not expanded already.
Step 3. You will find Agent download and installation instructions on the screen. Download QMetryAgent.zip by clicking on the Automation Agent download link.
Step 4. Extract the QMetryAgent.zip on the computer drive.
Step 5. Open the QMetryAgent folder.
Step 6. Run <QMetry Agent Directory>/ QmetryAutomationAgent.jar by clicking on it.
The QMetry Automation Agent wizard opens.
The QMetry Automation Agent has the following fields on it:
- URL: The URL of your QMetry Test Management application instance.
- API Key: Enter Automation Agent Key. To generate Automation Key, go to Integration > Automation Agent and click on the Generate Key as described under Automation Agent Key above.
- Agent Name: Enter name of your preference as Agent Alias to identify the specific agent.
- Running on VM: Users who want to run agent on virtual machine, can do so by setting this configuration. The manual settings are not required.
Interval Time: By default, the interval time between two scheduled jobs will be of 180 seconds. You can change the time by modifying the "Interval" parameter in the QMetryAgent.properties. The minimum value should be 60 seconds.
Click on the Start Agent button.
Users can also view logs by clicking on the View Logs button.
The Agent is added on the list of Registered Agents with Status as “Active”.
The screen lists out all agents added in QMetry with the details of OS, Machine Address, Status (Not Registered, Active, Inactive, Not Applicable), and Schedules.
You can filter the Registered Agents on the following criteria:
When you are done with Agent configuration in the Integration > Automation Agent, download and run the Agent, Carry out automation testing by scheduling tasks for Agent.
The columns on the screen are described below:
- Alias: This is Agent Alias mentioned by user while adding Agent.
- OS: Operating System on hosting machine on which the command will be executed.
- MAC Address: Machine address of hosting machine on which the command will be executed.
- Status: The Agent status could be ‘Active’ or ‘Inactive’.
- Active: QMetry Agent is executed to request schedule from QMetry application. When you start the agent, it attains ‘Active’ status and remains ‘Active’ till it keeps requesting for schedule from QMetry application at the frequency defined.
- Inactive: As stated above, QMetry Agent and its connection with QMetry application are checked at a defined interval. If QMetry Agent is not communicating with QMetry application for more than the defined time and it stops requesting for schedule, then the QMetry Agent status is updated as ‘Inactive’.
- Schedules: The column shows number of pending schedules and in-progress schedules. For example, 4 Scheduled / 2 In-progress.
- Updated At: This is system date and time when the Agent is added to QMetry.
The Actions column includes the Schedule, History and Delete buttons.
- Schedule Agent: Click on the Schedule button to schedule QMetry Agent run.
User can run the schedule on the spot or at a specific scheduled date and time.
Note: QMetry Agents can be scheduled irrespective of the Approval workflow if the e-Signature feature is enabled.
Custom Command Input
Users can run Custom Command regardless of Test Framework or Build Framework. This is a command line input, which you provide on the command line interface.
The following command includes the Project path on your local drive and the test command to trigger the execution in accordance with the language and Framework you use. The result file will be generated in the Project directory accordingly.
cd D:\QMetry\cucumber-maven-example-master && D: && mvn test
Schedule Automation Agent Run
You can schedule QMetry Agent to run at your preference.
(A) Run Now
(B) Run Later
Only one kind of scheduling could occur Run now / One time / Recurring. i.e if Recurring schedule exists and if user submits Run Now option then the Recurring Schedule Job will be deleted.
(A) Run Now
If you want to execute the Agent job immediately, then select the Run Now option and click Submit.
(B) Run Later
You can schedule the agent to run on a future date and time. Scheduling executions helps testers set execution schedule to be run one after the another.
a. One Time Occurrence
To schedule the run only once on particular day and time, select the Run Later option for Schedule and One Time option for Occurrences.
- Schedule: Run Later
- Occurrences: One Time
- Schedule date and time: Open the calendar and select date and time to initiate the Agent job, and click Submit.
- Schedule Date: This is scheduled date to execute the command. By default, the field shows current system date in MM-DD-YYYY format. User can modify the date as per requirement. To pick date from calendar, click the calendar icon adjacent to the field.
- Schedule Time: This is scheduled time to execute the command. Three separate number fields are provided for Hours, Minutes and Seconds. By default, the drop down list shows current system time in HH:MM:SS format. User can modify the time as per requirement by selecting the suitable time to execute the command. Schedules will be sent to the agent at the defined time.
b. Recurring Occurrence
To schedule the recurring runs during a particular period, select the Run Later option for Schedule and Recurring option for Occurrences.
- Schedule: Run Later
- Occurrences: Recurring
- Starting On and Ending On: Select dates using calendar
- Schedule time: Enter time in HH:MM:SS format
- Recur: Select one frequency from the following and its corresponding option to schedule the QMetry Agent run recurrently.
Then click Submit.
View QMetry Automation Agent History
- Go to Integration > Automation Agent.
- On the Registered Agents section, click on the History button to view the schedule details of that particular Agent. A pop-up screen opens that displays schedule details of the Agent.
The columns include Custom Command Input, Scheduled At, Execution, and Execution Status.
Execution Status is categorized as below:
- Scheduled: Job is yet to be executed.
- Completed: Job executed successfully.
- In-progress: Job is initialized and running.
Refresh the page by clicking on the Refresh icon, at the top right corner, to view the latest execution status of the job.
Logs are available to download by clicking on the Download icon under the Action column.
Count of pages are displayed at the bottom of the screen. Navigation buttons are provided to let users navigate through the pages.
- Back to Agents: Click on the button to navigate to the Automation Agent screen.
Once the Agent is schedule, Total Schedules count increases on the Schedule screen.
Task immediate on schedule gets executed. Other scheduled tasks get executed in sequence in accordance with their scheduled date and time.
- Go to Integration > Automation Agent.
- On the Registered Agents section, click on the Delete button for the Agent you want to delete.
Import Automation Test Result File
The Agent job is triggered to execute the command as per set Schedule. The result file is generated in accordance with the command. Use this file to update the test assets and execution status in QMetry.
To know more about importing automation test results into QMetry, refer to Import Automation Results through REST API.
Other ways to push automation results into QMetry:
View Test Assets and Test Results in added/updated in QMetry
On successful completion of automation testing, test assets are added/updated to Test Cases and Test Suites modules.
The test run results are uploaded on the Test Execution screen.
Open the Test Cases module. The test cases imported through automation testing are displayed with "Automated" Testing Type.
Go to the Test Suites module. You can see the Auto Generated test suite added in QMetry as a result of automation testing.
Test Execution Screen
Test execution status of test cases and steps are updated on the Test Execution Screen.
- Go to the Test Suites module.
- Open the test suite imported in QMetry as a result of automation testing.
- On the Test Execution tab, click on the execution icon.
It opens the Test Execution Screen displaying test execution status of test cases with their test steps.