Mobile app traditional test process optimization

Source: Internet
Author: User
Tags nets

    • Overview
    • What are mobile app testing?
      • Install package Test
      • Compatibility test
      • Memory Leak test
      • Power consumption test
      • Flow test
      • Conflict testing
      • Weak net Test
      • Interface Fault tolerance Testing
      • System Permissions Test
      • Over-drawing tests
    • Mobile App Special test implementation plan
      • Specific implementation Plan
      • Implementation process
      • Automation tools
      • Summarize

[This article is from the Sky Cloud Blog Garden] http://www.cnblogs.com/LanTianYou/p/6516081.html

Overview in the traditional software testing process, each period needs from development to on-line experience from the requirements analysis and review, test case review, development, testing, release process. The tests included background testing, front-end Web testing, and client-side testing. Background testing includes background code logic test, Interface test, interface stress test, etc., web-side test includes UI test of front-end page, PC and mobile browser compatibility test and functional test, and client test contains more test items, and each test is relatively technical content. The concept of special testing is introduced. Unlike functional testing for client-per-issue requirements, the results of a specific test are related to the specific functionality of the product and include parts that are independent of the product requirements function. This also allows us to design the client test cases often will be part of the special test of the content ignored, resulting in some of the design test case thinking on the omission.   mobile App special tests which are based on the concept of special testing, the mobile app's special test includes: Installation package test, compatibility test, memory leak test, power consumption test, traffic test, conflict test, weak network test, interface fault tolerance test, system permission test, over-drawing test.   In the existing business to introduce special testing, we need to consider the following three points: 1. When to special test? 2. How to special test? 3. Why to Special test?   Installation package test installation package test describes the installation package test is to include installation, uninstall, upgrade three ways, including the prompt information testing, installation and upgrade of the package name, version information, logo, the main client function verification and testing. The importance of installation package testing is self-evident, it can directly affect user download volume and app activation rate, and indirectly affect user conversion rate. The installation package test mainly includes the following points: 1) General installation package Test, 2) from the low version to the high version of the coverage installation test, 3) from the low version to the high version of the app internal upgrade test, 4) the process of mobile phone memory, hard disk under the circumstances of the installation package test; 5) Install package test ; 6) During the process of forced shutdown, disconnection, phone call-out, jump to other apps to operate the installation package test; 7) interrupt the test (check whether it can be rolled back to the previous state): installation interruption, uninstall interrupt, upgrade interrupt, 8) different iOS version, Android version of the installation package test. When does the installation package test take place? The test of the installation package is at the stage of the software testing process prior to the functional testing phase.   Compatibility test compatibility testing describes compatibility testing as a test for the different hardware and software environments in which the app is located. Compatibility testing is very important, if an app to change a phone to flash back, a system to throw an exception, will undoubtedly indirectly affect the user's evaluation of the product, directly and indirectly increase the user's wastage rate, reduce the download volume of the app. Compatibility Test MasterTo include the following: 1) OS version compatible: Andoird version, iOS version, 2) screen size compatible with resolution: 2.8-inch resolution of 640x480 (VGA) pixel density 286ppi 3.5 inch resolution of 960x640 (DVGA) Pixel density 326PPI (IPHONE4) 4.0 inch resolution is 1136x640 (HD) pixel density 330PPI (iPhone5) 4.7 inch resolution for 1280x720 (HD) pixel density 312PPI ... 10-inch resolution 2560x1600 pixel density 299PPI3) Android ROM compatible: Xiaomi, Huawei, Meizu, ZTE, Google, Samsung; 4) network type compatible: WiFi, 3G, 4G. When does the compatibility test take place? Compatibility testing is generally based on functional testing without problems, in the software testing process stage after the functional testing phase, before the release of the launch phase.   Memory leak test memory leak testing describes a memory leak test to test for the occurrence of a memory leak in the course of a test. Occasional memory leaks are difficult to detect, but this part of the test is still very necessary because the accumulation of memory leaks will eventually consume all of the system's memory and seriously affect the performance of the machine. Memory leak testing requires tools. When to do memory leak testing memory leak testing runs through the entire software testing process, so memory leak testing and functional testing are carried out in the same phase.   Electricity consumption test power consumption test describes the testing of electricity consumption in different scenarios to detect the level of electricity consumed. The reason for the power consumption test, for example, there is user feedback in the use of an app to find that the battery consumption is very fast, and finally uninstall the app after everything back to normal. If the user comments the product indirectly, the user's evaluation will directly affect the download volume of the app. The test of power consumption requires tools. Several typical power consumption scenarios are as follows: 1) positioning, especially the call to GPS positioning, 2) network transmission, especially non-WiFi environment, 3) screen brightness, 4) CPU frequency (some operations within the client will increase CPU frequency), 5) Memory scheduling frequency (IBID.), 6) time and frequency of lock screen and wakeup. The design of the power consumption test case should revolve around the above points, combining the needs and functions. When to perform power consumption test the power consumption test can be performed in the same phase as the functional test.   Flow test flow test Introduction The flow test is to click on the phone to test the interface or a set of scenes, and then see how much traffic to test. Traffic testing is important, some products of the traffic consumption is serious, and some users installed traffic statistics software, users may consider uninstalling those traffic consumption of serious software or in the absence of WIUse the appropriate app in case of FI. The flow test requires tools. When the flow test flow test can be made to ensure that the function is not a problem with the functional testing in the same phase.   Conflict Test Conflict testing describes conflict testing as a test that is interfered by third-party features or software when running a program's functionality. Conflict testing is a software state testing, software status is divided into "start", "Hang", "end" three kinds of, so the conflict test is also simulated interference software run "start", "Suspend", "end" the test of three states. A number of common interrupts are triggered during the operation of the module, testing whether the client's handling of event priorities affects functionality. The difficulty of conflict testing is that it takes time to break an event, and for some situations where it is fast and difficult to break, the need to implement conflict testing sometimes requires some automated means. Conflict Test main focus: 1) incoming call, 2) network switchover, 3) SMS notification, 4) push message; 5) alarm clock; 6) USB plug-in; 7) suspend; 8) program history start; 9) long key off; 10) auto horizontal screen; 11) lock Screen Standby When the conflict test conflict test involves the entire software testing process, for example: conflict testing is involved in the installation package test. Therefore, conflict testing runs through the entire software testing process, prior to the functional testing phase.   Weak network test for low-net testing the weak net test is the test of the app in different network environment. Features affected by network conditions are often related to background interfaces, and updates to data within the client are done by invoking the backend interface and receiving the returned data. The key to design weak net test cases is to analyze what functions are linked to the background interface, and it is necessary to consider whether a targeted design of weak net test cases is required for the functions linked to the background interface. The simulation of weak nets needs to be aided by tools. When to do weak network testing and functional testing of the same phase.   Interface fault tolerance testing interface fault tolerance testing the interface fault tolerance test is to verify that the test of exception data is handled correctly in the client if the service-side interface returns an exception or unreasonable data. The interface return timeout and return exception should correspond to reasonable prompts within the client to improve the user experience. Interface fault tolerance testing requires the use of the capture tool to complete the modification of the interface return data. When to do interface fault tolerance test interface fault tolerance testing and functional testing in the same phase.   System privilege test System permission Test introduction System permission test is the test that the app needs to get the system authority design. In the process of testing, the main check in the client for access to system permissions are friendly, functional and normal. We need to do a statistic on the functional modules that involve acquiring system permissions to determine the scope of the design test case. Often involves system permissions testing related function Points are also included in the client per-issue requirements, so involving system permissions aspectsTest points are generally not easy to ignore. Test cases need to include the app set "Allow permission", "Reminder permission", "Prohibit permission" three cases: 1) Permission: The function of the relevant module in the app is normal, 2) Alert permission: The function of the relevant module in the app will trigger a reminder, 3) Prohibit permissions: In-app related module function trigger friendly prompt , and there will be no anomalies and crashes. When to do the System permission test system permission test and functional testing at the same stage.   Over-drawing test over-drawing test introduction Excessive drawing means that pixels are drawn more than once in a frame of time (16.67ms), each drawing consumes the CPU, and when the drawing times out, the phenomenon occurs. The over-drawing test is to check whether there is excessive drawing during testing. Testing often requires tools, because over-rendering is difficult to discern with the naked eye. The "Force GPU rendering" feature in the developer tools of the Android system can help us to discover the phenomenon of over-rendering. The product does not know which functional modules are at risk of being over-drawn, so it does not write content that involves over-drawing to the requirements documentation. Due to the need to be able to take over the place of the ability to have a certain degree of certainty (generally in the area involved in the activity jumps prone to excessive painting phenomenon occurs. For example, activity A is not destroyed after you jump from activity A to activity B, and activity A is re-created after activity B returns to activity a, which is prone to over-rendering. So it's easy to ignore the design of this part of the test case in the actual test. Over-drawing of the main areas of concern (take "one dollar Tesco" app): 1) The homepage of the shortcut entrance icon (recharge, 1 yuan to 20, drying a single, easy in the goods); 2) Tesco headline scroll bar clickable section. To design this part of the test case, you need to: 1) identify any activity;2 that may exist within the app to determine the function module that triggers the jump between activity, and when to do over-drawing the test over-drawing and testing the same phase as the functional test.    mobile App Special test implementation plan from the overall grasp of the specific test stage, divided into three teams: the first Team: installation package testing, conflict testing; Second team: Memory leak test, power consumption test, flow test, weak network test, interface fault tolerance test, system permission test, over-drawing test ; Third team: Compatibility Test.   Specific Implementation plan installation package test: It is recommended to change the installation, no need to test every time; conflict test: Conflict test cases are designed to be combined with functional test cases in the client functional test case; memory leak testing: It is recommended that the testing process be monitored through automated tools, and once leaks are detected, Client screen, collect the log before and after the leak, send POpo to the client; Power consumption testing: it is recommended to use automated tools for testing; Flow testing: It is recommended that the test be assisted by automated tools, requiring the tool to detect the flow of the app over time, With manual Click on the requirements involved in the client and the request operation related to the button or operation in conjunction with the set of traffic labeling to determine whether there is a serious traffic problem; Weak network testing: It is recommended to simulate various degrees of weak nets through automated tools, weak network testing of the associated client and request operation related buttons or operations Interface fault tolerance test: interface Fault tolerance test cases are designed together with functional test cases to the client functional test cases; System permissions test: System permissions test cases are designed together with functional test cases in the client functional test case ; Over-drawing test: Over-drawing a test case to be designed with a functional test case into a client-side functional test case; compatibility testing: With the compatibility test platform (traditional practice: Borrow mobile phone dot dot everywhere).   implementation process of the above implementation is again summarized, can improve the traditional test process. For each requirement, the following stages are--1. Confirmation phase: 1) Determine the function module that involves jumping between activity, 2) determine all the buttons or actions related to the background request. 2. Test Case Design phase: 1) functional test case, 2) conflict test Case 3) interface fault tolerance test case; 4) system permission test case; 5) excessive drawing of test cases. 3. Test Execution phase: 1) Manual test: Installation package test (on-demand), functional test, 2) semi-automatic test (half by hand, half by tool): Flow test, weak net test; 3) automated testing (complete with tools): Memory leak test, power consumption test (select main model) ; 4) Compatibility Test (manual test with the aid of the compatibility test platform).   Automation tools 1) Automated flow test aids, requirements: can be carried out for a period of time statistics, 2) Automated weak network test AIDS, requirements: can choose to set various degrees of weak network, 3) memory leak automation test tools, 4) Power consumption automation test tools.   Summarize now the mobile app software testing process can be summarized as: Four tools, three stages, a platform. Relative to the traditional mobile app testing process optimization: 1) greatly enrich and perfect the design method of functional test cases, 2) to a great extent, realize the development and use of automated process in testing.

Mobile app traditional test process optimization

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.