使用python和android模拟器做android程序的自动化测试

因为前段时间业务需求,需要我们测试Android软件性能,刚开始我们使用的是Monkey+Monkeyrunner 。网上也有很多资料来讲解如何利用monkeyrunner来录制脚本,使用最多的都是通过记录坐标的方式来录制,但因为我们在程序操作中,通常都是在同一块显示区域实现页面的相互跳转,所以这种方法并不能够满足我们的需要,我想到了使用id来做,因为id能够保证控件的唯一性,并且也可以精确地定位
摘要由CSDN通过智能技术生成

  因为前段时间业务需求,需要我们测试Android软件性能,刚开始我们使用的是Monkey+Monkeyrunner +python脚本。网上也有很多资料来讲解如何利用monkeyrunner来录制脚本,使用最多的都是通过记录坐标的方式来录制,但因为我们在程序操作中,通常都是在同一块显示区域实现页面的相互跳转,所以这种方法并不能够满足我们的需要,我想到了使用id来做,因为id能够保证控件的唯一性,并且也可以精确地定位到控件的位置。我是因为这个项目自学python,所以对python这方面很多知识并不了解,于是去网上找了很多资料,但是没有一篇完整的代码可以用来实现,我也是查了好多资料,才渐渐摸索出了实现方法,特此记录。


一.准备工作

   在做测试之前,要保证我们的测试环境可以正确运行,需要我们先去搭建测试环境。

   (1)保证电脑上已经安装了jdk并且环境变量等的配置已经完成

   (2)安装了eclipse,用于android的开发,相信做android的人应该这些都是会用到的吧

   (3)下载SDK并且完成SDK的配置(因为我们需要使用到SDK文件夹tools中的一些工具工具,所以这个是必须的)

   (4)安装python IDLE(python编辑器,可以很方便的用来编写python文件),并在环境变量里面配置path

    (5)android模拟器(也可以使用android自带的模拟器,但是启动实在是太慢了,太费时间,果断放弃)

            我使用的是天天模拟器,网上可以下载


二.测试流程

    第一步,打开模拟器,我们可以在eclipse的device下面看到当前的模拟器显示信息,如下图:



注:一定要确保模拟器连接成功了,要不然接下来会有问题。


我们在使用android获取id的时候,都是直接findViewByID(R.id.IDName),系统可以帮助我们识别是在哪一个文档中,但是python却不行,就相当于在android中你写个相对路径,就ok了,但是在python中,必须要使用绝对路径(只是打个比方哈),在python中,如果我们的控件是嵌套在几层布局之中的话,就必须通过它的根布局元素ID去一层一层往下找。通常我们写的界面都很复杂,你要一个一个去找ID,不得累死,万一找漏了一个,就会功亏一篑了,所以我们要向获取正确的ID路径,就要借助于SDK给我们提供的一个工具--hierarchyviewer.bat.

它的路径在   SDK安装目录\tools\hierarchyviewer.bat, 这是我的安装路径:F:\Android_Studio\Android-SDK\tools\hierarchyviewer.bat.

双击它并打来,我们会看到下面这个显示界面,可能你会觉得奇怪,但请不要着急,稍微等一会儿,它会去自动搜索你的模拟器。



如果它没有搜索到你的模拟器,就会是这种现实状态:(不知道什么原因,我的模拟器在eclipse中获取不到了):

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值