一、将测试机连接电脑,手机上会有一些提示,总之都允许就可以了,开始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. SQLServer之查询当前服务器下所有目录视图表

    SQL脚本 /*************1:删除临时表*************/ if exists(select * from tempdb..sysobjects where id=object ...

  2. Learning hard 学习笔记

    第一章 你真的了解C#吗 1.什么是C#, 微软公司,面向对象,运行于.NET Framework之上, 2.C#能编写哪些应用程序, Windows应用桌面程序,Web应用程序,Web服务, 3.什 ...

  3. Html介绍,标签的语法

    1.标签由英文"<"和">"括起来组成,如<html>就是一个标签2.html中的标签一般都是成对成对出现的,分为开始标签和结束标签.结 ...

  4. ES集群调整搜索速度

    一.内存文件系统足够的缓存 Elasticsearch严重依赖于文件系统缓存,以加快搜索速度.通常,您应确保至少有一半的可用内存分配给文件系统缓存,以便Elasticsearch可以将索引的热区保留在 ...

  5. 题解【CF1311F Moving Points】

    \[ \texttt{Preface} \] 赛时,把 " 任意时刻 " 理解成 " 整数时刻 " 了,看起来一脸不可做的亚子,还各种推式子. 话说我为什么觉得 ...

  6. Java多线程之互斥锁Syncharnized

    public class Bank { private int money; private String name; public Bank(String name, int money) { th ...

  7. selenium实现网易邮箱的登录注册

    #实现163网站的注册 from selenium import webdriver import time driver = webdriver.Chrome() url = 'https://ma ...

  8. Apache Solr Velocity模板注入rce+获取交互式shell

    前言: 官方的poc.exp payload只能获取很低的命令执行权限,甚至有些符号.命令还被过滤了,例如管道符被过滤.并且不能写入.下载文件,不能使用管道符重定向文件.那么我们只能通过获取到交互式s ...

  9. DoraBox sql注入&文件上传

    SQL注入 1.sqli数字型 判断是否存在注入点,执行1 and 1=1,有回显判断存在注入点 判断字段数,执行1 order by 3以及执行1 order by 4时报错,判断字段数为3 判断具 ...

  10. JN_0018:运行窗口不显示

    1,新建vbs文件 CreateObject("WScript.Shell").Run "cmd /c E:/OneDrive/NodeJS/WebServer/star ...