技术领域
本发明涉及程序开发技术领域,具体涉及一种基于工作流的微信小程序开发交付方法及交付系统。
背景技术
目前,开发微信小程序的工作流程通常为:开发人员完成程序开发后发布小程序体验版,测试人员在小程序体验版上进行测试,测试通过后通知开发人员将小程序正式版发布到微信平台。现有的微信小程序开发工作流程主要存在以下2个技术问题:
1、发布小程序体验版时,需开发人员手动配置访问本地项目的地址环境,不同的微信小程序需要配置不同的地址环境,配置过程繁琐,效率低下,且容易出现错漏;
2、测试人员部署软件程序测试环境需要开发人员的协助,流程不透明不可控不可追溯,沟通不便,效率低下。
发明内容
本发明以减少微信小程序开发重复繁琐的手动配置上传工作,让测试人员以可视化方式接管测试环节的程序上传部署流程,使整个程序开发流程透明可控可溯源为目的,提供了一种基于工作流的微信小程序开发交付方法及交付系统。
为达此目的,本发明采用以下技术方案:
提供一种基于工作流的微信小程序开发交付方法,步骤包括:
1)将微信小程序开发任务接入到任务发布系统中,所述任务发布系统为所述微信小程序开发任务关联对应的代码仓库,并创建对应的代码分支;
2)开发人员在所述代码分支中进行微信小程序开发,并在开发完成后将任务流转给测试人员;
3)所述测试人员在待测试任务列表中选定所述任务后,所述任务发布系统自动上传所述待测试任务对应的微信小程序体验版并部署好测试环境;
4)所述测试人员对所述微信小程序体验版进行测试后,根据测试结果将所述任务流转给所述开发人员进行二次开发或者流转给代码审核人员进行代码审核;
5)运维人员将代码审核通过的所述微信小程序发布到微信平台。
本发明还提供了一种基于工作流的微信小程序开发交付系统,可实现所述的微信小程序开发交付方法,所述系统包括:
任务接入模块,用于将微信小程序开发任务接入到任务发布系统中;
代码仓库关联模块,连接所述任务接入模块,用于为接入的所述微信小程序开发任务关联对应的代码仓库;
代码分支创建模块,连接所述代码仓库关联模块和所述任务接入模块,用于为接入的所述微信小程序开发任务创建对应的代码分支;
程序开发模块,连接所述任务接入模块、所述代码仓库关联模块和所述代码分支创建模块,用于提供给开发人员在所述代码分支中进行微信小程序开发;
任务流转模块,连接所述程序开发模块,用于在程序开发完成后对所述微信小程序开发任务进行待测试状态标记后流转给测试人员;
程序上传及测试环境自动部署模块,连接所述任务流转模块,用于在所述测试人员选定待测试任务后自动上传所述微信小程序体验版并部署好程序测试环境;
程序测试模块,连接所述程序上传及测试环境自动部署模块,用于提供给所述测试人员一可视化窗口在所部署的测试环境下对上传的所述微信小程序体验版进行程序测试,生成测试结果;
所述任务流转模块,还连接程序测试模块,还用于在测试未通过后对所述微信小程序开发任务进行待二次开发标记后将任务重新流转给所述开发人员,并用于在测试通过后进行待审核代码标记后将任务流转给代码审核人员;
代码审核模块,连接所述任务流转模块和所述程序测试模块,用于提供给所述代码审核人员对测试通过的微信小程序进行代码审核,并生成审核结果;
所述任务流转模块,还用于在代码审核通过后进行程序待发布标记后将任务流转给运维人员,并用于在代码审核未通过后进行待二次开发标记后将任务重新流转给所述开发人员;
程序发布模块,连接所述任务流转模块和所述代码审核模块,用于提供给所述运维人员一可视化窗口将代码审核通过的所述微信小程序发布到微信平台。
本发明具有以下有益效果:
1、通过将微信小程序开发任务接入到任务发布系统将任务以可视化的方式同步给不同阶段的人员,让整个程序开发工作流程透明可控且可溯源;
2、为每个微信小程序开发任务创建对应的代码分支,开发人员即便同时开发多个任务,也不会弄错代码分支,减少了程序开发中的错漏;
3、由测试人员接管小程序体验版的上传以及程序测试环境部署工作,系统接收到测试人员的测试指令后,自动上传小程序体验版并部署好程序测试环境,不再需要开发人员协助部署软件测试环境,提高了工作效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的基于工作流的微信小程序开发交付方法的实现流程图;
图2是本发明一实施例提供的基于工作流的微信小程序开发交付系统的结构示意图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本专利的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若出现术语“上”、“下”、“左”、“右”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
在本发明的描述中,除非另有明确的规定和限定,若出现术语“连接”等指示部件之间的连接关系,该术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个部件内部的连通或两个部件的相互作用关系。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本发明实施例提供的基于工作流的微信小程序开发交付方法,如图1所示,包括:
步骤S1,将微信小程序开发任务接入到任务发布系统中,任务发布系统为微信小程序开发任务关联对应的代码仓库,并创建对应的代码分支;一个任务从需求到发布会涉及到多个不同的角色,不同角色需要共享这个任务的信息(比如任务的当前开发状态、开发人员信息等)。将微信小程序开发任务接入到任务发布系统中将任务以可视化的方式同步给不同阶段的人员,解决了目前微信小程序开发流程不够透明且不可控的问题;
为每一个微信小程序开发任务创建对应的代码分支,这样即便同时开发多个任务,开发人员也不会弄错代码分支。
步骤S2,开发人员在代码分支中进行微信小程序开发,并在开发完成后将任务转给测试人员,此时测试人员可在任务发布系统中看到待测试的任务以及任务相关信息,包含需求描述、开发分支、任务创建人、任务状态以及当前角色可进行的任务操作类型等。
步骤S3,测试人员在待测试任务列表中选定待测试任务后,任务发布系统自动上传待测试任务对应的微信小程序体验版并部署好测试环境;在这一阶段,测试人员选定待测试任务后向系统发出程序上传及测试环境部署指令,系统接收到该指令后会调用微信小程序的ci工具上传体验版,对uni-app(使用vue.js开发小程序、H5、app的统一前端框架)应用来说,打包工具编译时在webpack生命周期走到done(即编译完成)时调用工具上传。所要上传的小程序版本的相关信息定义在项目目录下的package.json文件中,体验版上传时工具会去package.json文件中将版本相关信息取出并上传。
小程序对项目内部请求环境根据编译命令行参数决定,在webpack编译时确定,这个命令行参数由测试人员在系统中选择。
步骤S4,测试人员对微信小程序体验版进行测试后,根据测试结果将任务流转给开发人员进行二次开发或者流转给代码审核人员进行代码审核;具体地,当测试出程序有问题时将任务打回给开发人员进行二次开发,问题修复并通过测试后即可进入stable验证流程。系统会在任务进入stable验证阶段时,调用gitlab的web api生成该任务分支合并到主干的MR,并通过钉钉通知的方式通知项目负责人去审查相关的代码修改是否正确,只有项目负责人关闭了这个合并请求,才能允许测试人员把相关代码部署到stable环境验证,验证通过即可让运维人员接收小程序的正式发布流程。
步骤S5,运维人员将代码审核通过的微信小程序发布到微信平台。具体地,运维人员根据任务信息在微信平台上填写好发布信息并提交版本审核,通过审核后在任务发布系统中一键合并代码到主分支,结束任务发布流程。
本发明还提供了一种基于工作流的微信小程序开发交付系统,可实现上述的微信小程序开发交付方法,如图2所示,该微信小程序开发交付系统包括:
任务接入模块,用于微信小程序开发任务接入到任务发布系统中;
代码仓库关联模块,连接任务接入模块,用于为接入的微信小程序开发任务关联对应的代码仓库;
代码分支创建模块,连接代码仓库关联模块和任务接入模块,用于为接入的微信小程序开发任务创建对应的代码分支;
程序开发模块,连接任务接入模块、代码仓库关联模块和代码分支创建模块,用于提供给开发人员在代码分支中进行微信小程序开发;
任务流转模块,连接程序开发模块,用于在程序开发完成后对微信小程序开发任务进行待测试状态标记后流转给测试人员;
程序上传及测试环境自动部署模块,连接任务流转模块,用于在测试人员选定待测试任务后自动上传微信小程序体验版并部署好程序测试环境;
程序测试模块,连接程序上传及测试环境自动部署模块,用于提供给测试人员一可视化窗口在所部署的测试环境下对上传的微信小程序体验版进行程序测试,生成测试结果;
任务流转模块,还连接程序测试模块,还用于在测试未通过后对所述微信小程序开发任务进行待二次开发标记后将任务重新流转给开发人员,并用于在测试通过后进行待审核代码标记后将任务流转给代码审核人员;
代码审核模块,连接任务流转模块和程序测试模块,用于提供给代码审核人员一可视化窗口对测试通过的微信小程序进行代码审核,并生成审核结果;
任务流转模块,还用于在代码审核通过后进行程序待发布标记后将任务流转给运维人员,并用于在代码审核未通过后进行待二次开发标记后将任务重新流转给开发人员;
程序发布模块,连接任务流转模块和代码审核模块,用于提供给运维人员一可视化窗口将代码审核通过的微信小程序发布到微信平台。
需要声明的是,上述具体实施方式仅仅为本发明的较佳实施例及所运用技术原理。本领域技术人员应该明白,还可以对本发明做各种修改、等同替换、变化等等。但是,这些变换只要未背离本发明的精神,都应在本发明的保护范围之内。另外,本申请说明书和权利要求书所使用的一些术语并不是限制,仅仅是为了便于描述。
机译: 基于工作流的交付管理方法和系统
机译: 基于工作流的交付管理方法和系统
机译: 基于页面的内容的平台和语言独立开发与交付的系统和方法