Quality Assurance and Control

We apply both manual and automated testing to all digital products we build to make sure the quality of code for mobile and web app, as well as server-side software, is of the highest level.

  • Web and mobile app testing

  • API testing

  • Backend testing

Real device testing

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

  • Wearable

  • Mobile

  • Desktop

  • Tablet

Product quality criteria

We assess how good a web and mobile applications we develop is in accordance with these eight dimensions of product quality:

    • Functionality
    • Reliability
    • Stability
    • Efficiency
    • Usability
    • Compatibility
    • Security
    • Maintainability

Types of testing we use

We choose types of testing depending on the project specifics. Our QA
specialists test both frontend and backend components either manually
or by relying on testing automation.

  • Budget
  • Scope
  • The point when automated testing
    starts saving your budget
  • Manual testing
  • Automated testing
  • Compatibility testing
    Compatibility testing evaluates an application’s compatibility with different devices, operating systems, browsers, and platforms. We also check how the app performs under different network conditions.
    • OS versions
    • Devices
    • Browsers
    • Platforms
  • Functional testing
    Functional 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.
  • Smoke testing
    Also known as build verification testing, smoke testing lets us ensure that critical product functionality is working well. The purpose of smoke testing is to define if the very first build of an app is stable enough to proceed with further testing.
  • Regression testing
    We always rerun functional and non-functional tests in case of any changes to your application to make sure that previously developed and tested functionality still works well. This is called regression testing.
  • UI testing
    UI testing checks if a product’s graphical user interface meets the specifications and approved design. We evaluate design elements such as layout, colors, fonts, font sizes, buttons, icons, links, and content.
  • Installation/update testing
    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 tests 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, and so on.
  • 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.

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 planning

    All future QA and testing activities, defined at the planning stage, 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.

  • Environment setup

    The test environment includes test devices, operating system 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 design

    After all tasks for a sprint are defined, QA specialists start creating a special checklist. This checklist serves the same purpose as a test case but is less detailed and takes less time to edit. This makes it a valuable tool for large projects.

  • Test execution

    As soon as user stories are prepared, we begin manually testing new features to verify that they work properly. For large projects, we also automate smoke testing, regression testing, and performance testing by using the most effective test automation tools and techniques.

  • Test closure and reporting

    We use Jira and TestRail to make our testing process transparent. 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.

  • Test run

    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 what caused the app to crash.

  • Top-level metrics

    For all released applications, 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.

Tools we use

We use a variety of tools and technologies for manual and automated application testing
and reporting.

  • Manual testing

    • Postman
    • Espresso Android
    • TestRail
    • iTools
    • Fabric
    • Crashlytics
    • Testflight
  • Automated testing

    • Selenium WebDriver
    • Appium
    • Apache JMeter
    • BrowserStack
    • Sauce Labs

Quality experts

  • Dmitriy Kulikov

    QA team lead

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

  • Alexandra Zhukova

    QA engineer

    Alexandra is an expert in testing mobile apps, in particular real estate apps. 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 personal excellence as a specialist.

  • Alyona Kiryushina

    QA engineer

    Alyona has been a quality assurance engineer for over five years. She has considerable experience performing mobile and web app inspections and API testing. Alyona is constantly toying with the latest testing tools and is not afraid to apply new practices to her work. She gladly shares the results of her experiments on our company blog.

  • Andrey Ogorodov

    QA engineer

    With a solid background in testing and an excellent understanding of client-server application architecture, Andrey quickly uncovers reasons for software bugs. Andrey is a true believer that thorough requirements elicitation helps build apps with minimum issues.

Learn more about us!

We use cookies to personalize our service and to improve your experience on the website and its subdomains. We also use this information for analytics.