搭建安卓自动化测试框架记录:

需要的软件:

jdk版本:jdk1.8

appium版本:v1.4.16 下载AppiumForWindows.zip (下载appium1.7不需要配置环境变量)

node.js:node-v5.7.0-x64.msi

Android SDK:android-sdk-windows,免安装版

      

1、jdk、Maven环境变量配置:

  变量配置:JAVA_HOME    C:\Program Files\Java\jdk1.8.0_161

  path:%JAVA_HOME%\bin;

  CLASSPATH配置:    .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

  变量配置:MAVEN_HOME    D:\apache-maven-3.5.3

  path:%MAVEN_HOME%\bin;

  cmd命令行窗口:java -version 查看jdk版本;mvn -version查看maven版本  

2、Android SDK 环境变量配置:

  变量配置:ANDROID_HOME    D:\Program Files\Android\sdk

  path:%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;

  cmd命令行窗口:输入 android sdk,可以打开Android SDK Manager

    

    

  当需要的包下载失败时,打开 settings设置下,输入代理:mirrors.neusoft.edu.cn 端口号:80

    

3、nodejs:

  下载v5.7.0版本https://nodejs.org/en/blog/release/v5.7.0/,根据提示安装,选中 Add to PATH安装成功后会自动化配置到系统变量path里

    

  安装成功后,在cmd命令行窗口,输入npm,提示如下:

    

  

  输入node -v  查看node版本号;输入npm-v  查看npm版本号,成功获取到node的版本号,表示node已经安装成功

    

4、Appium:

  下载AppiumForWindows.zip 1.4.16,根据提示安装,安装好后配置环境变量

 环境变量配置:

  变量配置:APPIUM_HOME    D:\Program Files (x86)\Appium

  path:%APPIUM_HOME%;%APPIUM_HOME%\node_modules\.bin;

  配置好环境变量,在cmd命令行窗口输入:appium-doctor,说明appium安装成功

    

  在cmd命令行窗口输入:appium,有以下提示,appium 环境调试成功

    

5、问题记录:

  node版本用nodev8.9.3,在命令行窗口输入:appium,提示: 查了下说node版本太高,换了低版本的node

    error: uncaughtException: Cannot find module 'internal/util/types' date=Sat Jan
    05 2019 16:23:32 GMT+0800 (中国标准时间), pid=168276, uid=null, gid=null, cwd=D:
    \Program Files (x86)\Appium\node_modules\appium, execPath=D:\Program Files\nodej
    s\node.exe, version=v8.9.3, argv=[D:\Program Files\nodejs\node.exe........

  node版本用node-v6.10.0,在命令行窗口输入:appium,提示:

    fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.

  查了下,说是node6不支持appium,最终换成了node-v5.7.0,终于启动appium成功

  

--------------------------------------------------------------------------------------------------------------------------------------------

自动化过程中发现,UnicodeIME-debug.apk还是有用的,在微信里用华为百度输入法输入时,多加字符,但是用appium的虚拟键盘是没问题的,所以决定取消对它的注释:this.initUnicode.bind(this),但是通过自动化脚本创建appium session时,报error: Failed to start an Appium session, err was: Error: Command failed: "D:\Program Files\android-sdk-windows\platform-tools\adb.exe" -s 37KRX18720004114 install "D:\Program Files (x86)\Appium\node_modules\appium\build\unicode_ime_apk\UnicodeIME-debug.apk"adb: failed to install D:\Program Files (x86)\Appium\node_modules\appium\build\unicode_ime_apk\UnicodeIME-debug.apk: Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install io.appium.android.ime without first uninstalling.],提示手机上已安装了UnicodeIME-debug.apk,再次安装失败,原因是appium1.4版本太低,对安卓8.0系统不支持,所以重新安装了appium1.8 server,解决了appium虚拟键盘重复安装报错的问题

