我有一个Jenkins Matrix构建,可以并行地将我的Android测试分成5个节点。目前,这五个节点中的每一个都必须构建我的Android二进制文件,这需要花费几分钟时间(这意味着我需要支付此构建步骤所需的虚拟机数量的6倍)。
有人知道如何构建我的二进制文件并将生成的工件发布到Matrix构建中的从属服务器吗?
我很确定我可以通过使用Jenkins“MultiJob Project”实现这一目标,但这样做的缺点是我需要完全单独配置主从作业。
有没有人有更好的想法?
更好的是,当模拟器在所有从属设备上启动时,我是否可以在主设备上运行Android版本?!那太棒了......
答案 0 :(得分:2)
我会将事情分成两个部分:一个是构建应用程序的常规(自由式)作业,成功时存档APK,并触发测试(矩阵)作业的下游构建。
矩阵作业将使用Copy Artifact plugin将刚刚编译的APK拉入每个矩阵变体的工作空间。无论构建运行的位置或测试构建的运行位置,APK都将自动复制到正确的计算机。
您还可以通过为每台(虚拟)计算机运行多个仿真器来节省资金,因为通常不需要保持仿真器的隔离。