一、将测试机连接电脑,手机上会有一些提示,总之都允许就可以了,开始USB调试模式,之后打开cmd,输入adb devices,查看手机是否成功连接,如下图所示:
上图中可以看到,有一台设备已经成功连接了电脑;
二、打开pycharm,新建一个python文件,输入一段测试脚本(实现功能:让手机打开计算器并输入2018,然后关闭计算器)
caps = {}
caps["platformName"] = "Android" # 平台名称
caps["platformVersion"] = "5.1.1" # 设备系统的版本号
# caps["deviceName"] = "127.0.0.1:62001"# 夜神虚拟机
caps['deviceName'] = '50f98a9f' # 手机型号
caps["appPackage"] = "cn.qysxy.daxue"
caps["appActivity"] = ".modules.login.LoginActivity"
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', caps)
如何获取appPackage和appActivity的信息,这里有一个极为实用的命令:adb shell dumpsys activity |find "mFocusedActivity"
这个命令很有可能对于Android8.0不适用,别慌,还有一个命令,适合手机中已经安装的应用(如淘宝、微信、QQ等),命令:adb shell dumpsys window w|findstr \/|findstr name=
因为当前已经连接了手机,随意打开手机里的一个app,如计算器,打开cmd,输入以上命令回车,如图所示
红框中的信息“.modules.login.LoginActivity”就是此app的appActivity。
"cn.qysxy.daxue"就是appPackage
此外,还要设置一下Pycharm中settings中的Project Interpreter,一定要选择本地python的安装路径,默认不是本地的python!!!
三、启动Appium(建议以管理员身份启动Appium),点击安卓图标进行设置,如图所示:
ps:No Reset--控制每次运行是否从重新安装app开始
四、点击设置图标,进行如下设置,如图所示:
ps:Override Existing Session--将服务的session配置成可重写(非必要设置)
五、接下来,启动Appium服务,等下控制台输出以下信息:
六、通过pycharm运行我们编写好的测试脚本,(注意观察手机动作),执行结束后会在Appium日志台输出以下信息则说明测试成功:
PS:从运行脚本开始,手机的动作是这样的:首先安装appium settings和unlock程序,然后打开计算器,输入2018,最后关闭计算器,操作结束;