Quality Assurance and Testing Services

We apply quality assurance and testing services to all software we write, checking the quality of mobile and web apps as well as server-side software.

Mobile app testing

Backend testing

Web app testing

Real device testing

We run your app on a variety of real devices that we select based on manufacturer, operating system, and popularity in your target market.

Wearable

Mobile

Tablet

Desktop

Product quality criteria

To quantify the results of our work, we use non-functional requirements that characterize the overall quality of the system based on so-called quality attributes.

functionality

compatibility

usability

efficiency

reliability

security

maintainability

portability

Effective testing process

Requirements validation

We conduct business requirement analysis based on the Guide to the Business Analysis Body of Knowledge®, which results in a specification and wireframes. Our QA specialists validate the requirements before development begins.

Test design & planning

All QA and testing activities are documented in the test strategy document that lists test environments, types of testing, and criteria for the start and end of testing. We store all information about tests in TestRail.

Test environment setup

The test environment includes test devices, OS versions, and apps that are involved in the testing process and have to be installed on devices. During this stage, our QA specialists ensure that the testing environment is ready.

Test execution

As soon as a chunk of functionality is implemented, we begin testing new features to verify that they work properly. We run functionality testing, regression testing, smoke testing, and a number of non-functional tests according to the test plan and checklist.

Automated testing

For projects that take more than six months to develop, we automate smoke testing, regression testing, and performance testing. We choose the most cost-effective test automation tools and processes.

Test reporting

We use Jira and TestRail to make our testing process visible. After each sprint, we present builds to our clients along with release notes showing our progress. We’re open with our clients about our development challenges.

Test management

We make our testing process clear and transparent to our clients with the help of regular progress reports and test tracking tools.

To do

Resolved

In progress

To test

Bug status

Test runs

Regular TestRail reports show the number of test runs and their results: passed, blocked, retest, failed, not ready, skipped, or fix in progress.

Crash statistic

With Crashlytics, we get crash reports that provide us with deep insights into the number of crashes and the issues that caused the app to crash.

Top-level metrics

We use Fabric to track metrics on users, sessions, and crash-free users, or the percentage of daily active users that had a crash-free experience on a given day.

Types of testing we use

We choose types of testing depending on the project specifics. Our QA specialists test both frontend and backend components.

Functionality testing

Functionality testing verifies that features look and work as expected according to design specifications and ensures that bugs are caught quickly. Functionality is tested by feeding the app input and examining its output.

New feature testing

Smoke

Regression

Compatibility testing

Compatibility testing evaluates the application’s compatibility with different devices, operating systems, browsers, and platforms. We also check how the app performs under different network conditions.

If an app is already released, we perform update testing. With update testing we make sure that existing users won’t be adversely affected by a new version of the app – that their data won’t be lost and that both old and new features will work as expected.

Interruption testing

Interruption testing is performed to test how an app will react to an interruption and how it resumes its previous state. Interruptions can include incoming phone calls, low battery, network connection loss and re-connection, update reminders, etc.

Localization testing

We provide localization testing after a product’s content has been translated to another language. This type of testing ensures that the localized product functions as expected for the target market and that no new bugs have appeared.

Automation testing

Test automation automates some repetitive but necessary parts of the testing process. Automated testing takes less effort than manual testing, but we use automation tools only on large projects and always combine them with manual testing.

Performance testing

The goal of performance testing is not to detect bugs but rather to eliminate performance bottlenecks. The focus of performance testing lies on speed, scalability, and stability. The testing process ensures that the app performs well under expected workloads.

Tools we use

We use a variety of tools and technologies for API testing, automated testing, visualization, and reporting.

Quality experts

TetyanaBeketova

Head of Quality Assurance

Tetyana has been leading the quality assurance department at Yalantis for over five years. Previously a testing specialist herselft, she is currently in charge of all organizational processes on the team. She manages the workload and defines the development vector for her team members.

DmitriyKulikov

QA engineer

Dmitriy has been assuring the quality of iOS and Android apps for over four years. His goal is to help clients build apps that will be loved by their users. He is always ready to recommend features for an MVP and tools for efficient development process. He loves iOS platform more than anything.

AlexandraZhukova

QA engineer

Alexandra is an expert in testing mobile apps, real estate apps in particular. She has been involved as a testing specialist in the app development for Zillow, one of Yalantis` largest projects. Alexandra believes that testing is the path to excellence, not just product excellence, but also oneself as a specialist.

MariyaOsadchuk

QA engineer

Mariya is a testing expert with engineering skills and experience working with test automation software. She has a good understanding of software development architecture which helps her ensure the applications are well tested before they are deployed to production environment.