python测试Android手机应用
2019-07-23 本文已影响83人
流鼻涕的绿恐龙
为什么做app自动化测试?
答:生活所迫,还是不是为了钱嘛!!!
前期准备
- 安装python3.6版本
- pip install Appium-Python-Client 官方模块URL:https://pypi.org/project/Appium-Python-Client/
- 安装appium测试环境 具体安装步骤见百度
- pycharm pythonIDE
简单实例
a. 首先开启appium服务器 终端输入
j1.pngappium
见到如下图则表示appium服务器已经开启
b. 编写python脚本,示例代码如下:
from appium import webdriver
from time import sleep
# 手机与appium服务器建立连接的键值对信息
d = {
"device": "android", # 设备类型 android
"platformName": "Android", # 设备的名字
"platformVersion": "9", # 安卓系统版本
"deviceName": "46HDU1931xxx3325", # 手机序列号
"appPackage": "com.xxxx.mm", # app的包名
"appActivity": ".ui.xxxx", # app的活动名
"noReset": "true", # 该参数为保存用户操作数据
# 创建一个Remote类的实例对象,
dr = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_capabilities=d)
sleep(2.5)
注:这个参数是固定写法:"http://127.0.0.1:4723/wd/hub",也可以写成"http://localhost:4723/wd/hub"
程序运行后appium服务器开始记录日志信息
j2.png
同时手机上自动开启相应的app
相关知识小结
获取手机包名的方法:
开发者选项设置.jpegadb shell pm list packages -3
获取手机应用Activity的方法:adb shell monkey -p com.tencent.edu -v -v -v 10 | grep 'cmp=.*'
执行之后过滤的结果例如:cmp=com.tencent.edu/.module.SplashActivity
分析后:包名为com.tencent.edu
Activity名为.module.SplashActivity
手机端需要开启开发者选项:具体设置如下
注:不清楚手机如何开启开发者选项,自请百度相应手机型号
本次小记到此结束
长期从事软件测试开发,技术水的一塌糊涂,文笔烂的不忍直视,欢迎大神指导!
余生废柴,与君多叨扰