Testing Frameworks Integrated With Perfecto

>Testing Frameworks
Testing Frameworks 2018-06-27T11:02:25+00:00

Open Source Frameworks


Perfecto for Appium delivers the full capabilities of the open source based on Remote WebDriver with enhanced automation, end-user environment conditions and enterprise-grade functionalities – combined with the full functionality of the Perfecto cloud-based continuous quality lab. Developers familiar with Appium now have a single approach for device-agnostic mobile app testing using real devices.

Perfecto improves upon Appium by:

  • Enhancing existing Appium test code with additional end-user environment and automation capabilities
  • Enabling continuous quality processes with Appium within your organization in an always-on cloud-based lab
  • Increasing your test coverage by adding more devices, platforms and use cases to your existing test plans
  • Managing your entire Appium quality resources in a secure and enterprise-grade cloud-based lab

Calabash is an automated testing technology for Android and iOS native applications
Calabash integration with Perfecto enables testing on real devices from anywhere in your organization, within the Perfecto Continuous Quality Lab. This includes a large scale of devices located in various geographies, and capabilities such as device logs, device vitals, video, detailed reports and more.


CodeceptJS is a backend testing framework that works with Selenium to test website functionality on the front-end. Based on Mocha testing framework. It helps you to write acceptance tests from user’s perspective, every command is described as an action of a user visiting a site therefore, creating scenario-driven testing in BDD-style.

Most notably, CodeceptJS is synchronous or said differently, test scenarios are linear, your test should be too. It is also backend agnostic. CodeceptJS provides a general high-level API which can easily be executed using many popular test runner libraries.


Espresso is an open-source framework from Google and an instrumentation-based API that works with the AndroidJUnitRunner test runner. Its main function is that it allows you to execute UI tests on Android apps.
After instrumenting your app, the tool provides an easy way to access the objects and execute actions and validations. Here’s a quick guide to setting up Espresso and writing Espresso tests on devices in Perfecto’s Continuous Quality Lab.


Gauge is an end-to-end test automation framework built by ThoughtWorks; it’s cross-platform and open-source. It supports multiple languages including Ruby, Java, C#, Python, and JavaScript.

Gauge gives you a business layer on top of your test “specifications” to make them more readable and more understandable. Gauge tests are in Markdown which makes writing and maintaining tests easier.

The Gauge framework offers several benefits in addition to its English language syntax. The built-in parallel execution feature helps easily manage executing large test suites fast. The community has also created a broad set of plugins to extend Gauge’s modular architecture.


Nightwatch.js is an easy to use Node.js-based End-to-End (E2E) testing solution for browser-based apps and websites. It uses the powerful W3C WebDriver API to perform commands and assertions on DOM elements. The tool has a few built-in plugins for Junit XML reporting that make it easy to send steps reports to CI servers such as Jenkins, TeamCity and Hudson, as well as a Grunt plugin for simple task execution. You can execute your tests against a local Selenium server or against a cloud server such as Perfecto and others. This solution is one of the main competitors to Protractor.


Protractor is an end-to-end test framework for Angular and AngularJS applications. Protractor runs tests against your application running in a real browser, interacting with it as a user would. This framework is highly supported by contributors from Google, the main leader behind AngularJS. This framework that is built on top of Selenium and is the most widely adopted framework, especially when testing Angular/AngularJS websites. In addition to many extensions and plugins that Protractor has for things such as visual testing and more, Protractor has a unique synchronization mechanism that can automatically execute the next step in your test the moment the webpage finishes pending tasks so you don’t have to worry about waiting for your test and web page to sync.

Another great thing about Protractor is its ability to support BDD and Cucumber scripting. If you’re leveraging BDD as part of your Angular/AngularJS website SDLC, then this framework should be a great fit for you.


Perfecto and Infostretch are proud to present Quantum, a new open source framework (based on QAF), enabling testers to achieve the following goals:

  • Build sustainable automation scripts.
  • Accelerate execution cycles via optimized planning of script executions across resources (devices, browsers) in a scalleble manner.Leverage a reliable CQ Lab in the cloud that provides coverage to the latest application features.
  • Distribute visibility of the app quality to decision makers and developers through a robust top-to-bottom reporting solution.

For teams using Selenium to test web apps, Perfecto provides a familiar RemoteWebDriver implementation to simplify connectivity, configure capabilities, and integrate unique Perfecto features such as WindTunnel network virtualization, image and audio injection, and other advanced environment configuration controls.


WebDriver.IO is the leading WebDriver binding for Node.JS. The framework basically sends requests to the Selenium server via the WebDriver protocol and manages the responses. Requests are wrapped in useful commands for ease of development and reuse for multiple test scenarios of your web site and more.


XCUITest – A UI testing framework that is built on top of XCTest. It includes additional classes (such as UIAccessibility). These tests can be written in Swift or Objective C. The tests are packaged in a test ipa (iOS packaged application) runner that executes the tests on the AUT(application under test) ipa.

KIF (Keep It Functional) – A iOS native app that wraps XCTest as well using undocumented iOS APIs. It requires the developer to add the KIF framework to the project. It has a simple and intuitive syntax.

Commercial Testing Framework Integrations

CA Agile Requirements Designer (ARD)

CA’s Agile Requirements Designer (ARD) is helping companies make exponential progress by providing a tool for end-to-end requirements gathering, which then automatically creates the full gamut of automated test cases necessary for a quality product.

By itself, this is a great tool for generating test cases, but there is a limit to the amount of automation that can be created using standalone, open-sourced frameworks. However, leveraging this tool in combination with Perfecto’s CQ Lab and Quantum framework turns ARD into a powerhouse, enabling automation of 90% (or more!) of test cases with the click of a button… all while using a common Web Driver-based framework.

KIF (Keep It Functional) – A iOS native app that wraps XCTest as well using undocumented iOS APIs. It requires the developer to add the KIF framework to the project. It has a simple and intuitive syntax.

CA Application Test

With Perfecto and CA Application Test together, you can go beyond atomic functional testing by running a single test across multiple devices. This will allow you to see how your application runs and compare the results side by side across different devices in a single view. In addition, by allowing the test to run in parallel, the overall time needed to regress an application is reduced by the number of parallel devices.

The solution supports locally attached and cloud-based devices. It enables users to remotely access a large selection of real mobile devices connected to cellular networks around the world. With Wind Tunnel™, testers can preload different user personas and test an application the same way it would be running in an actual user’s hand. Ultimately, empowering testing to go beyond functional testing.

IBM Rational Test Workbench

Run Appium tests on a cloud Perfecto environment from the test workbench and see the execution reports. To be able to access the Perfecto reports, you need to specify in the test preferences the URL of the cloud used to run the tests and the security token obtained on the Perfecto site.


Worksoft, an automation software provider moved into a new strategic partnership with Perfecto. It easily implements end-to-end business process testing, on mobile and web platforms through both hybrid and cloud-based testing labs.