Android在无头机器上与Jenkins进行单元测试
我正在收集信息,为Android单元测试在无头机器上设置Jenkins CI服务器。 但由于Android单元测试需要一个模拟器来运行,所以似乎需要一个图形环境,或者可以在非图形模式下运行模拟器吗? 网站上的wiki条目对这一问题也不是很有启发性,它指出: 如果您有运行headless的构建从属服务器(例如,不运行X服务器的Linux服务器),建议利用Jenkins的Xvnc插件。 启用此插件后,您可以在无头从机上并行运行多个Android仿真器,同时启用“ShowEmulator window”选项 这是否意味着模拟器可以在禁用“ShowEmulator window”选项的无头机器上运行 如果需要一个图形环境,大多数资料来源提到的最简单的解决方案是使用Xvnc插件,它使用Xvnc服务器提供一个X实例。Android在无头机器上与Jenkins进行单元测试,android,unit-testing,jenkins,Android,Unit Testing,Jenkins,我正在收集信息,为Android单元测试在无头机器上设置Jenkins CI服务器。 但由于Android单元测试需要一个模拟器来运行,所以似乎需要一个图形环境,或者可以在非图形模式下运行模拟器吗? 网站上的wiki条目对这一问题也不是很有启发性,它指出: 如果您有运行headless的构建从属服务器(例如,不运行X服务器的Linux服务器),建议利用Jenkins的Xvnc插件。 启用此插件后,您可以在无头从机上并行运行多个Android仿真器,同时启用“ShowEmulator window
但是,如果我正确理解这个Xvnc服务器必须在另一台有X可用的机器上运行,或者它运行在提供X实例的无头机器上?作为该插件的作者,我可以告诉您是的:您可以在无头机器上运行模拟器,而无需图形环境-只需取消选中“显示模拟器窗口”选择权 这相当于在命令行上使用“
-no window
”选项运行Android emulator
我会更新维基,让它更清晰;谢谢你把它提出来。我的项目中也有类似的设置。但我在单元测试中选择了Robolectric 在Jenkins上运行机器人分子测试非常容易 您可能需要在无头Jenkins服务器上使用emulator进行系统测试
我仍然没有在无头服务器上运行系统测试的解决方案。没问题;我现在已经改进了wiki文档。似乎再次出现问题:无法初始化后端EGL显示模拟器:警告:无法使用软件渲染器初始化OpenglES仿真。-您需要添加-无音频。。。。这是一只虫子