The following pages and posts are tagged with

TitleTypeExcerpt
Describe Test Step Page Test step can be defined in .java or .bdl files. It consists of description, with which it is known. Step in Java @QAFTestStep(description="meaning full step descriptor") public <return_type> stepMethod(<parameters>) {...
Test Step Metadata Page Supports for Custom Meta-Data at test step level. Example: Here, groups is a custom meta-data for step. JAVA @MetaData(value = "{'groups':['login']}") @QAFTestStep(description = "user login with username {username} and password {password}") public void login(String username,String password) { //To-do } BDD STEP DEF <div...
Test Step Threshold and time tracking Page Test Step Threshold In Built ‘threshold’ Test Step Meta-Data Support. Example: Login Step should be executed in 10s, if takes more than 10s then it displays as warning in report. User can specify threshold value by following way, Java Step @QAFTestStep(description = "user logins with...
Assertion/Verification Page Assertion Service provides commonly used assertion methods in web application tests. It automatically logs result of assertion/verification with appropriate message and screenshot. When using webdriver API for development different assertion and verification methods are available with extended webelement object itself. For example, assuming that firstName is of type QAFExtendedWebElement and...
Creating Test Pages Page Implementation of abstract methods The BaseTestPage class contains following abstract methods that need to be implemented in test page class. protected void initParent() protected void openPage(PageLocator loc) public boolean isPageActive()...
Custom component Page To create a component you need to extend com.qmetry.qaf.automation.webdriver.QAFWebComponent. public class Property extends QAFWebComponent { @FindBy(locator = NAME_LOC)...
Data Beans Page To provide data you can use data beans also. To create data bean you required to extend BaseDataBean class. Data bean can be created to provide data to filling forms to communicate data between two or more test case/page and so on. Main advantage of using data beans is ...
How can I create custom component/element? Page Custom component can be created by extending Component class. public class TestComponent extends QAFWebComponent{ public TestComponent(String locator) { super(locator); } …. } Custom...
Locating Elements Page Locating Elements In order to locate element QAF provides selenium-1 style syntax. This approach has two benefits: First of all, you don’t need to hardcode or fix strategy for locator in code (for example By.xpath(myxpath)) with qaf locator strategy you can easily switch form one locator to anoter...
Locator Repository Page QMetry Automation Framework provides concept called “Locator Repository” which can be used to abstract your element locator outside the code. Moreover, you can have separate locator repositories per environment/platform and you can configure at runtime to load environment specific locator repository. Creating Locator repository You can create Locator repository...
Page Design Concepts Page Page Hierarchy One page becomes parent/launcher of another page(s) results in creating navigation hierarchy. Single navigation route This is the normal page hierarchy were a page can be launched from only one page. Consider the example where page P is home page, P11 and P12 can be navigated...
Page launch strategy Page By default page strategy is launch only if required. You can set strategy by using setLaunchStrategy method. Available launch strategies are onlyIfRequired, alwaysRelaunchFromParent and alwaysRelaunchFromRoot which are defined by enum LaunchStrategy. To set specific strategy for all test one can set appropriate strategy in page constructor. In case of test...
Page Locator and Object arguments in Launch page Page The page locator is intended for identifying exact locator when there are multiple locators available to open the page from the parent page. The ideal example is item details page which can be open from item list page. On item list page there can be list of items with available...
QAF listeners Page QAF provides command listener support for both Selenium 1 and 2 API. The general idea is that one or more objects (the listeners) register their interest in being notified of command execution on selenium/webdriver/webelement. The listener can perform some actions or track details before/after command execution as well as on...
Wait Service Page There is a listener that automatically injects wait if required before executing selenium command. However, one can utilize wait service which provides different wait methods. In test case method you can create object of WaitService and utilize different wait methods. When using webdriver API for development different wait methods are...
Web Services Testing Page QAF provides support classes for Webservice Testing. It displays all details of web services request/response in QAF Report. You can create a new test case or suit by extending `RestWSTestCase` class. On extending `RestWSTestCase` following object will be available to use in your test. 1. **WebResource** [WebResource](https://jersey.java.net/apidocs/1.19/jersey/com/sun/jersey/api/client/WebResource.html) instance can be...