Appium移动端自动化测试--搭建模拟器和真机测试环境
详细介绍安装Android Studio及Android SDK、安装Appium Server。
文章目录如下
模拟器--安装Android Studio及Android SDK
推荐直接安装Android Studio,然后使用Android Studio安装SDK。
启动SDK Manager,安装自己所需要的版本,下载安装即可。
然后进行设置ANDROID_HOME环境变量
ANDROID_HOME=D:\InstallationDirectory\Android\android-sdk
安装完成之后点击 手机图标,创建一个虚拟手机
注意: 安装新建Android虚拟机时选择版本尽量选择9.0,最开始我选择的是10.0,在使用等待时不是很稳定,还没花时间去深入研究。
虚拟机已经创建成功,如下图所示:
模拟器--更改VDM默认存储路径
在新建VDM虚拟机的时候,发现没新建几台C盘就爆红了,原来是忘记更改VDM存储位置了,默认存储在了C盘,一台手机八九个G,不红才怪呢。
找了下设置方法如下:
ANDROID_SDK_HOME=D:\InstallationDirectory\Android\Android_Virtual
然后重新启动SDK Manager即可。
接下来打开cmd命令窗口,进行查看是否连接模拟器启动的手机,输入:
adb devices 即可查看已连接设备;
adb devices -l 即可查看drivers的详细信息;
以上是使用模拟器时需要安装的模拟器环境。
下面介绍连接真机(Android)时需要做的操作和设置
真机(Android)环境设置
真机--开启开发者模式
首先你需要有一台真实的Android手机。
连接真机,需要打开开发者模式。
在手机上找到设置>系统>关于手机>版本号,然后连续点击7次即可开启开发者模式。
完成上述操作之后会提示您,您已处于开发者模式;我们会在设置选项里,看到开发者模式这一项,如下图:
真机-- 打开USB调试
在开发者选项 or 开发人员选项中,打开USB调试,如下图,在USB调试中勾选:
真机连接--文件传输
将安卓手机用数据线与电脑连接时,若是出现USB连接方式,一般有三个选项:传输照片、文件传输、仅充电, 请选择文件传输
然后在电脑端打开CMD窗口,输入: adb devices -l 查看已连接的设备。
至此,模拟器换进和真机都已经设置完成,接下来使用cmd命令开始安装已下载的apk安装包。
安装apk文件
到这里不管是模拟器还是真机都是一样的安装方法。
cmd窗口输入命令,安装apk安装包,比如安装已下载好的雪球apk安装包:
adb install D:\InstallationDirectory\apk\xinglicheng.apk
如下图,显示已经安装成功,可到模拟器或者是Android真机上去查看是都安装成功。
到这里模拟器和真机的环境都准备好了,接下来就是安装Appium Server了。
通过npm安装Appium Server
Appium 是使用Node.js来开发的,所以需要安装Node.js
1、下载安装Node.js (推荐LTM)和npm
https://nodejs.org/zh-cn/download/
2、安装Appium
方法一、官网下载Appium地址安装:
https://github.com/appium/appium-desktop/releases/tag/v1.15.1
方法二、npm安装Appium
官方版安装:npm install -g appium(被墙了)
(推荐先设置淘宝镜像仓库地址再进行安装)
npm install -g cnpm --registry=https://registry.npm.taobao.org
npm config set registry https://registry.npm.taobao.org
验证是设置Taobao镜像是否成功: npm config get registry
安装Appium:
cnpm install -g appium
启动Appium GUI模式
不更改任何配置,选择”启动服务器“
如下图可看到已经连接成功
点击下图中的放大镜图标,启动检查器会话
并对新弹出的会话窗口进行设置,然后启动会话
- platformName---设备平台:填Android或IOS
- deviceName----设备名:按上边adb查出的设备名填写即可,Android可以随便填写一个即可。
- appPackage----要启动的app的包名:微信是"com.tencent.mm"
- appActivity----要启动的界面:微信启动界面是".ui.LauncherUI"
{
"platformName": "android",
"deviceName": "ruancexiaosheng",
"automationName": "uiautomator2",
"appPackage": "com.xueqiu.android",
"appActivity": ".view.WelcomeActivityAlias"
}
Appium连接会话
然后到Appium界面中,输入相关的配置参数,选择Customer Server界面,再点击下图中的"启动会话",即可调起inspector。
之后就会出现下图的inspector连接界面,倘若界面没有更新,点击中间的刷新按钮即可看到最新的界面。
Error:
An unknown server-side error occurred while processing the command. Original error: Could not sign with default certificate. Original error Command 'C:\Program Files\Java\jdk1.8.0_77\bin\bin\java.exe' not found. Is it installed?
不知什么原因,感觉提示的路径就是错误的,后来升级到Appium1.15.1之后就没报错了。
Error:
appium Could not connect to server; are you sure it's running?
在运行Appium时,要选择Customer Server,再启动即可,如下图所示
Appium Server安装困难可能出现的原因:
- 部分依赖在海外无法访问。
- Node.js 安装不要用 root 权限安装。
- Node.js 版本不宜太低,也不宜太高,推荐 LTS 版本,或者从 Appium 源代码中获得推
荐的版本。 - 需要 python2 存在。
- node_module 不具备写入权限。
- Windows 下需要依赖编译工具。
- PATH 变量要设置 adb java 等路径,可以用 appium-doctor 验证。
- iOS 还需要解决 WebDriverAgent 的编译和依赖下载问题。
Appium移动端自动化测试--搭建模拟器和真机测试环境的更多相关文章
- MAC电脑下Appium + python3 + robotframework ios的真机测试环境搭建
本人的环境搭建前的准备,MAC电脑一台(macOS Mojave 10.14.0及以上),Xcode 10.0及以上 ,自己注册的一个Apple ID 账户,必须你的电脑能连接互联网,最好不要用公 ...
- appium ios真机自动化环境搭建&运行(送源码)
appium ios真机自动化环境搭建&运行(送源码) 原创: f i n 测试开发社区 6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...
- appium ios真机自动化环境搭建&运行(送源码)
appium ios真机自动化环境搭建&运行(送源码) 原创: f i n 测试开发社区 6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...
- 【转2】Appium 1.6.3 在Xcode 8 (真机)测试环境搭建 经验总结
Appium 1.6.3 在Xcode 8 (真机)测试环境搭建经验总结 关于 Appium 1.6.3 在Xcode 8, 1真机上环境搭建问题更多,写此文章,供大家参考,让大家少走弯路. 在开始i ...
- appium 移动端自动化测试工具
appium 移动端自动化测试工具 appium 移动端自动化测试工具 appium 是哟个自动化测试开源工具 支持ios和安卓平台的应用 以及web应用和混合应用 appium 是一个跨平台的工具: ...
- ios framework 分离与合并多种CPU架构,分离与合并模拟器与真机
ios framework 分离与合并多种CPU架构,分离与合并模拟器与真机 如果你所用的framework支持真机和模拟器多种CPU架构,而你需要的是其中的一种或几种,那么可以可以从framewo ...
- 移动web开发之移动端真机测试
× 目录 [1]特性 [2]安装 [3]设置[4]移动端 前面的话 chrome的开发者工具可以很好地做好模拟工作,但毕竟模拟和实际还是有差别的.所以,真机测试是一定要做的,如何高效地进行真机测试呢. ...
- [转] iOS开发之使用lipo命令制作模拟器与真机通用静态库
转自 http://blog.csdn.net/jinglijun/article/details/8276089 通常在项目中使用静态库的时候都会有两个版本,一个用于模拟器,一个用于真机,因为Mac ...
- iOS 静态库中使用宏定义区分iPhone模拟器与真机---备用
问题描述 一般项目中,可以使用宏定义来判断模拟器还是真机,这无疑是有效的. #if TARGET_IPHONE_SIMULATOR #define SIMULATOR 1 #elif TARGET_O ...
随机推荐
- Java实现堆排序问题(变治法)
问题描述 用基于变治法的堆排序算法对任意一组给定的数据进行排序 2.1 堆排序原理简介 堆可以定义为一颗二叉树,树的节点中包含键(每个节点是一个键),并且满足下面两个条件: (1)树的形状要求--这颗 ...
- Java实现第九届蓝桥杯螺旋折线
螺旋折线 题目描述 如图p1.pgn所示的螺旋折线经过平面上所有整点恰好一次. 对于整点(X, Y),我们定义它到原点的距离dis(X, Y)是从原点到(X, Y)的螺旋折线段的长度. 例如dis(0 ...
- 分享一个新出炉的JVM里不痛不痒的BUG(Attach机制相关)
本文来自: PerfMa技术社区 PerfMa(笨马网络)官网 概述 老早之前写过一篇文章,关于attach机制的,可以看下这篇老文章了解一下JVM源码分析之Attach机制实现完全解读,比如大家常用 ...
- redis基础知识详解
一.redis基础知识 1.Redis是什么Redis是一个开源的key-value存储系统. 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表 ...
- ClickHouse基本操作(一)
常用SQL 创建表 1 2 3 4 5 6 7 CREATE TABLE b6logs( eventDate Date, impid UInt64, uid String, idfa String, ...
- 【个人博客 hexo】一个小时就搭好属于自己的博客
对于经常需要发博客的小伙伴来说,拥有一个属于自己的博客网站,听起来是不是很酷. 今天我就来告诉大家,怎么搭建一个属于自己的博客网站,我们需要的就是使用hexo+github来搭建我们自己博客系统. 你 ...
- 06.Django-用户认证
用户认证 Django 内置一个 auth 模块,帮助用户实现注册.登录.注销以及修改密码等功能,帮助开发者省去了很多功夫 用于认证的数据表 auth_user User是auth模块中维护用户信息的 ...
- windows注册表删除右键菜单
1.删除空白处右键菜单 HKEY_CLASSES_ROOT\Directory\background\shell HKEY_CLASSES_ROOT\Directory\background\shel ...
- Cypress系列(16)- 查找页面元素的基本方法
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 前端页面代码 后面写的 Cypress ...
- 【shell】十分钟轻松入门;如果没入门,您吐口口水再走吧!
一.什么是shell? Shell是什么? 1.Shell 是一个程序,Linux默认是用bash. Shell 是一个用 C 语言编写的程序,既是一种命令语言,又是一种程序设计语言,是用户使用Lin ...