Choose a workflow

Your workflow depends on what your role is and what mobile app types you need to test. Are you a manual tester or an automation engineer? Do you test native apps, hybrid apps, web apps, or progressive web apps (PWA)? The following sections provide details on roles and app types as well as diagrams that illustrate the workflow and let you jump right in.

Manual testing vs. automation testing

The biggest difference between manual and automation testing is who executes the test case. In manual testing, the human tester does it. In automation testing, the tool does it, but the automation engineer handles the tool and creates the tests.

Manual testing is the process in which QA analysts execute tests one-by-one in an individual manner. The purpose of manual testing is to catch bugs and feature issues before a software application goes live. The tester validates the key features of a software application. Analysts execute test cases and develop summary error reports without specialized automation tools. That is why manual testing is very hands-on. It requires analysts and QA engineers to be highly involved in everything, from test case creation to actual test execution. Manual testing is slower overall, but it better handles complex scenarios.

Automation testing is the process in which testers utilize tools and scripts to automate testing efforts. It helps testers execute more test cases and improve test coverage. It is usually more efficient than manual testing. Automation testing involves testers writing test scripts that automate test execution. A test script is a set of instructions to be performed on target platforms to validate a feature or expected outcome.

The following table provides an at-a-glance comparison.

 

Manual testing

Automation testing

Test execution

Done manually by QA testers

Done automatically using automation tools and scripts

Test efficiency

More time-consuming, but better at handling complex scenarios

Achieves more testing in less time and with greater efficiency

Types of tasks

Entirely manual

Mostly automated, including real user simulations

Test coverage

Difficult to ensure sufficient test coverage

Ensures greater test overage

Summary

Allows for focused attention. Increases the ability to handle complex and nuanced test scenarios.

Allows for more testing in less time. Increases productivity and expands how much you can test.

App types

With Perfecto, you can test any of the application types listed in the following table.

App type

Description

Native (iOS/Android)

Specific to iOS or Android. An iOS app is built into an IPA binary file that you can test with the Appium and/or XCUITest frameworks. An Android app is built into an APK package that you can test with the Appium and/or Espresso frameworks. 

Hybrid

Includes a native application wrapper that is independent of iOS or Android. This means that a hybrid application can access all operating system specific capabilities. You can install a hybrid app from the Apple App Store or Google Play. These apps are also supported by Appium.

Web

Pure web apps that you can access through mobile native browsers, such as Google Chrome, Apple Safari, or Mozilla Firefox. These apps are supported by Selenium.

Progressive Web App (PWA)

An installable web link specific to iOS and Android. Examples are Instagram and Twitter. You can create a shortcut to these apps and install them without going to the Apple App Store or Google Play.

Perfecto workflow

View the relevant workflow based on your role. The path you take within that flow depends on your app type. Click a link in the diagram to open an article with information to the respective step. 

Manual tester

Automation engineer