appium工作原理

appium 在android端工作流
  1. client端也就是我们 test script是我们的webdriver测试脚本。

  2. 中间是起的Appium的服务,Appium在服务端起了一个Server(4723端口),跟selenium Webdriver测试框架类似, Appium⽀持标准的WebDriver JSONWireProtocol。在这里提供它提供了一套REST的接口,Appium Server接收web driver client标准rest请求,解析请求内容,调用对应的框架响应操作。

  3. appium server会把请求转发给中间件Bootstrap.jar ,它是用java写的,安装在手机上.Bootstrap监听4724端口并接收appium 的命令,最终通过调用UiAutomator的命令来实现。

  4. 最后Bootstrap将执行的结果返回给appium server。

  5. appium server再将结果返回给 appium client。

一、环境准备

  win10版本  64位操作系统

  安卓机   6.0.1版本

  jdk  9.0.1 64位

  android-sdk   23(安卓6.0对应sdk23)

  python  2.7.14

  node.js  node-v8.12.0-x64.msi

  appium  appium-desktop-setup-1.7.1.exe

二、JDK下载安装

三、android-sdk下载安装

解压后,里面有个SDK manager.exe,设置 Android SDK Manager 国内镜像地址

  1. 启动 Android SDK Manager ,打开主界面,依次选择「Tools」、「Options…」,弹出『Android SDK Manager – Settings』窗口;
  2. 在『Android SDK Manager – Settings』窗口中,在「HTTP Proxy Server」和「HTTP Proxy Port」输入框内填入mirrors.neusoft.edu.cn和80,并且选中「Force https://… sources to be fetched using http://…」复选框。设置完成后单击「Close」按钮关闭『Android SDK Manager – Settings』窗口返回到主界面;
  3. 依次选择「Packages」、「Reload」。

四、android-sdk环境变量

1.在系统变量新建:ANDROID_HOME,对应变量值为:D:\appium\android-sdk\android-sdk-windows(sdk安装路径)

2.path添加两个变量D:\appium\android-sdk\android-sdk-windows\tools和D:\appium\android-sdk\android-sdk-windows\platform-tools

五、adb环境

1.因为adb是在android-sdk-windows\platform-tools这个目录下的,所以上面添加了环境变量后,可以直接在cmd里面运行了。

2.在cmd输入adb可以查看对应版本号

六、连接手机

1.手机用数据线以USB连电脑

2.打开cmd输入:adb devices,当屏幕上出现一串字符,后面显示device说明连接成功

七、python安装

八、安装node.js

九、安装appium

十、安装Appium-Python-Client

1.前面python环境安装,已经准备好pip了,所以这里直接打开cmd,输入:pip install Appium-Python-Client

十一、获取apk包名

  1.将准备测试的APK放到D盘某个目录,如D:\test

  2.打开cmd,输入指令aapt dump badging D:\test\xxx.apk(APK的全名)

  package: name='XXX'

十二、获取launcherActivity

  1.接着上一步操作,cmd屏幕拖到中间l找到auncherActivity

  launchable-activity: name='XXXXXX'

十五、写脚本

