Quantum framework introduction
Quantum is Perfecto's automation framework, designed to give you everything you need from a framework (based on QAF) with built-in seamless Perfecto integration. Quantum provides TestNG integration for execution management, the ability to write BDD scripts, and a wide range of pre-built commands. Quantum is a free, open-source framework download from GitHub and can be extended as needed.
In the world of ensuring quality for digital applications (mobile, web), Perfecto recognizes the challenges of:
- Building a robust, sustainable, continuous-quality solution that enables product innovation and acceleration of time to market (agile)
- Enabling testers with varying skill sets to be productive in building the required testing components
- Providing visibility to decision-makers regarding the quality of the application on an ongoing basis
The fundamentals of a test automation framework need to enable testers to do the following:
- Build sustainable automation scripts
- Accelerate execution cycles via optimized planning of script executions across resources (devices, browsers) in a scalable manner
- Leverage a reliable testing lab in the cloud that provides coverage of the latest application features
- Distribute visibility of the app quality to decision-makers and developers through a robust top-to-bottom reporting solution
Quantum enables testers to achieve these goals. It facilitates:
- Easy environment setup: Lab access, user authentication, and driver management
- Test creation: BDD for easy-to-use English-phrased steps and application objects, and a more simple-to-use environment for Java-skilled users
- Result analysis: Perfecto Smart Reporting incorporated into the test for analysis of test executions, with no intervention required by the test writer
- Data Driven mechanism: Support of commonly used data formats, like XML and CSV
- Device management: Support of smart wait for devices, including queuing and retry mechanisms
- Perfecto pre-defined BDD steps, including all Perfecto Mobile actions as Java and Cucumber utilities
We provide the following resources:
- For information on dependencies and a basic procedure that explains how to get Quantum up and running on the community samples provided, see our Quantum Starter Kit documentation.
- For comprehensive, self-paced online training, see our Quantum course.
- To provide input and contribute code, visit the Quantum framework on GitHub.
To get started with the Quantum Starter Kit on your local client, expand and perform the following procedures.
To start using the Perfecto-recommended Quantum framework, you need to move the Quantum Starter Kit onto your local client. This kit contains the required example structure, configuration files, scenarios, and design steps. To move the kit, you can:
- Download and import it into Eclipse
- Use Git's bash clone functionality, followed by an import into Eclipse
- Use Eclipse's eGit plugin
Here, we will guide you through using the eGit plugin.
To download and import the Quantum Starter Kit into Eclipse with the eGit plugin:
-
Navigate to the Quantum Starter Kit on GitHub. Most likely you will want to fork it into your own account, to keep working on your own version within the team.
- Click Clone or download.
- From the list, select one of the following:
SSH if you have a Github user and your SSH key is associated with the client. This is the default format (starting with
git@
)- HTTPS if you do not have a Github user
- Copy the link to the clipboard.
- In Eclipse, click File > Import.
-
In the Import wizard, on the Select panel, select Maven > Check out Maven Project from SCM. Then click Next.
-
In the Target Location panel, select git as the SCM provider and paste the project link.
- Do one of the following:
- Click Next to change the workflow location.
- Click Finish to import the project into the default workspace location.
-
Locate to the project in the Navigator and PackageExplorer.
This project is now connected to the Quantum project via git. You can perform git pulls or fetches directly from Eclipse to get the latest changes and download them to the client. Right-clicking the project, for example, gives you the following Team options.
The QAF BDD plugin is useful in the Eclipse IDE for several reasons:
- For better debugging while working on the QAF/Quantum framework
- To get a list of predefined bdd/gherkin steps that are available for implementation
- To navigate to the implementation code of steps in the feature file
To install the QAF BDD Eclipse plugin:
-
In Eclipse, select Help > Install New Software.
-
In the Install wizard, in the Available Software panel, in the Work with field, enter the following URL: https://qmetry.github.io/qaf/editor/bdd/eclipse/
- Select the check box to the left of the QAF items listed.
- Click Next twice to proceed with the installation.
- In the Review Licenses panel, accept the license and click Finish.
- Restart Eclipse.
If your organization has network restrictions in place that prevent you from accessing the download link for the QAF BDD plugin, expand and perform the following alternative procedure to set up the plugin in Eclipse offline.
The QAF BDD plugin is useful in the Eclipse IDE for several reasons:
- For better debugging while working on the QAF/Quantum framework
- To get a list of predefined bdd/gherkin steps that are available for implementation
- To navigate to the implementation code of steps in the feature file
To install the QAF BDD Eclipse plugin offline:
-
Download and extract QAFBDDOffline.zip.
-
In Eclipse, go to Help > Install New Software.
-
In the Install wizard, in the Available Software panel, click Add.
-
In the Add Repository dialog box, do the following:
-
Click Local.
-
Select the extracted folder path that contains the plugin content and click Open.
-
Add the name of the plugin and click Add.
-
-
If you selected the correct path, the QAF plugin should now be listed in the Available Software panel. Select the plugin, click Finish, and then follow the prompts of the installation process.
With Eclipse, you also need to install the Eclipse TestNG Plugin. For download information and installation steps, see https://testng.org/doc/download.html.
In addition, IntelliJ IDEA users should install the Cucumber Plugin (Community version only). IntelliJ IDEA version 7 and later already includes the TestNG Plugin.
If, after installing the plugin, you are not able to navigate to the step definition code, you also need to install the Cucumber for Groovy Plugin.