There are many aspects of APP testing that need to be taken into consideration, and I’ll list a few salient features:

A functional test

Basic functions of mobile phone software. It is not necessarily completely performed by the tester, but it is the most important of all tests and requires a good testing strategy and responsibility division by the tester.

Stability test: most mobile applications need to ensure that they can run stably for a certain period of time (especially for some note-keeping applications), and they need to keep the current state after switching the running state of the application, without flash back.

The performance test

This part is divided into two aspects, one part is the background service performance test of response time and response packet size (API), the application itself is a part of the performance (CPU, memory, I/O, power, and the switching between pages to the page, if it is a game or animation, but also can guarantee in a certain frame rate above).

Security testing

Whether key confidential data connections are encrypted; Whether the local database is encrypted and can be read by other malicious applications;

Whether the interface of the background service is secure and affected by SQL injection; Whether the application is confused, whether it will be reversed and whether it will be modified in the channel side to re-sign the horse; Whether sensitive data exists on the SD Card and so on.

Geolocation test

Most business software (e-commerce) supports the acquisition of users’ geographic location information, which is convenient for local business customization (especially for O2O industry). At least three aspects need to be considered:

  1. Whether the city can be accurately located;

  2. Whether the positioning accuracy meets the requirements;

  3. The location name resolution process is correct.

Apply upgrade compatibility tests

You need to ensure that critical data, such as user account authentication information, brightness Settings, UUID used to identify devices, and key application function switch Settings, can be retained after an upgrade or cross-version upgrade without user resetting.

Device Compatibility Test

With the rapid fragmentation of Android devices and the slow fragmentation of iOS devices, apps need to be adapted to different hardware platforms (different CPU architectures, different RAM configurations, different Flash storage, different sensor configurations, different network modes, etc.) and also take into account different OS versions. So a lot of effort needs to be put into system compatibility and device compatibility testing.

Coupling application test

For today’s mobile apps, the “island” model no longer exists. Most apps need to interact with other apps to be “social” or “share” and “pay”;

In this way, its interaction with other software at runtime is uncertain. At this time, if the version of the application is upgraded, we need to pay attention to whether the interaction between the upgraded coupling application and our application is still effective.

PUSH jump testing: Today’s mobile apps also feature PUSH services to get users to specific pages. So we need to test whether the PUSH service can reach and display a particular page correctly.

Statistical reporting test

For most apps, collecting user data helps them analyze user behavior to see if the addition of new features increases user activity or conversion rates.

All these information need a certain reporting plan to obtain, storage and analysis. So for QA, this part of the job is no worse than normal functional testing.

Finally:

The future of you will certainly thank now desperately own!

To recommend a software testing technology exchange group: 1079636098 group benefits free

I wish you and I meet, both gain! Welcome to wechat public account: Programmer Yifan

1. Receive a free 216-page software test engineer interview guide.

2. Software test learning route and corresponding video learning tutorial free to share!