产品特点

这个插件可以让你在构建过程中自动完成一些Android系统相关的任务:

  • 创建一个新的Android模拟器
  • 它的配置可以进行参数设置,包括操作系统版本,屏幕尺寸,语言环境和硬件性能
  • Android的SDK依赖关系自动下载并安装
  • 在运行任何Android模拟器
  • 等待,直到模拟器完全启动机
  • 模拟器快照可以自动创建
  • 这允许非常快的启动时间为后续构建
  • 这将确保后续版本将来自同一个干净的状态开始
  • 日志被自动捕获并保存
  • 仿真器会自动关闭,当构建完成
  • 同样的仿真器的多个实例,从运行的同时防止
  • 它的Android平台,都需要建立一个或多个项目,并自动安装它们检测
  • 产生Ant构建文件的任何应用程序,在工作区中测试或库项目
  • 安装Android包到模拟器
  • 从仿真器卸载Android包
  • 运行猴子压力测试工具
  • 解析输出运行猴
  • 构建结果可以被自动标记为不稳定的或检测出猴诱导崩溃失败的情况下

要求

詹金斯

詹金斯版本1.466或更高版本是必需的。

安卓

该插件会自动下载并安装Android的SDK,如果它尚未安装构建启动时, 
这意味着无需手动操作,开始运行Android模拟器与詹金斯。

你可以,但是,通过主詹金斯配置页上的“在必要时自动安装Android组件”选项来禁用自动安装。

查看说明书SDK安装要求...

组态

系统配置

一般无全局配置是必要的 - 该插件会努力找到任何需要安装的Android的SDK。如果一个人没有找到,它会自动安装。

怎么看SDK位于...

作业配置

运行在无头的生成计算机

如果你有建奴隶这是无头(没有图形用户接口,例如Linux服务器),你仍然可以运行Android模拟器,甚至虽然,在默认情况下,该仿真器需要一个图形环境。

只需勾去掉你的作业配置“显示仿真器窗口”配置选项。这是使用仿真器的“相当于-no窗口 “命令行选项。

使用人工图形环境...

其它要求

此外,虽然Android模拟器插件需要的端口分配器插件,也没有要求这个职位的配置; 一切都是自动处理的-你不必选择在作业配置“分配唯一的TCP端口”复选框。

选择一个模拟器

勾选后“的构建过程中运行Android模拟器”,你会被询问是否要运行现有AVD,还是要创建一个新的具有特定属性上的动态。

用一份工作的现有模拟器只需要你输入你想启动的AVD的名称。这AVD必须存在于每个节点构建的工作将被执行上。现有的自动真空淀积系统被发现在你的$ HOME / .android / AVD目录,并可以使用“上市的Android AVD列表 “命令。
与所有其他的属性,你可以在这里输入环境变量使用格式$ VARIABLE_NAME。

另外,如果你没有建立每个节点上访问一个特定的AVD,该插件可以自动生成一个新的模拟器,如果不存在:

每个属性是强制性的,除了设备的语言环境。如果不进入,美国英语(EN_US)的Android模拟器默认语言环境将启动仿真器时使用。

每个字段将自动完成与默认的Android SDK值,如120,160,240dpi的密度和命名的屏幕分辨率QVGA包括,HVGA,WVGA等等。然而,你可以,如果你想使用自定义的操作系统映像输入自己的价值观,屏幕像素密度,分辨率或区域设置。
屏幕分辨率可以输入或者使用指定的值,或作为“宽时代高度”尺寸,例如480×800。

您可以指定多个硬件属性,如堆大小每个Android应用程序,或设备是否通过单击按钮具有GPS“添加自定义硬件属性”,然后输入值。参见上值的更多详细信息,进入在线帮助。

使用谷歌地图和其他SDK插件...

多配置(矩阵)的工作

这个插件的真正迷死人进来了多配置作业类型一起使用时。

通过使用“运行仿真器的属性”的设置,结合一个或更多的基轴和Android模拟器插件的变量扩展,可以生成和测试了大量不同的Android模拟器配置,用很少的努力。

为了给出一个完整的例子,如果你想在多个Android操作系统的版本,多个屏幕密度,多种屏幕分辨率和多个目标的语言环境来测试你的应用程序,您可以设置你的矩阵轴如下:

由于每种轴名称(例如,“密度”,“区域设置”,“OS”,“决议”),是由詹金斯导出为环境变量,你可以推出一个新的Android模拟器时,利用这些:


当构建执行,这将自动生成,并允许您测试的64个独特的设备配置,你的应用程序。

但是,你要注意,不是所有的组合都是有效的。例如,WVGA(800×480)分辨率的设备使得与120的屏幕密度没有意义的(除非你有超人的视力)。

为了这个目的,你可以使用“组合过滤器”功能,它告诉詹金斯该矩阵轴的组 合是有效的。在屏幕密度和决议的情况下,这样的配置应该指示詹金斯只有构建配置这意义

