一、将测试机连接电脑,手机上会有一些提示,总之都允许就可以了,开始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. 【转载】structlog4j介绍

    源文章:structlog4j介绍 结构化日志对于日志的收集的作用挺大的,根据自身的业务场景,基于SLF4J实现了structlog4j. 相关引用 Gradle // 基础包 compile 'te ...

  2. gcc 将两个文件合成一个文件(c)

    一个文件是: 一个文件是: 两个文件的作用是输出一段文字,其中一个文件调用了另一个文件 gcc 命令为: -c 生成了object 文件,-o 生成了可执行文件,并且合成.

  3. adworld easy_RSA | RSA算法

    题目描述: 解答出来了上一个题目的你现在可是春风得意,你们走向了下一个题目所处的地方 你一看这个题目傻眼了,这明明是一个数学题啊!!!可是你的数学并不好.扭头看向小鱼,小鱼哈哈一笑 ,让你在学校里面不 ...

  4. React网络请求跨域代理设置

    之前的之所以可以请求其他域名下的网络数据,是因为我们在服务端设置了相关配置,如下所示 如果将其注释掉,再次测试,如下所示 此时便无法跨域操作,接下来介绍下React如何实现跨域代理 (1)分析 Rea ...

  5. 数据库MySQL之show processlist

    在实际项目开发中,如果我们对数据库的压力比较大,比如有大批量的查询或者插入等sql,尤其是多线程插入等情况,针对部分执行比较慢的sql,我们可以将其kill掉,常用的一个命令就是show proces ...

  6. 吴裕雄--天生自然 JAVA开发学习:Java 开发环境配置

  7. 题解【洛谷P2730】魔板 Magic Squares

    题面 首先我们可以发现,在每一次 BFS 时按照 \(A→B→C\) 的顺序枚举遍历肯定是字典序最小的. 然后就是普通的 BFS 了. 我们考虑使用 \(\text{STL map}\) 来存储起点状 ...

  8. CSS的一些文本操作有哪些

    一.文本的对齐方式 text-align:center/left/right text-align:justify; font-style:normal/italic/oblique/inherit ...

  9. Java连载86-List集合详解

    一.List集合 1.List集合存储元素的特点: (1)有序(List集合中存储有下标)​:存进去是这样的顺序,取出来还是按照这个顺序取出​. (2)可重复 2.深入ListJ集合 ArrayLis ...

  10. Spring Boot Starter 开发指南

    Spring Boot Starter是什么? 依赖管理是任何复杂项目的关键部分.以手动的方式来实现依赖管理不太现实,你得花更多时间,同时你在项目的其他重要方面能付出的时间就会变得越少. Spring ...