发布信息

松勤软件测试程老师分享 Android 自动化测试平台设计关键步骤

作者:软荐小编      2024-09-08 15:01:16     88

(松勤软件测试讯)随着软件测试技术的不断发展,人们已经从最初的纯手工测试,转变为手工和自动化测试技术相结合的测试方式。近年来,自动化测试越来越受到人们的青睐,带来的好处也是显而易见的。单纯的手工“点”已经过时了,越来越多的企业开始重视自动化测试。因此,自动化测试已经成为行业内的大势所趋。

软件测试设计思路_软件测试设计_软件测试设计案例

正好松勤软件测试的程老师最近在参与一个自动化测试平台的设计,想跟大家分享一下其中的一些关键设计步骤,这里就以Android自动化测试系统作为示范,希望能给大家一些启发。

软件测试设计_软件测试设计案例_软件测试设计思路

1、当我们开始分析一个自动化系统的组成时,首先要思考自动化需要解决什么样的场景,是解决测试人员写脚本难的问题,还是解决测试效率的问题,还是解决场景复杂的问题?

只有先明确这一点,我们才能清晰的了解到设计的核心是什么。

例如

网易有一个叫AirTest的自动化平台,专注于解决两类问题:

1)即使不熟悉Python的人也可以使用它来实现自动化用例;

2)由于很多游戏APP的控件并不是原生View渲染的,必须依赖图像识别技术或者界面渲染引擎的控件定位技术,这在业务上是相当困难的。有了它,这一切都不是问题。

因此它的设计核心就是解决测试人员编写脚本困难、解决复杂场景问题困难的问题。

另一个例子

蚂蚁金服开源的SoloPi是一款APP自动化工具,专注于解决这两类问题:

1)脚本录制与回放功能解决了测试人员编写脚本难的问题;

2)一机多控,解决了测试效率问题;

每一款产品都有它的核心立足点,搞清楚了核心,才知道如何去选技术。

所以第一步要确认这个自动化产品的核心解决方案场景是什么。

2、有了核心就好比定了一个目标,后续的具体设计都会围绕着目标进行。

有些同学在设计的时候,想要像Appium一样支持多语言客户端,以获得更广泛的群众基础;或者像SoloPi一样支持录制、播放功能,还想增加...

这种不断添加的原则对于原型开发并不友好。

软件测试设计案例_软件测试设计_软件测试设计思路

在设计原型的时候,应该尽量少做事情,确保主要流程能够顺利运行软件测试设计,再考虑锦上添花。

做技术开发的人往往知道“迭代”这个词。一口气做一个大产品很难。从简单的方法开始有三个好处:

3.现在核心功能基本梳理好了,这时候整个业务流程图就应该准备好了,这里需要考虑系统是怎么运作的,哪个环节有输入,哪个环节有输出等等。

以SoloPi为例

在录制回放服务中,整个流程分为两部分,一部分是录制,保存用户的操作过程和设置的参数,输入是操作,输出是数据;另一部分是回放,将获取的数据作为新的输入,传递给固定的操作模板执行。

这就为整个业务流程创建了一个闭环。

软件测试设计案例_软件测试设计_软件测试设计思路

4、考虑分工与合作,拆分模块。

不管产品是独立开发还是多人开发,功能都要合理拆分,不同模块尽量独立开发,这样不仅分解了任务,也能更好地扩展新模块。

以AirTest为例

如果把模块分为IDE模块、系统支持模块、控件识别模块,一组人专注于界面,实现按钮、代码编辑器等;另一组人支持Android、iOS、Windows、Web等系统的连接和控制;还有一组人做图像识别、Unity控件识别。这样,大家就可以同步工作了。

总结

在设计自动化测试系统时,首先要确认核心功能是什么,然后尽量简化原型设计,接着考虑整个业务流程如何流转软件测试设计,抓住几个关键的输入输出点,最后合理拆分模块,进行团队协作。

相关内容 查看全部