智城识别ID 64497
承接项目数 0
好评率 0%
会员 1级
总收入 ¥ 0RMB
保证金 0 RMB
拥有技能 MySQL Photoshop JEE Python Mac OS X Apache Android iPhone Linux Sina Apps

案例

3b8f2114 2568 4a70 94e7 78bd50d154dc
10 年多前上传

开发周期 : 3 月
项目报价 : ¥8,000-¥10,000

Android自动化性能测试平台

在android的app的性能自动化测试这块,目前比较成型的平台很多,比如testin,腾讯的云测试,百度的云测试等等,能方便的接入测试,能出漂亮的报告,但是有一个问题,如果出现了性能问题,如何定位的问题?没有测试环境现场的保留,没有日志,截图等文件,很难定位问题。

于是我们提出了,采用一个在手机上运行的app,从web server上拉去各种阀值配置到手机本地,启动对内存,CPU,线程,进程,流量等监控,如果有触碰了阀值就会导出手机的环境数据,包括内存快照,bugreport,日志,截图,activity信息等,然后协议压缩,上传到web server上为自动化的云分析平台提供了cgi接口

magnifier项目启动之初,我们的目标就是:自动化监控性能数据,自动化发现性能问题,并为性能分析提供测试环境数据。

为什么没有采用PC端的性能监控,而是采用运行在手机上的app监控?当时,我们考虑到一个外场测试的场景,如果我们只拿着手机,打开移动网络,或者wifi,可以在办公场所或者外场,自由的走动,自由的进行功能测试,这个时候性能数据,可以采集并且保存到一个数据仓库,免去USB线连接。

magnifier和monkey结合,进行自动化测试测试,能够实现一些,一些极限操作的场景,比如:重复的操作,比较深的操作路径,以及一些随便乱点积累的下来的环境等等,弥补了手工操作的,或者一些有逻辑化的自动化不足。

magnifier不仅仅结合monkey实现自动化,也可以结合手工功能测试等,能够进行一些有逻辑的,有序的,性能检查测试,例如:在系统测试的时候,启动magnifier进行性能监控,如果有性能问题,magnifier保存了测试场景的数据,就能方便的分析出性能问题所在

magnifier可以是一个压力测试场景下的工具,在monkey频繁,无序的界面压力点击下,测试场景的环境累计,以把被测程序,极限界面操作,直到被测程序crash或者无响应的情况下,magnifier,在极限压测下,监控性能数据,保存出现性能问题的测试场景数据,方便分析性能问题,无论是bugreport的导出,操作序列的保存,日志,还是内存快照的导出,截图等等,都是为了方面性能问题的定位和排查

magnifier作为一个工具,测试工具,作为一个十分自由的性能测试工具,不仅仅局限在测试android qq,可以测试任何一个android程序,同样,我们还支持了IOS的部分功能,magnifier的自由化,不仅仅局限在不断的变更测试用例,不断的维护测试用例,不断的跟着开发,变更业务逻辑,测试的就要跟着变更测试逻辑,节省沟通成本,magnifier是一个面向无场景的测试工具

magnifier新框架下,可以按照测试需求添加任何一个监控器,测试人员,想让magnifier干什么,变成什么,它就能变成什么,按照测试人员的设计来监控一些指标项

当然了magnifier不是万能的,magnifier只是解决了一些场景的使用情况,精简了一些流程,magnifier的使用场景,使用方法不仅仅局限在现在的,内存问题,线程问题,进程问题,泄漏,数据库,流量等性能问题的定位和发现上,它仍然可以扩展出很多功能,magnifier仍然需要不断的改进,进步

magnifier的可视化的,web界面,大量性能数据的积累,仍然有很多没有开发,发现的领域

Magnifier app detail
性能监控app的设备上报
Magnifier app main
性能监控app主界面
8
内存曲线图
7
线程曲线图
6
CPU曲线图
4
性能数据过滤
3b8f2114 2568 4a70 94e7 78bd50d154dc
网站登陆界面
3
设备管理过滤
2
告警信息展示
9
告警文件下载