如何在Android平台上使用WebDriver测试之搭建Android WebDriver测试环境

简介:

最近开始研究Android  wap app 的自动化测试,各大论坛及博客逛了几圈,竟是没发现有用的,而且大部分都是转载,千篇一律,最后好不容易找到点门路 ,同事借了本书,研究半天又发现那书早已过时了,版本都不知更新了几圈了。故跃墙去了官网, 总算是入门了。一鼓作气,记录下详细步骤及成果,供后来者学习之用。

目的:实现Android 浏览器的wap页测试 。

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

搭建Android WebDriver环境

以下使用的Android SDK版本为adt-windows-x86_64,Android Server版本为2.9

  1. 安装Android SDK

    可去官网下载Android SDK

  2. 创建安卓设备(可使用真机或创建模拟器)

1)使用真机:需要连接当前机器

2)创建模拟器,这里可采用开发工具创建也可在AVD管理器上Create.

--进入SDK> tools目录,启动AVD管理器

wKiom1fH0g3ieYo-AAHkve5BRG0935.png-wh_50

--Create模拟器(此处不再详述)

--设置Android模拟器。

有两种方式 运行Android WebDriver ,一种是基于Remote WebDriver Server,另一种基于Android Test Framework.此处介绍Remote WebDriver Server(其方式的使用包括服务器端和客户端)。

客户端:一般使用TestNG组织的Cases Code, 运行时可选择直接在IDE中运行,也可通过命令运行。

服务器端:一般指运行在Android设备上, 包含HTTP服务器的应用程序。运行Cases时, 客户端的每个WebDriver命令都会发送一个采用JSON协议RESTful HTTP请求到服务器端。而远端的HTTP服务器会将客户端发送过来的请求转发给Android WebDriver,并将请求结果发送回客户端。


3.安装设置Android WebDriver Server

1)模拟器或真机均会有一个序列号,即serial ID.通过命令获取设备序列号。此处需要作下说明, 如果没有配置platform-tools的path, 需要先进入sdk>platform-tools目录下再执行命令, 如下:

adb devices

2)下载Android Server的apk文件。

3)安装以上apk文件到设备上,安装命令如下:

adb -s 523b4cb3 -e install -r android-server.2.9.apk

4)启动Android WebDriver应用程序。

5)设置端口转发规则(设置完成后通过访问http://localhost:4444/wd/hub/status验证是否成功):

adb -s 523b4cb3 forward tcp:4444 tcp:8080

6)启动jar包

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

执行Cases(项目中需要导入相应jar包,即selenium相关jar包及selendroid-standalone-0.17.0-with-dependencies.jar)

wKiom1fH4yaTazWYAAFdlSJe56w363.png-wh_50

It's OK.以上就是如何在Android平台上使用Selenium WebDriver测试之搭建Android WebDriver测试环境。当然,搭建过程中会遇到一些问题,欢迎大家提出,笔者也会在后续把自己遇到的一些常见问题整理出来,供大家参考。

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

其他操作

  1. 关于移动设备特有的旋转屏幕、触摸、滚动等操作后续介绍。

  2. 因Android上的浏览器内核基于Webkit,故支持H5,通过Web Storage \Appication Cache,WebDriver与Android上H5 的交互过程。


本文转自 honzhang 51CTO博客,原文链接:http://blog.51cto.com/hongz/1840879

相关文章
|
2月前
|
监控 安全 Android开发
【新手必读】Airtest测试Android手机常见的设置问题
【新手必读】Airtest测试Android手机常见的设置问题
|
2月前
|
Android开发
安卓SO层开发 -- 编译指定平台的SO文件
安卓SO层开发 -- 编译指定平台的SO文件
30 0
|
28天前
|
运维 监控 Java
应用研发平台EMAS产品常见问题之安卓构建版本失败如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
|
28天前
|
缓存 运维 Serverless
应用研发平台EMAS产品常见问题之测试检查更新没有反应如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
|
1月前
|
运维 监控 Android开发
应用研发平台EMAS常见问题之安卓push的离线转通知目前无法收到如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
25 1
|
1月前
|
机器学习/深度学习 人工智能 监控
视觉智能平台常见问题之体验产品的美颜测试关掉如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
22 1
|
1月前
|
存储 Android开发 C++
【Android 从入门到出门】第五章:使用DataStore存储数据和测试
【Android 从入门到出门】第五章:使用DataStore存储数据和测试
30 3
|
1月前
|
存储 SQL 数据库
【Android 从入门到出门】第六章:使用Room数据库并测试
【Android 从入门到出门】第六章:使用Room数据库并测试
29 4
|
1月前
|
网络协议 关系型数据库 MySQL
安卓手机termux上安装MariaDB数据库并实现公网环境下的远程连接
安卓手机termux上安装MariaDB数据库并实现公网环境下的远程连接
|
2月前
|
开发工具 Android开发
安卓系统7.1搭建Xposed环境
安卓系统7.1搭建Xposed环境
27 1