# coding=utf-8
from appium import webdriver desired_caps = {
'platformName': 'Android',
'deviceName': 'cdc7d766',
'platformVersion': '6.0',
# apk包名
'appPackage': 'XXX',
# apk的launcherActivity
'appActivity': 'XXXXXX'
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

Python+Appium自动化环境搭建的更多相关文章

  1. appium自动化环境搭建(python语言开发)

    简述 1.安装jdk,配置环境变量 2.安装AndroidSDK,配置环境变量 3.安装Python 4.安装Python集成开发环境PyCharm 5.安装node 6.安装appium服务端 7. ...

  2. 【转载】appium自动化环境搭建

    1.java开发环境JDK 2.android SDK(platform/platform tools/tools/build tools) 3.python下载安装(pip) 4.appium下载安 ...

  3. Python + Selenium 自动化环境搭建过程

    1.  所需组建 1.1  Selenium for python 1.2  Python 1.3  Notepad++ 作为刚初学者,这里不建议使用Python IDE工具,选择一个功能强大的记事本 ...

  4. appium自动化环境搭建

    1.java开发环境JDK 2.android SDK(platform/platform tools/tools/build tools) 3.python下载安装(pip) 4.appium下载安 ...

  5. java+appium 自动化环境搭建

    1.安装JDK1.7及以上 2.下载解压sdk并且配置环境变量: ANDROID_HOME:...\adt-bundle-windows-x86_64-20140702\sdk PATH:%ANDRO ...

  6. Appium自动化环境搭建(windows+Android)

    开始安装: 1.首先搭建好Android开发环境(eclipse+jdk+android的sdk包+Level17或以上的版本api) 2.设置ANDROID_HOME系统变量为你的Android S ...

  7. python + selenium - 自动化环境搭建

    1. 安装python (1)下载地址:https://www.python.org/downloads/windows/ (2)安装方式:默认安装即可 (3)环境变量配置:打开[系统属性]-[环境变 ...

  8. Appium+python自动化-环境搭建

    一.前言 本文是在windows10  X64系统下搭建appium,流程如下: 1.安装jdk1.8+python3.6 (64位) 2.安装node.js 3.安装Appium-desktop 4 ...

  9. 零基础搭建appium自动化环境

    目录 1.关键概念 2.安装过程 2.1.安装nodejs 2.2.安装appium 2.3.安装Android SDK 2.4.安装模拟器 2.5.安装Python3 2.6.安装appium Cl ...

随机推荐

  1. orika core工具对实体(Bean)进行深度拷贝

    1. 在pom.xml中添加orika core依赖: <!-- https://mvnrepository.com/artifact/ma.glasnost.orika/orika-core ...

  2. day18包的使用与日志(logging)模块

    包的使用与日志(logging)模块1. 什么是包    包就是一个包含有__init__.py文件的文件夹    包本质就是一种模块,即包是用包导入使用的,包内部包含的文件也都是用来被导入使用2 为 ...

  3. JVM总结-虚拟机加载类

    从 class 文件到内存中的类,按先后顺序需要经过加载.链接以及初始化三大步骤.其中,链接过程中同样需要验证:而内存中的类没有经过初始化,同样不能使用.那么,是否所有的 Java 类都需要经过这几步 ...

  4. mysql-5.5.50-winx64

    1.help 2.Service 3.Configure 4.User 5.design last 1.获取帮助文档 cd C:\Program Files\mysql\mysql-5.5.50-wi ...

  5. Tomcat相关的配置和设置

    1.Tomcat环境配置方法见百度文库.略. 2.查看. webapps:所有课执行的WEB项目都放在次目录中 work:此文件保存了所有临时文件,当开发中发现一个程序无法正确执行的时候,就可以考虑将 ...

  6. mezzanine的page表

    class Orderable(with_metaclass(OrderableBase, models.Model)): """ Abstract model that ...

  7. mongo admin 客户端管理工具安装

    Ubuntu14.04 1. 选择安装的目录cd /home/sea2. git clone https://github.com/mrvautin/adminMongo.git && ...

  8. react-native android打包

    看了官网测试的是可以的,自己整理下,方便后面查看 先是生产安卓证书,安卓证书生成,点这里.这里掠过 生成安卓证书,记住2个密码 秘钥库口令 和 私钥密码 1.然后把你生成的安卓证书放到文件放到你工程中 ...

  9. 用代码检查Windows程序的位数

    方法就是通过读取程序文件的头部来判断,具体代码如下: #include <stdio.h> #include <windows.h> int CrnGetImageFileMa ...

  10. java解析文件

    遇到两个小坑: 1.使用String.split,部分分隔符需要转义:https://www.cnblogs.com/mingforyou/archive/2013/09/03/3299569.htm ...