搭建appium+maven手机自动化测试环境搭建的更多相关文章

  1. appium移动端自动化测试环境搭建windows-appium-android

    第一步:安装jdk 安装jdk(1.7版本以上) 安装完成设置jdk环境变量(百度查询) cmd命令下键入 java -version命令检查jdk是否安装成功且设置环境变量成功,如下图所示: 第二步 ...

  2. Appium 简介与自动化测试环境搭建

    1. Appium 简介 2. Appium 自动化测试环境搭建 1. Appium 简介 Appium 是一个开源测试自动化框架,可用于原生,混合和移动 Web 应用程序测试. 它使用 WebDri ...

  3. Appium+Maven+TestNG(ReportNG)环境搭建(详细过程)

    最近群里经常有人会问到关于maven构建Appium测试项目以及使用testNG生成测试报告的问题,试着搭建了一下,下面是过程: jdk安装过程我这里就不说了 一.下载eclipse,推荐下载Ecli ...

  4. 手机自动化测试:搭建appium手机自动化测试开发环境

    手机自动化测试:搭建appium手机自动化测试开发环境   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大 ...

  5. 全网最全最细的appium自动化测试环境搭建教程以及appium工作原理

    一.前言 ​ 对于appium自动化测试环境的搭建我相信90%的自学者都是在痛苦中挣扎,在挣扎中放弃,在放弃后又重新开始,只有10%的人,人品比较好,能够很快并顺利的搭建成功.appium 自动化测试 ...

  6. 自动化测试 Appium之Python运行环境搭建 Part2

    Appium之Python运行环境搭建 Part2 by:授客 QQ:1033553122 实践环境 参见 Appium之Python运行环境搭建 Part1 环境部署 1.安装Android SDK ...

  7. 《手把手教你》系列基础篇之(二)-java+ selenium自动化测试-环境搭建(下)基于Maven(详细教程)

    1.简介 Apache Maven是一个软件项目管理和综合工具.基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件.由于现在企业和公司中Java的大部分项目都是基 ...

  8. 自动化测试 Appium之Python运行环境搭建 Part1

    Appium之Python运行环境搭建 Part1 by:授客 QQ:1033553122 实践环境 Win7 Python 3.4.0 JAVA JDK 1.8.0_121 node.js8.11. ...

  9. Web自动化测试环境搭建1(基于firefox火狐浏览器)

    自动化测试是时代趋势,因此很多测试人员开始研究自动化测试,web自动化测试化测试并不难,但是很多人都是被挡在了环境搭建这一步,后面学习激情全无,这里,韬哥手把手教大家搭建火狐浏览器下的自动化测试环境( ...

随机推荐

  1. [javascript模块化]require.js简单使用

    1.javascript模块规范 CommonJS 主要用于服务器端编程,比如node.js的模块系统,就是参照CommonJS规范实现的.在CommonJS中,有一个全局性方法require(),用 ...

  2. 力扣 — Rotate List()

    题目描述: 中文: 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5->NULL, k = ...

  3. Hibernate中Session的save()、update()、merge()、lock()、saveOrUpdate()和persist()方法有什么区别?

    Hibernate的对象有三种状态:瞬态.持久态和游离态.游离状态的实例可以通过调用save().persist()或者saveOrUpdate()方法进行持久化:脱管状态的实例可以通过调用 upda ...

  4. 进程调试--进程启动VS自动附加

    程序启动VS自动附加到进程调试 1. 打开注册表regedit 2. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\currentversion\i ...

  5. JavaSE---IO体系

    1.BIO 1.1 Block IO,同步阻塞IO: 1.2 eg:java.io   包下的      InputStream . OutputStream.  Writer.Reader... j ...

  6. sql中的(case when then else end )的用法(相当于java中的if else)

    Case具有两种格式:简单Case函数和Case搜索函数. 1.简单Case函数: CASE sex WHEN‘1’THEN‘男’ WHEN‘0’THEN‘女’ ELSE‘其他’END 2.Case搜 ...

  7. 【leetcode】519. Random Flip Matrix

    题目如下: You are given the number of rows n_rows and number of columns n_cols of a 2D binary matrix whe ...

  8. PHP filter_var_array() 函数

    定义和用法 filter_var_array() 函数获取多个变量,并进行过滤. 该函数对过滤多个值很有用,无需重复调用 filter_var(). 如果成功,则以数组形式返回请求变量的值.如果失败, ...

  9. php 后台转发和重定向的区别及kohana框架当前url加参数方式

    1.重定向是浏览器行为,浏览器地址有变化:转发是后台服务器完成, url地址不变化. 2.kohana获取URL 当前url是http://soyoung.kohana.com/blog/add?id ...

  10. vue登录页和主页路由配置问题

    登录页和主菜单首页是同一级的,都是用一个router-view,对于home页面里还有菜单,这里边还可以再增加一个router-view,那么在配置时候就是在home的路径增加个children路径配 ...