(密度== “120”).implies(分辨率== “QVGA” ||分辨率== “WQVGA” ||分辨率== “FWQVGA”)&&
(密度== “160”).implies(分辨率== “HVGA” ||分辨率== “WVGA” ||分辨率== “FWVGA”)&&
(密度== “240”).implies(分辨率== “WVGA” ||分辨率== “FWVGA” )

需要注意的是每个变量指基轴,一不是一个Android模拟器插件财产。

建立执行

环境

为方便起见,插件放置一些变量到构建环境与使用的仿真器:

变量名

示例值

描述

ANDROID_SERIAL

本地主机:34564

标识符连接到该AVD,如亚洲开发银行-s本地主机:34564壳

ANDROID_AVD_DEVICE

本地主机:34564

标识符连接到该AVD,如亚洲开发银行-s本地主机:34564壳

ANDROID_AVD_ADB_PORT

34564

使用ADB端口与AVD(每个构建随机)沟通

ANDROID_AVD_USER_PORT

40960

端口用于访问AVD的远程登录的用户界面(随机为每个制作)

ANDROID_AVD_NAME

hudson_en-GB_160_HVGA_android-7

该AVD名称运行构建

ANDROID_AVD_LOCALE

EN_GB

在AVD的语言环境

ANDROID_AVD_OS

2.1

正在运行的AVD的OS版本

ANDROID_AVD_DENSITY

160

在AVD的DPI屏幕像素密度

ANDROID_AVD_RESOLUTION

HVGA

屏幕分辨率的AVD命名或尺寸,

ANDROID_AVD_SKIN

HVGA

正在使用的AVD,例如皮肤WQVGA432或480×800

ANDROID_ADB_SERVER_PORT

51292

该AVD服务器此版本上运行(随机为每个制作)端口

ANDROID_TMP_LOGCAT_FILE

/var/tmp/logcat_943239.log

临时文件到logcat的输出生成过程中被写入(随机为每个制作)

JENKINS_ANDROID_HOME

/家用/詹金斯/工具/ Android的SDK

用于此构建的路径Android的SDK(可选)

ANDROID_HOME

/家用/詹金斯/工具/ Android的SDK

用于此构建的路径Android的SDK(可选)

使用模拟器

现在,你有一个Android模拟器运行时,你可能会想安装一个或多个Android应用程序(的APK),并开始运行一些测试。

基本上,只要你想叫亚行作为构建的一部分,只是把它像往常一样,如亚行安装我-app.apk。

如果你使用的是Android的默认Ant构建系统,您应该指定sdk.dir财产,告诉蚂蚁,它可以找到Android的构建脚本:
只需添加“ sdk.dir = $ ANDROID_HOME “的”属性“字段中输入”调用Ant“构建步骤。

文档旧的插件版本...

安装项目的先决条件

当编译Android项目,您必须安装所有必备Android平台的图像。例如,如果你有一个Android应用程序依赖于一个Android库项目,再加上你有一个单元测试项目 - 这些都可能会针对不同的Android SDK版本,所有这一切都必须出现在编译时。

通常情况下,这些目标版本中任一个“指明project.properties default.properties “文件。

自从2.1版本,该插件提供了一个“ 安装Android项目的先决条件 “构建步骤,能自动侦测目标版本在构建工作空间,然后自动安装任何尚未安装的相应的Android平台的图像。

此生成步骤不需要配置 - 只是构建步骤编译你的Android项目之前添加。

创建项目构建文件

如果你只在Eclipse或使用其它IDE编译项目,您可能没有创建或签入到您的存储库所需的Ant构建文件。

自从2.8版本中,“ 创建Android的构建文件 Android的更新项目 “命令。

安装和卸载的APK

自从1.9版本,该插件可以自动安装的启动模拟器为你的APK。

根据您的作业配置的“构建”部分,选择“添加生成步骤”,然后选择“ 安装Android包 “。

在出现的“APK文件”字段中输入APK你要安装的文件名。当构建运行时,APK将自动后模拟器已启动安装。

注意:也可以使用此生成步骤,而不必开始从这个插件一个仿真器 - 可以连接的设备或其他仿真器上安装的APK。

运行Android 猴子工具

该插件提供了一个名为“生成步骤运行Android猴子测试仪 “,这将运行猴子对给定的Android包压力测试工具。

输出被保存到一个文件-在默认情况下“ monkey.txt。“在构建工作空间的根
,不要忘记用在“生成后行动”,如果你想“存档神器”选项归档文件让猴子输出以供将来参考!

解析猴子输出

还提供了一种解析猴子测试工具的输出的方法。

在“生成后行动”部分,启用“ 发布Android的猴子测试结果 “。无需进行进一步的配置-默认插件将搜索“ monkey.txt在构建工作空间的根“,解析该文件的内容,并显示在构建页面上的结果。

如果猴子输出表现出你的Android应用程序崩溃或导致“应用程序没有响应”的情况,该版本将被标记为不稳定。

你当然可以,指定一个不同的文件名(包括使用的变量)或更改“设置构建结果”选项标记的构建是失败的,而不仅仅是不稳定,或离开它的地位不变的情况下,猴子信息不表示成功。