Test using QMetry Automation Framework

Introduction

QMetry Automation Framework is designed to solve common industry problems related to testing complex web systems. The framework is best suited for writing Automated Web, Mobile Web and Mobile Native Application UI Tests simulate real user activities on the page. The framework is built upon java and integrates TestNG, Selenium/Webdriver, Appium and Perfecto. 

Due to the framework’s thorough design, test developer does not need to worry about common tasks such as thread safe browser session for running test in parallel, reporting or to incorporate result with test management tools. The tests run can be configured through standard testing configuration files, the test run filters and behavior can be changed within the config File. 

Import Test Results generated from .feature file

Here is how you can specify the Test Cases and Test Steps in .feature file -

Test Case TagTest Step Tag
Scenario > nameStatement with Given, When, Then keyword 


QMetry uses following tags of QAF output result file to create Test cases and Steps.

Test Case TagTest Step Tag

Meta-info.json > metaData> methods > name

checkPoints > message


Supported file types : ZIP

The following feature file is showing syntax for story association and test case reusability.



Sample Test Result File

Click to download a Sample Test Result File: Feature json sample.zip


Meta-info.json


Test Case Reusability and Story Association


Keyword

Description

@testcasekey

  • While importing test result file, if you want us to reuse Test Case then it is possible with @testcasekey.
  • If Test case summary and Test step summary (for all steps) match with the automated Test case name ( elements > name) and steps (elements > steps > name), Test case key and version will be reused.
  • If Test case summary matches with the automated Test case ( elements > name) but Test step summary does not match (for any of the steps), Test case key will be reused but a new version will be created.
  • If Test case summary does not match, a new Test case will be created.

@storykey

  • While importing the test result file, if you want to link Test Case to any of the existing story then it is possible with @storykey annotation.
  • Created/Linked Test Case will be linked to Story Key


Import Test Results generated from .bdd file

 Click here to expand...

Here is how you can specify the Test Cases and Test Steps which will be created in QMetry as a part of the result files -

Test Case TagTest Step Tag
Meta-info.json > methods > nameSampleTest.json > Checkpoints > message


Supported file types : ZIP

Sample Test Result File

Meta-info.json

SampleTest.json


Entities

While importing result file, you can choose which level of hierarchy do you want. Test Case-Test Step or  Test Scenario-Test Case.

  1. 1st level of Entity will be identified by "Scenario Name" attributes. If it already exists, then it is not created again.
  2. 2nd level of Entity will be identified by "checkPoints Message" attributes. If it already exists, then it is not created again.

If you would like to see values for these attributes, you can verify in Automation Attributes panel of Test Case/Test Scenario issue page.


Note : By default, Automation attributes panel will be hidden. If you would want you can enable it. Refer Project Settings to know how to enable Automation Attributes panel.


Story Association

While importing the test result file, if you want us to link Test Case to any of the existing stories then it is possible.

An annotation is added to the BDD file to associate scenarios with a particular story in JIRA.

Another option is added to the Java test file to associate scenarios with a particular story in JIRA.


Test Case Reusability

While importing the test result file, if you want us to reuse a Test Case then it is possible.

An annotation is added to the BDD file to reuse test cases in JIRA.



Another option is added to the Java test file to reuse test cases in JIRA.



How Test Case Reusability works if test case key is not provided in BDD file

While importing the test result file, if you want us to reuse a Test Case then it is possible.

  1. If the Test case summary and Test step summary (for all steps) match with the automated Test case name ( Meta-info.json > methods > name) and steps (test_file.json > Checkpoints > message), Test case key and version will be reused.
  2. If Test case summary matches and Test step summary do not match (for any of the steps) with the automated Test case ( Meta-info.json > methods > name), Test case key will be reused but new version will be created.
  3. If Test case summary does not match, the new Test case will be created.

Execution Attachments

To add attachments in test run execution through QAF, enable capturing screenshots in QAS. After that you will get folder with all screenshots of automation testing.

You need to provide zip file containing that output folder of screenshots and json output folder.




The relative path of screenshots will be referred from "checkpoints > screenshots" to find the attachment at the relative path in the zip file that is being uploaded.


For example,

If the screenshot path is ../img/TC_11.png, then the file name with TC_11.png needs to be available in img folder in the zip file at root level.