一、将测试机连接电脑,手机上会有一些提示,总之都允许就可以了,开始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,最后关闭计算器,操作结束;

Appium+Python+Pycharm如何创建并运行自动化测试脚本【真机运行】的更多相关文章

  1. 如何在 iOS 真机运行 Appium

    使用 gui 启动的 appium 1.2.2 也会有这个问题,所以你要把 deviceconsole 复制到 /Applications/Appium.app/Contents/Resources/ ...

  2. Appium移动端自动化测试-安卓真机+模拟器启动

    一.环境准备 appium-pythin-client版本(0.17),selenium版本(2.53.6)(版本需对应,否则执行脚本可能出错,我用的是这两个版本) macOs版本10.14.1(ap ...

  3. 二.Android手机自动化测试真机运行

    手机自动化测试用例虽然可以在模拟器上运行,可是模拟器毕竟和真机还是有区别的.在搞定了模拟器上运行测试用例后,我又花了两天的时间,研究了一下真机运行测试用例.期间也遇到了不少问题,不过最终还是搞定了,现 ...

  4. 第四章 Appium真机运行测试用例讲解

    -----手机自动化之Appium 手机自动化测试用例虽然可以在模拟器上运行,可是模拟器毕竟和真机还是有区别的.在第二章我们讲到了模拟器上运行测试用例后,我又花了两天的时间,研究了一下真机运行测试用例 ...

  5. Appium学习之驱动真机运行

    一.Appium工具的简单原理 Appium工具可以分为:客户端(appium-client).服务端(appium-server)和移动设备端(模拟器或者真机).客户端支持多语言,如:python- ...

  6. 安卓第一课:android studio 的环境搭建与真机运行以及遇到的问题

    AS的下载: https://developer.android.com/studio/index.html AS的安装: android studio, sdk, virtual device都要安 ...

  7. ;~ 并发运行的AutoHotkey脚本真机实际测试模板参考20191010.ahk

    ;~ 并发运行的AutoHotkey脚本真机实际测试模板参考20191010.ahk;~ 2019年10月10日;~ 徐晓亮(aahk6188);~ 操作系统测试环境: Windows 7 专业版 3 ...

  8. ReactNative真机运行指南

    ReactNative真机运行指南 注意在iOS设备上运行React Native应用需要一个Apple Developer account并且把你的设备注册为测试设备.本向导只包含React Nat ...

  9. ionic ios项目真机运行-不用开发者账号

    ionic ios项目真机运行-不用开发者账号 1. 添加ios平台 ionic platform add ios 2.使用XCODE打开项目 3.使用APPID登录XCODE 打开XCODE账号登录 ...

随机推荐

  1. absoulue与relative配合定位盒子居中问题

    如何通过absoulue与relative配合把一个盒子或者是把2个div块同时放到页面中央部分?定位完成后为什么又需要margin-left与margin-top各往回走50%的长度,别忘记用z-i ...

  2. transition 过渡的兼容性处理

    transition兼容性: 封装一个js来验证浏览器是否兼容transition,以及选择兼容的写法 以下是transition.js (function(){ //判断transition属性是否 ...

  3. 【iOS】Spring Animations (弹性动画)

    This interface shows how a spring animation can be created by specifying a “damping” (bounciness) an ...

  4. Maven项目的目录问题

    创建maven项目,使不使用骨架都行. java项目的目录 src/main  项目 java存放.java文件,resources存放静态资源.配置文件.映射文件. 静态资源一般在resources ...

  5. redis 5.0.7 源码阅读——双向链表

    redis中双向链表相关的文件为:adlist.h与adlist.c 一.数据结构 redis里定义的双向链表,与普通双向链表大致相同 单个节点: typedef struct listNode { ...

  6. 使用PropTypes进行类型检查

    原文地址 1.组件特殊属性——propTypes 对Component设置propTypes属性,可以为Component的props属性进行类型检查. import PropTypes from ' ...

  7. Python——模块和包

    一.概念 """模块():一个python文件,以 .py 结尾,包含python对象定义和语句.模块可以定义函数.类.变量,也可包含可执行文件 导入模块: 1.impo ...

  8. JS淘宝浏览商品

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8 ...

  9. Javaweb项目中修改表单时数据回显方法

    1.前言 先来说下什么是数据回显,比如我要修改我的个人信息,点击修改按钮后进入修改界面,在这个界面中直接将原来的信息显示在表单中,而不是空表单,这就是数据回显 2.思路 当点击修改的时候,从数据库中查 ...

  10. redis主从同步,总是显示master_link_status:down的解决方法

    小编使用的redis的版本号是5.0.5,可能会略有不同,例如redis.conf配置文件中,没有slaveof这一项配置 使用命令配置主从复制 今天在使用命令slaveof或者是replicaof命 ...