[发明专利]一种基于iOS系统下的App自动化持续集成系统及方法在审
申请号: | 201710657531.1 | 申请日: | 2017-08-03 |
公开(公告)号: | CN107632829A | 公开(公告)日: | 2018-01-26 |
发明(设计)人: | 尚晓楠;宣善明 | 申请(专利权)人: | 大唐网络有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/445;G06F11/36 |
代理公司: | 北京科家知识产权代理事务所(普通合伙)11427 | 代理人: | 陈娟 |
地址: | 100088 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 ios 系统 app 自动化 持续 集成 方法 | ||
技术领域
本发明涉及APP开发、集成、维护、升级技术领域,特别是一种基于iOS系统下的App自动化持续集成系统及方法。
背景技术
众所周知,现在APP的竞争已经到了用户体验为王,质量为上的白热化阶段,用户们都是很挑剔的。如果一个公司的推广团队好不容易砸了重金推广了一个APP,好不容易有了一些用户,由于一次线上的bug导致一批的用户在使用中纷纷出现闪退bug,轻则,很可能前期推广砸的钱都白费了,重则,口碑不好,未来也提升不起用户量来了。这就需要APP不断更新迭代版本,然而APP的每个版本开始都会估算好开发周期,但是总会因为各种事情而延期。这其中包括了一些客观因素。由于产品线增多,迭代速度越来越快,给测试带来的压力也越来越大。如果测试都在开发完全开发完成之后再来测试,那就会影响很长一段时间,这时候由于集成晚就会严重拖慢项目节奏;另外,APP的打包对于开发人员来说是一件很耗时,而且没有很大技术含量的工作。如果开发人员一多,相互改的代码冲突的几率就越大,加上没有产线管理机制,代码仓库的代码质量很难保证,这就需要花一些时间来解决冲突,解决完了冲突还需要自己手动打包,这个时候如果证书又不对,又要耽误好长时间。
为了保证App的持续开发与维护,我们需要很多独立的服务,特别是对iOS开发中复杂的bundle ID、证书文件、Provisioning Profiles、推送证书复杂关系的维护,开发组件的版本维护,源码维护,源码与稳定组件的关联方式,这些都需要独立的服务器去管理。当所有的App资源都准备好后,我们需要编译服务器去编译出我们需要的ipa文件,并发分到测试服务器或者交互到客户或者上传AppStore,这些就需要用到我们的编译服务和自动化测试服务。
因此,亟待开发一种基于iOS系统下的App自动化持续集成系统及方法。
发明内容
本发明的目的是要解决现有技术问题的不足,提供一种基于iOS系统下的App自动化持续集成系统及方法。
为达到上述目的,本发明是按照以下技术方案实施的:
一种基于iOS系统下的App自动化持续集成系统,包括MAC客户端、证书模块、组件模块、Git模块、编译模块、资源分发模块和测试模块,其中:
Mac客户端,用于上传和下载证书、组件、源代码,上传测试用例以及发起编译指令;
证书模块,包括证书资源服务器,用于管理Mac客户端上传的证书,并提供给编译模块进行编译;
组件模块,包括组件服务器,用于管理Mac客户端上传的组件和版本,并提供给编译模块进行编译;
Git模块,包括Git服务器,用于管理Mac客户端上传的源代码,并提供给编译模块进行编译;
编译模块,包括编译服务器,用于将源代码、组件、证书进行编译,并执行打包成ipa程序包并上传至资源分发模块;
资源分发模块,包括分发服务器,用于通过Mac客户端的指令执行分发App至测试模块,和/或根据App的用途不同上传AppStore和/或下载;
测试模块,包括测试服务器,用于向iOS手机客户端和/或iOS模拟器发送执行测试用例,并生成测试报告反馈给开发人员。
其中,所述源代码包括引用组件的lock文件,Mac客户端和编译服务器通过lock文件去下载所需的组件。
基于上述一种基于iOS系统下的App自动化持续集成系统,本发明还提供了一种基于iOS系统下的App自动化持续集成方法,具体步骤如下:
S1、通过Mac客户端上传所需证书文件到证书资源服务器,上传所需组件与组件版本到组件服务器,再上传源代码到Git服务器,源代码用Git服务器进行管理,并嵌入lock文件;
S2、从Mac客户端向编译服务器发起编译指令,编译服务器从Git服务器下载所需源代码并解析lock文件,从组件服务器获取组件整合进源代码,再从证书资源服务器下载所需证书,编译服务器根据证书的分发用途编译不同的ipa程序包后执行打包并上传至分发服务器;
S3、分发服务器通过Mac客户端的指令执行分发App至测试服务器,和/或根据App的用途不同上传AppStore和/或下载;
S4、测试服务器向iOS手机客户端和/或iOS模拟器发送执行测试用例,并生成测试报告反馈给开发人员。
其中,所述步骤S1中Git服务器主要使用Git进行版本管理,Mac客户端通过git push命令上传源代码,Mac客户端通过git pull命令拉取源代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大唐网络有限公司,未经大唐网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710657531.1/2.html,转载请声明来源钻瓜专利网。