官网对于搭建selendroid列出如下要求:

  1. 就如 Junit 一样,Selendroid 可以在 Mac,Linux 和 Windows 上使用。Java 主打的就是跨平台。
  2. Java SDK (至少1.6)必须安装。配置 JAVA_HOME 环境变量。 重要: 如果 JAVA_HOME 指向了 JRE(Java runtime environment),Selendroid 会有错误,因为 jarsigner 等工具只有 JDK 下面才有。
  3. 请安装最新的 Android-Sdk,配置 ANDROID_HOME 环境变量。
  4. 模拟器和真机必须有一个。

一、安装Java

只要不低于1.6版本就行了,可以到官网https://www.java.com/zh_CN/下载最新版本。

安装Java后,需要配置环境变量。

“我的电脑”右键菜单--->属性--->高级--->环境变量--->系统变量-->新建.

依据实际安装路径添加几个条目如下:

  • 变量名:JAVA_HOME;变量值:C:\Program Files\Java\jdk1.8.0_65;
  • 变量名:CLASSPATH;变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(开头的点号不要忘记)

找到path变量名-->“编辑”,添加:

  • ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

重启电脑后,在cmd命令行中,输入java -version命令,出现下图中的内容就说明java安装好了。

二、安装Android-Sdk

在 http://dl.google.com/android/installer_r23.0.2-windows.exe 下载Android的SDK安装包。需要注意的是,安卓虚拟机的镜像文件都很大,如果以后要使用安卓虚拟机,那么SDK的安装路径最好选一个空间大的磁盘。

如果打开Android SDK Manager后,显示如下,说明当前网络无法更新SDK的组件。

此时,在Android SDK Manager 的菜单栏上点击“Tools”---->“Options”,进行如下配置

这里提供一组可用于Http proxy server的镜像地址如下,可以从中选一个网速快的。

Android SDK在线更新镜像服务器

南阳理工学院镜像服务器地址:

mirror.nyist.edu.cn 端口:

中国科学院开源协会镜像站地址:

IPV4/IPV6: mirrors.opencas.cn 端口:

IPV4/IPV6: mirrors.opencas.org 端口:

IPV4/IPV6: mirrors.opencas.ac.cn 端口:

上海GDG镜像服务器地址:

sdk.gdgshanghai.com 端口:

北京化工大学镜像服务器地址:

IPv4: ubuntu.buct.edu.cn/ 端口:

IPv4: ubuntu.buct.cn/ 端口:

IPv6: ubuntu.buct6.edu.cn/ 端口:

大连东软信息学院镜像服务器地址:

mirrors.neusoft.edu.cn 端口:

腾讯Bugly 镜像:

https://dsx.bugly.qq.com/repository/1

然后,重启Android SDK Manager,显示如下,说明配置成功。

然后安装上图中的Android SDK Platform-tools。因为不打算使用安卓虚拟机,所以其他组件就不再安装。

安装完成后,配置环境变量。

“我的电脑”右键菜单--->属性--->高级--->环境变量--->系统变量-->新建.

依据实际安装路径添加条目如下:

  • 变量名:ANDROID_HOME ;变量值:C:\Program Files (x86)\Android\android-sdk;

找到path变量,追加如下:

  • %ANDROID_HOME %\tools;%ANDROID_HOME %\platform-tools;

重启电脑,用数据线连接手机和电脑。然后在cmd命令中,输入adb devices命令,有下图内容就说明SDK配置好了。

注:如果电脑没有安装过手机驱动,使用adb devices命令是查询不到连接到电脑的手机的。可以借助360手机助手、豌豆荚等工具,这些工具会为连接到电脑的手机自动安装驱动程序。

三、安装selendroid

官网http://selendroid.io/如下

  1. Selendroid Test App:selendroid-test-app-0.17.0.apk(在官网首页即可下载,目前版本是0.17.0);
  2. Selendroid Standalone with dependencies:selendroid-standalone-0.17.0-with-dependencies.jar(在官网首页即可下载,目前版本是0.17.0);

然后打开cmd命令行,进入下载文件所在目录,运行下面命令:

java -jar selendroid-standalone-0.17.0-with-dependencies.jar -app selendroid-test-app-0.17.0.apk

显示如下,就说明selendroid运行成功了,已连接的设备编号是7N2SSE1555046736,selendroid在端口4444进行监听。

在浏览器的地址栏中输入下面地址,并敲击回车。

localhost:4444/wd/hub/status

可以看到下图所示信息:

{
"value":
{
"os":
{
"name":"Windows 10",
"arch":"amd64",
"version":"10.0"
},
"build":
{
"browserName":"selendroid",
"version":"0.17.0"
},
"supportedDevices":
[
{
"emulator":false,
"screenSize":"(1080, 1920)",
"serial":"7N2SSE1555046736",
"platformVersion":"19",
"model":"H60-L01",
"apiTargetType":"google"
}
],
"supportedApps":
[
{
"mainActivity":"io.selendroid.testapp.HomeScreenActivity",
"appId":"io.selendroid.testapp:0.17.0",
"basePackage":"io.selendroid.testapp"
},
{
"mainActivity":"io.selendroid.androiddriver.WebViewActivity",
"appId":"io.selendroid.androiddriver:0.17.0",
"basePackage":"io.selendroid.androiddriver"
}
]
},
"status":0
}

