ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python自动化测试入门——你应该来看看

2021-01-19 21:32:23  阅读:202  来源: 互联网

标签:入门 Python Monkeyrunner MonkeyRecorder 坐标 自动化 device MonkeyRunner 模拟器


在当前自动化测试中,最火的语言就是Python,很容易上手。然后就是Java+testng+appium做的UI自动化测试。下面我们就用Python脚本,做自动化集成测试。

(1)获取APK文件中ID的两种方式

Monkeyrunner的环境已经搭建完成,现在对Monkeyrunner做一个简介。

Monkeyrunner工具提供了一套API让用户/测试人员来调用,调用这些api可以控制一个Android设备或模拟器,而不需要了解对应的源码。

有了Monkeyrunner,我们可以编写python脚本来控制apk包的安装和卸载、启动app、向app发送各种动作事件、截取图片并保存。

除此之外,MonkeyRunner是Google提供的一个基于坐标点的Android黑盒自动化测试工具。所以,要使用Monkeyrunner进行自动化测试,首先,要了解Monkeyrunner中获取坐标点的方式。

本文中,我们主要介绍两种获取坐标点的方式。一种是通过MonkeyRecorder获取坐标;另一种是通过HierarchyViewer工具获取控件ID。

  1. MonkeyRecorder获取坐标

    下面就MonkeyRecorder获取坐标的方式,进行演示。MonkeyRecorder是一个比较好用的获取坐标的工具,它是用来获取真机或模拟器上坐标的工具,当我们点击真机或模拟器上的空间时,就能显示真机或模拟器上的点击点的坐标。

(1)MonkeyRecorder的启动

首先安卓手机连接上电脑,并保证以下两个条件成立:

a.终端USB调成开发者模式

b.电脑安装手机驱动

手机连接成功后,打开cmd窗口,输入adb devices查看已连接真机或模拟器设备的名称,我们这里仍以模拟器为代表。

之后,在cmd窗口,输入monkeyrunner后,启动Monkeyrunner。做以下操作:导入MonkeyRecorder包、连接模拟器设备、以MonkeyRecorder方式启动模拟器,并依次输入

如下命令:

1 from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice
2 
3 from com.android.monkeyrunner.recorder import MonkeyRecorder as recorder
4 
5 device=MonkeyRunner.waitForConnection()
6 
7 recorder.start(device)

到此,MonkeyRecorder正式启动。截图如下。

MonkeyRecorder的使用

我们这里只是使用MonkeyRecorder来记录坐标,获取坐标的方式很简单。比如qq的登录界面,点击“登录”按钮,右侧就会显示该按钮的坐标;同样,点击账号输入框或密码输入框,右侧同样会显示坐标。这个坐标就是我们需要获得的坐标。

同时,MonkeyRecorder中的界面是同模拟器页面保持一致的,在MonkeyRecorder中触发任一操作,模拟器上会有相应的触发。如果两者没有保持一致,则点击MonkeyRecorder右上角的Refresh Display即可刷新页面。

控件坐标之Monkeyrunner脚本演示

我们将下面一段Monkeyrunner脚本写到一个test.py文件中,然后运行test.py文件,查看模拟器或真机上是不是做相应的操作。

from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice 

device=MonkeyRunner.waitForConnection() 

#启动activity(这里启动qq)

device.startActivity(component="com.tencent.mobileqq/.activity.SplashActivity")

#登录界面,点击账号输入框

device.touch(60,300,'DOWN_AND_UP') 

#输入qq账号

device.type('3469191693')
圣贤财富apk启动脚本代码 

1 from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice
 2 
 3 device=MonkeyRunner.waitForConnection()
 4 
 5 #启动activity(这里启动圣贤财富4.1版本)
 6 
 7 device.startActivity(component="com.hz.sxcfu.application.test")
 8 
 9 #登录界面,点击账号输入框
10 
11 device.touch(639,1266,'DOWN_AND_UP')
12 
13 #输入qq账号
14 
15 device.type('18088888888')

先写到这里,下次继续!

更多测试技术,欢迎关注微信公众号:程序员二黑

标签:入门,Python,Monkeyrunner,MonkeyRecorder,坐标,自动化,device,MonkeyRunner,模拟器
来源: https://blog.csdn.net/m0_53918927/article/details/112852544

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有