appium---代码自动安装app
在做自动化的过程中,前面都是写的已经把APK安装好了,那么我们做自动化的时候如何把安装的用例也写进去呢?
安装apk
方法一:
我们可以在执行用例启动服务前,直接通过adb install 的方法进行安装apk
# coding:utf-8 from appium import webdriver import time import os adb = 'adb install shoujitaobao.apk' # 执行apk os.popen(adb) time.sleep(6) desired_caps = { 'platformName': 'Android', # 测试版本 'deviceName': 'emulator-5554', # 设备名 'platformVersion': '5.1.1', # 系统版本 "appPackage": "com.taobao.taobao", # app包名 "appActivity": "com.taobao.tao.welcome.Welcome", # 启动launch Activity "noReset": True, # 不清空数据 "unicodeKeyboard": True, # 使用Unicode编码方式发送字符串 "resetKeyboard": True, # 键盘隐藏起来 } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
方法二:
通过获取apk的路径,在请求desired_caps中加入app项
# coding:utf-8 from appium import webdriver import os path = os.path.dirname(os.path.realpath(__file__)) # app路径 apppath = os.path.join(path,'shoujitaobao.apk') desired_caps = { 'platformName': 'Android', # 测试版本 'deviceName': 'emulator-5554', # 设备名 'platformVersion': '5.1.1', # 系统版本 'app':apppath, "appPackage": "com.taobao.taobao", # app包名 "appActivity": "com.taobao.tao.welcome.Welcome", # 启动launch Activity "noReset": True, # 不清空数据 "unicodeKeyboard": True, # 使用Unicode编码方式发送字符串 "resetKeyboard": True, # 键盘隐藏起来 } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
这里安静就不给大家演示了,小伙伴们可以自己动手试试。