大致含义是:

  • PC的操作系统是windows,版本10,64位;
  • 支持的设备不是模拟器,是一个真机,序列号是7N2SSE1555046736,API level 是19;
  • 支持的app有testapp和androiddriver(默认自动安装用于 mobile web 测试的androiddriver);
  • supportedDevices:是一个设备池,维护着所有可用的真机和虚拟机。
  • supportedApps:是一个应用池,维护着所有可测的应用。

我们以后写测试脚本都会需要这些信息。

环境搭建,至此结束。

win10搭建selendroid测试环境的更多相关文章

  1. 使用WampServer和DVWA在Windows10上搭建渗透测试环境

    前言: DVWA是一个具有脆弱性的Web测试应用,需要PHP和MySQL的环境支持.我们可以手动配置DVWA所需的运行环境,也可以使用WampServer进行搭建.WampServer是集成了Apac ...

  2. 使用XAMPP和DVWA在Windows7上搭建渗透测试环境

    前言: XAMPP是一个Web应用程序运行环境集成软件包,包括MySQL.PHP.PerI和Apache的环境及Apache.MySQL.FilleZilla.Mercury和Tomecat等组件.D ...

  3. 使用Rancher搭建K8S测试环境

    使用Rancher搭建K8S测试环境 http://blog.csdn.net/csdn_duomaomao/article/details/75316926 环境准备(4台主机,Ubuntu16.0 ...

  4. 利用Docker Compose快速搭建本地测试环境

    前言 Compose是一个定义和运行多个Docker应用的工具,用一个YAML(dockder-compose.yml)文件就能配置我们的应用.然后用一个简单命令就能启动所有的服务.Compose编排 ...

  5. 一文教您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticsearch, MongoDB) | 建议收藏

    欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...

  6. Docker-教你如何通过 Docker 快速搭建各种测试环境

    今天给大家分享的主题是,如何通过 Docker 快速搭建各种测试环境,本文列举的,也是作者在工作中经常用到的,其中包括 MySQL.Redis.Elasticsearch.MongoDB 安装步骤,通 ...

  7. 一文带你趟过mac搭建appium测试环境的遇到的坑

    做UI自动化,最难的一步就是在环境搭建上,怎么去搭建一个UI自动化测试的环境,会难住很多人,在Mac上搭建appium如何搭建呢,本文带着大家去领略如何在mac上搭建appium测试环境.下面就是详细 ...

  8. flume搭建新手测试环境

    硬件环境: 腾讯云,两台服务器8G 双核 软件环境: flume1.8.jdk1.8,centos6 第一次搭建也是各种找文件,只知道flume是日志抓取服务,也听说了非常稳定强大的服务,正好公司需要 ...

  9. 快速搭建IE测试环境(Virtualbox+ievms)

    IE下的测试 作为一个有追求的程序员,应该尽可能的远离Windows系统.不论从专业开发者的角度,还是仅仅作为最终用户从使用体验上来说,Windows都可以算是垃圾中的战斗机: 没有shell . 响 ...

随机推荐

  1. AC日记——丢瓶盖 洛谷 P1316

    题目描述 陶陶是个贪玩的孩子,他在地上丢了A个瓶盖,为了简化问题,我们可以当作这A个瓶盖丢在一条直线上,现在他想从这些瓶盖里找出B个,使得距离最近的2个距离最大,他想知道,最大可以到多少呢? 输入输出 ...

  2. 小程序-生成一个小程序码画在canvas画布上生成一张图片分享出去

    这个需求我遇到过2次.一次是在识别二维码后跳转到其它页面,另一次是识别二维码后进入到生成小程序码的当前页面. 我有一个梦想,就是成为一名黑客!!!!!! 小程序中js wx.request({     ...

  3. vs-插件+配置

    { "window.zoomLevel": 0, "files.autoSave": "off", "editor.fontSiz ...

  4. 牛客网 牛客小白月赛1 B.简单题2-控制输出格式

    B.简单题2   链接:https://www.nowcoder.com/acm/contest/85/B来源:牛客网 和A题一样,控制输出格式就可以. 代码: 1 #include<iostr ...

  5. Openlayers3 编辑要素

    参考文章 Openlayers之编辑要素 MAPZONE GIS SDK接入Openlayers3之五——图形编辑工具 [学习笔记之Openlayers3]要素保存篇(第四篇) openlayers实 ...

  6. SSH错误:packet_write_wait: Connection to 10.57.19.250 port 22: Broken pipe

    现象:ssh连接以后,服务器会主动断开连接,wireshark抓包,发线服务器会tcp rst,断开ssh连接 解决尝试:1.修改会话超时时间:2.客户端主动间隔性向服务器发送保活报文:3.服务端主动 ...

  7. Java并发学习 & Executor学习 & 异常逃逸 & 同步互斥Best Practice & wait/notify, conditon#await/signal

    看了这篇文章:http://www.ciaoshen.com/2016/10/28/tij4-21/ 有一些Java并发的内容,另外查了一些资料. 朴素的Thread 首先,Java中关于线程Thre ...

  8. nginx-location rewrite

    location 语法 location 有”定位”的意思, 根据Uri来进行不同的定位. 在虚拟主机的配置中,是必不可少的,location可以把网站的不同部分,定位到不同的处理方式上. 比如, 碰 ...

  9. android相关文件夹的存取方式与函数解析---全

    因为排版问题.转为markdown编辑: http://blog.csdn.net/self_study/article/details/58587412

  10. 【转载】ASP和ASP.NET根本区别

    ASP.NET和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强.ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型.面向结构的编程语言,而非面向对象,这就明显 ...