前言

最近报了个班,学习关于全栈自动化相关内容。学归学。培训就像敲门砖,领人入门,同时可以比较系统性的给学习到关于这块的基础知识(比较好的培训机构)。其次想着总结一些培训知识和遇到的一些问题,以供自己以后用到是参考以及做一些简单的分享。

1、appium简介

appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,web应用和混合应用。appium是一个跨平台的工具,支持Java/Python/Ruby/JavaScript/PHP等语言。

2、环境搭建

Appium使用,需要安装JDK, Andorid SDK, Appium Server以及模拟器或者真机。本博文以win上安装为例

工具下载地址:
链接:https://pan.baidu.com/s/1ykzFI21jbd3qSdeub-7Kwg
提取码:4ifv
复制这段内容后打开百度网盘手机App,操作更方便哦

2.1、JDK安装配置

1、新建 JAVA_HOME 环境变量,变量值:自己安装JDK 的路径。如:C:\Program Files\Java\jdk1.8.0_131;(不建议装到C盘)
2、新建 CLASSPATH 环境变量,值为:%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
3、找到 PATH 变量,追加如下目录:%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;
4、验证: 打开 cmd 命令行窗口, 在命令行窗口中输入java -version,显示如下内容,表示安装成功

2.2、Android SDK安装配置

(1)官网下载(需翻墙):https://developer.android.com/studio/index.html
(2)无需翻墙下载:http://www.androiddevtools.cn/

配置如下:
1、设置 ANDROID_HOME 系统变量,变量值为你的 Android SDK 路径。如:D:\android-sdk-windows
2、把 tools 和 platform-tools 两个目录加入到系统的 Path 路径里。如:%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools​​​​​​​;
3、验证:打开 cmd 命令行窗口, 在命令行窗口中输入adb version,显示如下内容,表示安装成功

2.3、Appium Server安装

下载地址:可使用上述百度网盘,appium1.8
安装基本上下一步即可

3、连接真机

3.1、数据线连接手机

(1)打开开发者选项、USB调试、USB安装及USB调试(安全设置)(该项需要手机插入SIM卡)
(2)打开 cmd 命令行窗口, 在命令行窗口中输入adb devices。发现找不到设备,如图

(3)找到我的电脑,右键‘管理’,找到‘’设备管理器‘’,发现如图问题

发现电脑未能正常安装驱动,尝试自动更新驱动失败。一通百度关于adb interface的事。找到了驱动文件adb_interface_usb_driver。
然后,点击感叹号-更新驱动文件-选择本地驱动文件-选择上方现在好的驱动文件夹-始终安装本驱动软件(百度盗图),等上几十秒,安装成功。

此时,在 cmd 下执行adb devices ,发现成功,显示如下:

尝试 uiautomatorviewer(APP定位元素利器,仅适用于android8及以下版本)

以上appium安装配置完毕!!!

appium配置的更多相关文章

  1. 基于Spring的Appium配置应用

    本文主要是讲述,使用Spring框架,优化Appium的Driver调用,并将写在代码里的大量配置参数定义到配置文件当中,还可灵活的控制调用AndroidDriver还是IOSDriver. Spri ...

  2. Appium环境抢建

    原文:Appium环境抢建(for web browser test)Android SDKAppium安装 nodejs安装 Appium配置手机下载&运行测试项目Appium是Androi ...

  3. 用Appium去操作移动设备上的chrome

    最近在积极努力的学习Appium,今天成功运行了官网上的demo,在此做一个小小的总结: 前期准备工作: (1)在要运行的真机或模拟器上安装chrome. 注意:x86的虚拟机是不支持的,但是经过本人 ...

  4. 篇2 安卓app自动化测试-初识python调用appium

    篇2              安卓app自动化测试-初识python调用appium --lamecho辣么丑 1.1概要 大家好!我是lamecho(辣么丑),上一篇也是<安卓app自动化测 ...

  5. Robotframework-Appium系列:安装配置

    1.   Robotframework-android系列:安装配置 1.1. 安装环境 64位win10家庭中文版 1.1. 安装说明 网上robotframework-appium安装资料也不少, ...

  6. 【转】NO.1、 appium之ios环境搭建

    首先感谢iOS开发同学无私的帮助.   一.环境及版本: xcode:7.1,我是百度下的dmg文件,直接装的,这个太大了,请自行百度,或升级自己的xcode,一般都不需要这一步. appium:1. ...

  7. appium+python环境搭建

    一.环境 1.安装python. 2.安装appium. 3.安装pip 4.安装selenium 5.安装Appium-Python-Client       #cmd->cd setupto ...

  8. Appium+python的环境搭建!

    我的电脑64位操作系统 下载并安装所需软件: 1.adb环境 2.下载(python-2.7.12.amd64.msi)并安装python 3.下载并解压adt,如(adt-bundle-window ...

  9. Appium环境搭建-完整版

    环境依赖 Node.js Appium Appium-desktop Appium-doctor Appium-Python-Client Python JDK Andriod SDK 以上所需的软件 ...

随机推荐

  1. 日志分析-利用grep,awk等文本处理工具完成(2019-4-9)

    0x00 基础日志分析命令 1. tail - 监控末尾日志的变化 $tail -n 10 error2019.log #显示最后10行日志内容 $tail -n +5 nginx2019.log # ...

  2. Ghost-无损DDL

    目录 一.什么是DDL? 二.表级锁和元数据锁 2.1.什么是表锁? 2.2.什么是MDL? 三.什么是无损DDL? 四.DDL重建表 Mysql5.5之前重建表 Mysql5.6之后重建表 五.gh ...

  3. Btree索引和Hash索引

    B-Tree 索引 BTree索引是最常用的mysql数据库索引算法,因为它不仅可以被用在=,>,>=,<,<=和between这些比较操作符上,而且还可以用于like操作符, ...

  4. django表单使用

    一.表单常用字段类型及参数 表单可以自动生成html代码,每一个字段默认有一个html显示样式,大多数默认为输入框. 字段相当于正则表达式的集合,能够对表单传入的数据进行校验,并且某一部分校验失败时会 ...

  5. Java基础单词总结

    单词总结 Actualpayment --- 实际付款   Aggregatemount --- 合计金额      MemberPoints --- 会员积分 Management --- 管理   ...

  6. this指向面试题两则

    面试题1 let len = 10; function fn() { console.info(this.len) } fn(); // A let Person = { len: 5, say: f ...

  7. 4.28 省选模拟赛模拟赛 最佳农场 二维卷积 NTT

    第一次遇到二维卷积 不太清楚是怎么做的. 40分暴力比对即可. 对于行为或者列为1时 容易想到NTT做快速匹配.然后找答案即可. 考虑这是一个二维的比对过程. 设\(f_{i,j}\)表示以i,j为右 ...

  8. windows:根据特征码查找内核任意函数

    在windows平台做逆向.外挂等,经常需要调用很多未导出的内核函数,怎么方便.快速查找了?可以先用IDA等工具查看硬编码,再根据硬编码定位到需要调用的函数.整个思路大致如下: 1.先查找目标模块   ...

  9. Linux的VMWare中Centos7的安装

    Windows平台下VMWare 14安装Centos 7 一.虚拟机硬件配置 1.选择创建新的虚拟机: 2.选择自定义(高级)进行自定义配置,单击下一步: 3.选择虚拟机硬件兼容性为默认,单击下一步 ...

  10. Javascript 创建对象的三种方式

    function createPerson(name, qq) //工厂方式 { //在工厂里创建个对象 var obj=new Object(); obj.name=name; obj.qq=qq; ...