目录
一、测试的前提:启动app
二、启动过程:
三、问题
一、测试的前提:启动app
from appium import webdriver import time #创建字典 desired_caps=dict() #给字典赋值,设备相关信息 #平台的名字,不区分大小写,ios,android desired_caps[ 'platformName' ]= 'Android' #平台版本,根据手机版本填写,可以直接写最前方的部分,例: 5.3 . 5 -》写 5 desired_caps[ 'platformVersion' ]= '10' #设备名字:android:可以随意写,但不能为空 ios:ipone x 这种设备名字 desired_caps[ 'deviceName' ]= '192.168.56.101:5555' #app的包名,adb获取包名 desired_caps[ 'appPackage' ]= 'com.android.settings' #app的界面,adb获取界面名 desired_caps[ 'appActivity' ]= 'com.android.settings.HWSettings' #webdriver模块中的Remote类 '' ' 1 .尝试连接appium服务 2 .设备相关信息 '' ' driver=webdriver.Remote( 'http://localhost:4723/wd/hub' ,desired_caps) time.sleep( 5 ) driver.quit() |
二、启动过程:
appium的启动实质是在本机使用了4723端口开启了一个服务。
1,python代码会访问本机appium服务器,获取driver对象
2,appium会将driver对象调用的方法转化为post请求,提交给appium服务器
3,appium通过接收到的post请求发送到手机,由手机来执行
三、问题
1.打开app的时候报错:java.lang.SecurityException: Permission Denial: starting Intent ;
原因:配置中的appActivity并不是App启动时最先加载时的Activity, 所以Appium无法启动App。