持续集成测试工具在mac中有使用较为频繁的Xcode Server服务器,它号称集成了git版本管理和持续集成服务,而且还有文档管理的功能。如下图所示:
Xcode Server工作架构

下面简单描述一下配置过程,当然很多细节还在具体摸索过程中,当前只是跑通了mac客户端和mac Xcode Server服务端。


一、配置Xcode Server服务器

1、apple给开发者可以凭开发者账号免费兑换os x server。免费兑换地址

https://developer.apple.com/osx/download/

2、下载os x server后点击安装。

3、打开 Server 应用,以查看 OS X Server 中提供的服务列表。选择“Xcode”。

点按“选取 Xcode”按钮,然后在“应用程序”文件夹中选择“Xcode”。Xcode 服务将自动启动。

Xcode Server启动服务

二、配置Xcode客户端

1、打开客户端上的xcode然后,选择 XCode 的Preferences,然后选择“Accounts”,在底端点击加号按钮,选择“Add Server”。效果如图所示:
Xcode客户端

2、打开xcode>product>create bot

3、填写bot名称,选择Xcode Server服务器
Xcode Bot配置

4、Actions:选择执行的动作

a、对代码进行静态分析

b、对代码进行单元测试

c、生成archive包(可以选择是否生成用户安装包)

5、cleaning:选择在何时清理项目,有几个选项(总是、每天、每周、从不)

6、configuration:选择编译配置(Debug、release)

7、选择在何时Xcode Server服务器开始持续集成,有几个选项(定时、在有新代码提交时、手动)

8、Before Integration 在开始持续集成前执行的脚本

9、 After Integration在持续集成后执行的脚本

三、Xcode Server服务器证书配置

需要注意的是iOS最变态的就是证书管理了,这里也同样如此需要注意证书的配置。
1、配置Certificates

  • 打开钥匙串,将iPhone Developer: xxx和iPhone Distribution:xxx导出为.p12文件

  • 导入装OS X Server的MAC的钥匙串中,这次需导入到钥匙串系统中,而不是登录中,持续集成生成包时证书由/usr/bin/codesign管理,所以需将codesign添加为允许访问证书的程序,在显示简介中选择 访问控制 >始终通过这些应用程序访问 中点击加号,开始选择/usr/bin/codesign程序。选择完成后点击确认。由于usr是隐藏文件,在选择时使用快捷键 CMD+SHIFT+. 显示隐藏文件

2、将Provisioning Profiles拷贝到Xcode Server

  • Xcode客户端描述文件保存在以下文件夹中User/Library/MobileDevice/ProvisioningProfiles

  • Xcode Server服务器描述文件保存在以下文件夹中 /Library/Developer/XcodeServer/ProvisioningProfiles,将Xcode客户端路径下的证书保存至Xcode Server服务器对应路径下

四、开始构建

可以选择在客户端mac xcode内进行构建,或者mac xcode server内构建,若在xcode server内构建,并可以看到结果如图所示:
Xcode Server构建

后续继续探索,记录以便整理。。。