The Secret of MQC Functional Testing (1) - Starting from Android Automated Testing

Abstract:  The definition of automated testing on the wiki is simply the process of replacing people with software to execute test cases and get test results. Of course, for automated testing, the scope is very large. For server-side interfaces and code interfaces, non-Ui automated test methods are usually used, such as: Unit Test, API Test, etc.; For App and GUI programs, Ui automation testing methods include: mock, functional testing, etc.

In software testing, test automation is the use of special software (separate from the software being tested) to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing. —— wikipedia

The definition of automated testing on the wiki is simply the process of replacing people with software to execute test cases and get test results. Of course, for automated testing, the scope is very large. For server-side interfaces and code interfaces, non-Ui automated test methods are usually used, such as: Unit Test, API Test, etc.; For App and GUI programs, Ui automation testing methods include: mock, functional testing, etc.

For Android automation testing, functional testing is the most basic and most commonly used solution, so what can functional testing do? What are the advantages? And how to do functional testing? The MQC team has launched a series of articles to explain Appium technical dry goods and MQC functional testing services.
The definition of automated testing on the wiki is simply the process of replacing people with software to execute test cases and get test results. Of course, for automated testing, the scope is very large. For server-side interfaces and code interfaces, non-Ui automated test methods are usually used, such as: Unit Test, API Test, etc.; For App and GUI programs, Ui automation testing methods include: mock, functional testing, etc.

How Functional Testing Helps Improve Product Quality

It is difficult for most agile development teams to fully test every aspect of a large product. On the one hand, we need to test key modules in a targeted manner according to each change, so the testing of other modules will inevitably be missed; on the other hand, the testing work of many modules is mechanical, such as regression testing, performance testing, model testing Adaptation, etc., all handed over to manual testing will greatly increase labor costs.

Functional testing can liberate test development from tedious repetitive work, focus energy on key modules, and at the same time have spare energy to design and write complete test cases, and improve test coverage and reduce hidden dangers through functional testing.

The use case for functional testing is not a panacea

For test development, it is understandable to pursue 100% test coverage, but in fact many test tasks are difficult for machines to complete, such as text verification code recognition. Priority is given to designing and completing the use cases of the stable module to ensure the continuous return of functions in the future, and then considering the time cost and labor cost before considering the use case design of more complex problems.

另一方面,对于频繁发生变化的模块,用例也应当适应这种变化不停迭代,从而快速的在各个机型上进行功能验证。

功能测试无法发现新问题

我们在编写和调试用例的时候,或许能够发现一些功能性问题,而用例在进行回归后,发现问题的可能性就很低了。功能测试其实就是一个用例不断重复的过程,功能测试本身应当是一个“守护者”而非“探索者”,它可以帮助我们更加确定应用没有问题或者发现一些回归性的问题,而不是新问题。MQC 在探索问题的方向上自主研发了一款兼容性测试工具 Ripper,在达到高覆盖率的同时保证较高的 Bug 检出率,有兴趣的小伙伴欢迎试用 MQC 兼容性测试。

功能测试是需要成本的

我们通过功能测试用例来保证产品的质量,同时需要专业的工程师来保证用例的质量。设计开发一个合格的用例也是需要不断的调试、迭代与维护的,这就需要一个好的平台系统来帮助完成相关工作。MQC为开发者提供了完善的用例库管理功能,同时,为测试开发团队打造了专业的一站式测试协作平台,帮助团队进行应用管理、协同工作、任务分发、报告统计。

通过以上几点内容,相信大家对功能测试的概念已经有了一定的了解。MQC 在 Android 功能测试上选择使用了 Appium 测试框架,其开源社区较为活跃,兼容性好、功能丰富,相信能满足绝大部分功能测试的需求;在脚本开发方面,MQC 提供了在线真机录制、云端真机回放等多种服务,来帮助提高用例脚本的开发、调试效率;最后,平台提供了 App 用例管理、用例历史报告查看、编辑脚本、上传脚本等功能,帮助用户通过平台来完成功能测试的迭代维护需求。更多服务,欢迎来阿里云移动质量中心进行体验。

 

本文为云栖社区原创内容,未经允许不得转载,如需转载请发送邮件至[email protected]

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326423381&siteId=291194637