Mobile application testing
Mobile application testing
The MobileUp team has its own QA Engineers. We get involved in the workflow at the stage of writing terms of reference. Then, we monitor the project quality until it is published in the app store. Сertainly, our team continues to follow the project after its publication, but just in support mode.
Tasks
Testing tasks
Feedback on product quality
Product quality assurance
Detection and prevention of bugs
Services
MobileUp’s tasks to solve
MobileUp offers two types of testing: auto and manual. Most often, we prefer to use manual testing, but MobileUp has some huge projects that need automated testing.
- Auto testing
This method is applied when it is cheaper and faster than manual testing. This is not suitable for all projects, so we provide this service to our largest clients. For example, DMV Genie testing was automated (the group includes 14 applications). Automation was a necessary step to reduce testing costs on this project in the future.
The goal is to optimize the testing budget and free up the tester’s time to work on more complex cases.
- Manual testing
The name hints that this type of testing involves a lot of manual work. Indeed, testers go through most of the scenarios manually. So we can get data on the state of the product very quickly and influence them promptly.
The goal of this testing is to obtain a complete picture of the product’s functionality and track dangerous points in time.
Test IT is used for testing. We usually keep our projects there: prepare test cases, do runs, and generate reports
Testing types
Functional testing
This is the testing that verifies compliance with the requirements of both the customer and the user. Find more info about testing types that are selected depending on the goal and objectives below.
- Analysis of documentation and layouts
The stage takes place before the development. We study documentation and requirements and conduct a technical review of layouts.
The goal is to find bugs in the designed logic before development and fix them.
- Exploratory testing
Testing without case design based on functional background information is provided.
The goal is to test the product without documentation promptly and effectively.
- Test case design
We make a list of test cases for the product. They should cover business logic, transition states, and bug handling.
The goal is a full test coverage of the project with clear expected results, digitization of the project knowledge base.
- Сomplete testing (full testing)
Deep testing of product functionality is provided. This may be required if the project has been refactored.
The goal is full testing of all described cases in the project.
- Test cases with high priority
Run of brief test on the main project functionality when the code has been already changed.
The goal is to make sure all basic functionality works and new changes don’t crash anything.
- Analytics Testing
We check each platform for its display and correct collection of analytic data and events.
The goal is to find quickly the section of the application that works incorrectly.
- Database testing
The testing is used if a significant change has occurred in the database and it is necessary to check the deployment i.e how the release build lays on the one published in the app store.
The goal is to make sure that the application could process information from a new database.
- Pixel Perfect
Pixel Perfect is a special coding technique that screens match layout pixel by pixel (100%). We compare screenshots from real devices with a file in Figma and ring the alarm in case of any smallest gaps.
The goal is to get a perfect match between the layout and the app.
Our team can test even on POS devices. The photo shows testing devices for one of the projects — a Canadian POS system
Non-functional testing
We check how user-friendly, logical, fast, and reliable the product works.
- Exploratory testing
This type of testing is suitable if there are no clearly defined cases.
The goal is to test a product’s performance as fast as possible.
- Performance testing
Stress testing of the app is provided.
The goal is to find the place where the app stops working properly.
- Text consistency check
We review all texts before release so as not to miss typos. There is the testing of localization, translation literacy, and correct text display.
The goal is to clear the application of stupid typos and weasel words.
- UI testing
We make build reviews and compare layouts and actual screen states.
The goal is to test the build on different devices to make sure that it works fine and matches layouts.
MobileUp has a large park with more than 60 models of old and new smartphones to search for bugs
Static testing
We test the code and everything related to the application codebase.
- API and UX/UI
Test the product for compliance with the API documentation and design.
The goal is to make sure that the documentation and the product release are consistent.
- API testing
Server health monitoring.
The goal is to make sure that API implementation is stable.
- Client/Server model
Correct client-server interaction check.
The goal is to make sure that data exchange between the client and the server goes as planned.
We know how to use test design techniques. Usually, our engineers prefer USE cases and boundary values. Sometimes charts and Mindmaps are also used
Regression testing
The product is tested when changes are made..
- Related areas testing
All functionality that could be affected by changes in the product is tested.
The goal is to check that fixing bugs in the application did not lead to appearing of new bugs in related parts of the app..
- Working areas testing
The main functionality which should work a priori is tested.
The goal is to check that any work in the application did not affect the performance of those parts of the application where no work was performed.
Tools
Modern stack
The MobileUp team uses up-to-date languages and tools. We create libraries. The most famous one is Cicerone, which was created by a MobileUp employee.
Manual testing
TestRail, Charles, Postman, Firebase Console, TablePlus, Android Studio, Xcode.
Auto testing
Behave, Toolium, Selenium, Appium, PL – Python.
Hyperion
Hyperion is used for app testing. This is a debug tool to peek under the hood of the app and speed up manual testing.
Our QA engineers prefer Rubber duck debugging to manage complex tasks
Projects
QA (Quality Assurance)
Testing is an integral part of the development process
Testers don’t just help you find bugs in the app, but also prevent these bugs, find errors in logic, update databases, and monitor documentation. But the point is, they help to release a high-level product that matches the requirements of the customer and users.
Feedback
I just want to say thank you so much for the Android improvements you have already made and keep making.
These guys have repeatedly demonstrated flexibility and excellent communication skills
We managed to improve the productivity of our service.
Collaboration
contacts
0We are always glad to cooperate and work on new projects
Describe the task, and we will contact you soon. Or you can always text us on Telegram.
Let’s get to know each other!
Your application has been submitted successfully
Thank you! We will contact you soon