Exploration of mobile phone software automated testing
Author: Zhang yuanli
Http://blog.csdn.net/vincetest
Difficulties and challenges for mobile phone software testing
The mobile phone industry has developed rapidly in just a few years. At first, mobile phone software features were designed to be simple and performance requirements were relatively low. At the beginning of its development, mobile phone users are extremely unfamiliar with the new mobile phone product. Therefore, the quality of mobile phone software is relatively loose for users. In the current market and technology environment, the mobile phone software development cycle was relatively long. For mobile phone testing stability, the time was also abundant, as for the test method, the original manual test may be used. After all, the manual test is the most direct, real, and effective, and the test threshold is relatively low, you may find a few engineers to take the test after a little training. [Source: Zhang yuanli's blog http://blog.csdn.net/vincetest]
In just a few years, the mobile phone industry has developed rapidly. In addition, users have higher and higher requirements on functions, performance, and stability. Users are increasingly familiar with mobile phones, and their quality awareness has gradually increased, in addition, the market response is fast, the R & D cycle is seriously shortened, and the market competition is under heavy pressure. Traditional manual testing is difficult to meet the needs of today's complex mobile phone software systems, after all, manual testing consumes a lot of manpower and energy. This poses great challenges to mobile phone software testing.
Challenge 1: mobile phones have fast shipping cycles and short lifecycles. To be fast and stable, it takes a great deal of manpower and time to perform the test, as far as I know, mobile phone companies in China have a certain number of testing teams. Relatively Small design companies or third-party mobile phone software providers do not have mobile phone software testing teams or few people are involved in testing.
Challenge 2: Mobile Phone software testing can easily make testers feel tired, which is more serious than manual testing of conventional desktop software and can easily make testers dislike it, this greatly affects the test results and efficiency, and even the bug may be ignored. In addition, most of the original manual tests belong to a kind of physical activity. For example, to do a limit operation test for adding an address book, it is easy to imagine how painful it is to do a limit test for storing 3000 address books.
Challenge 3: the mobile phone software system is complex. Many tests are inaccurate and unreliable because testers cannot use manual tests or manual tests. [Source: Zhang yuanli's blog http://blog.csdn.net/vincetest]
Difficulties and challenges new ideas
Automated Testing originated from desktop software or command line testing. It is also applicable to handheld devices such as mobile phones. Its principle is roughly the same. The biggest characteristic or difference is that its mechanism is complicated, some large mobile phone manufacturers in foreign countries have successively developed some of their own automated testing tools, as well as professional testing tool R & D vendors are dedicated to the development of such automated testing tools, however, it seems that there are few in China, which makes it difficult for some companies or personnel in China to invest in mobile phone automated testing. In view of this, I will write some ideas based on my own superficial knowledge and discuss them with you.
Exploration 1: similar to conventional automated testing of desktop software, key software icons and text information capture and identification, and Action recording and playback mechanisms for fast regression;
Exploration 2: The capturing or recording mechanism is mature for automated desktop testing tools. What should we do for mobile phone software? Is there a shortcut to copy the principle? I have also learned about some introductions or principles of mobile phone automated testing tools, which generally require the mobile phone's own software system (OS layer) to provide underlying API support, for example, API, message processing, and touch screen processing for underlying image processing.
Exploration 3: The powerful task processing function of the PC spans the test defects of the mobile phone software, and uses the mobile phone to connect the communication devices of the PC to the bridge that spans. The communication devices include serial ports and USB ports, A test agent is deployed on the mobile phone. The test agent communicates with the PC through a serial port or a test tool corresponding to USB to obtain information or perform the test, the vast majority of mobile phone operations are transferred to PC software testing operations. These are just a few words, and there should be a lot of technical difficulties in actual implementation, in addition, the continuous emergence of smart machines has also brought some opportunities for the study of automated testing. For example, the implementation of testing agents should be broken through, the test agent can be considered a third-party software to be installed or there are other more amazing ways, because the smart machines will be more flexible and easier to control in the future. [Source: Zhang yuanli's blog http://blog.csdn.net/vincetest]
The above may all be taken for granted ideas. We must start with the implementation mechanism of the mobile software system and deploy automated testing ideas based on the implementation mechanism to achieve technical accumulation, in the beginning, we can start with a simple process, lay a solid foundation for automated testing and deployment, and gradually correct the ideas. I hope more colleagues can participate in providing more ideas.
This article is currently written here. There are other updates to explore and will be updated one after another.
Welcome to repost this article, reprinted please indicate the source of the article: Zhang yuanli's blog http://blog.csdn.net/vincetest