打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
appium+python自动化46-安装app三种方式

前言

adb安装

1.在app自动化之前,首先手机上有要被测试的app,如何把电脑本地上的app安装到手机上呢?可以在运行自动化代码前,在cmd输入adb指令,把电脑app安装到手机上

adb install [apk在电脑上的绝对路径]

2.也可以用python执行adb命令安装app,代码实现如下:

# coding:utf-8 import os # 安装app,为了方便,把app放到当前脚本同一目录 os.system("adb install baidu.apk")

appium本地安装

1.appium也可以实现自动安装app,在工程下单独建个app文件夹,待安装的app放到此文件夹下

2.在工程下再建个case文件夹,写用例时候先获取app的绝对路径

3.为了获取路径方便,可以写个函数去获取,这样方便调用

4.进一步优化代码,用lambda函数更简洁,功能等价于上一步

# coding:utf-8 import os # 作者:上海-悠悠 QQ交流群:512200893 # 获取项目的根目录路径 p = os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)),"..")) print(p) appPath = lambda x:os.path.join(p, "app", x) print(appPath("baidu.apk"))

5.运行代码安装指定文件夹下app

# coding:utf-8 from appium import webdriver import os # 作者:上海-悠悠 QQ交流群:512200893 # 获取项目的根目录路径 p = os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)),"..")) # 获取app路径 appPath = lambda x:os.path.join(p, "app", x) print(appPath("baidu.apk")) desired_caps = {                'platformName': 'Android',                'deviceName': '127.0.0.1:62001',                'platformVersion': '4.4.2',                'app': appPath("baidu.apk"),                'appPackage': 'com.baidu.yuedu',                'appActivity': 'com.baidu.yuedu.splash.SplashActivity',                'noReset': 'true',                } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

appium在线安装

1.如果没有本地的app包,有个在线下载地址也是可以实现自动安装的。比如打完测试包后上传到一个指定的下载地址,通过这个下载地址也能实现安装

2.以百度阅读app为案例,百度搜索:百度阅读app,从下载页面获取到app的下载地址

http://p.gdown.baidu.com/b8d3f4be0e333cca250c2d3663bd2ba59f87740a58b4288dd0725134e7f455721f254aeb5c678ff9e6aa0d90b7322b1b06c5f3239bd7b726d2b0f2ac187f7c95e08cf4ef572d854a546c1814c9ad9101c58f29b5df2eeb11e751cff1d1a9d6d1e74aab7e8d53a9039a3c5cbea8e461ecb3348cd38123bebedf6a9976c2fa7f1f1df6a6543c6d73124796e97a34cca9792f10878c878d124be5e1582911aea7870e909130f73adfac

3.代码里面只需把app参数后面的本地地址改成在线地址就可以了

“app”: “app下载在线地址”

4.代码参考:

# coding:utf-8 from appium import webdriver import os # 作者:上海-悠悠 QQ交流群:512200893 appUrl = "http://p.gdown.baidu.com/b8d3f4be0e333cca250c2d3663bd2ba59f87740a58b4288dd0725134e7f455721f254aeb5c678ff9e6aa0d90b7322b1b06c5f3239bd7b726d2b0f2ac187f7c95e08cf4ef572d854a546c1814c9ad9101c58f29b5df2eeb11e751cff1d1a9d6d1e74aab7e8d53a9039a3c5cbea8e461ecb3348cd38123bebedf6a9976c2fa7f1f1df6a6543c6d73124796e97a34cca9792f10878c878d124be5e1582911aea7870e909130f73adfac" desired_caps = {                'platformName': 'Android',                'deviceName': '127.0.0.1:62001',                'platformVersion': '4.4.2',                'app': appUrl,                'appPackage': 'com.baidu.yuedu',                'appActivity': 'com.baidu.yuedu.splash.SplashActivity',                'noReset': 'true',                } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Appium 解决部分机型 appium 安装应用时需要手动确认的问题
全网最全最细的appium自动化测试环境搭建教程以及appium工作原理
使用python编写脚本获取手机当前应用apk的信息
Appium 服务关键字
appium python的APP自动化(1)
python爬虫23 | 手机,这次要让你上来自己动了。这就是 Appium+Python 的牛x之处
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服