CN110851355A - 前端工程的实施方法及装置、存储介质、电子设备 - Google Patents
前端工程的实施方法及装置、存储介质、电子设备 Download PDFInfo
- Publication number
- CN110851355A CN110851355A CN201911031831.4A CN201911031831A CN110851355A CN 110851355 A CN110851355 A CN 110851355A CN 201911031831 A CN201911031831 A CN 201911031831A CN 110851355 A CN110851355 A CN 110851355A
- Authority
- CN
- China
- Prior art keywords
- branch node
- characteristic
- target
- target functional
- development
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000011161 development Methods 0.000 claims abstract description 118
- 238000012360 testing method Methods 0.000 claims abstract description 80
- 238000011990 functional testing Methods 0.000 claims abstract description 12
- 230000006870 function Effects 0.000 claims description 46
- 238000007689 inspection Methods 0.000 claims description 33
- 238000012544 monitoring process Methods 0.000 claims description 28
- 230000003068 static effect Effects 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 21
- 238000010276 construction Methods 0.000 claims description 20
- 238000012552 review Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000004806 packaging method and process Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008439 repair process Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241000257303 Hymenoptera Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3608—Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种前端工程的实施方法及装置、电子设备、存储介质;涉及计算机技术领域。所述前端工程的实施方法包括:创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;在所述目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。本发明可以简化前端工程开发的流程,提高前端开发的效率,提升用户的使用体验。
Description
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种前端工程的实施方法、前端工程的实施装置、电子设备以及计算机可读存储介质。
背景技术
随着互联网技术的迅速发展,前端开发(Web front-end development)越来越得到人们的重视。
目前,大多数前端开发的工作流是通过Gitflow(一种前端开发管理工具)以及Githubflow(以部署为中心的开发管理工具)进行管理的。但是Gitflow的工作流适合大型复杂的工程团队合作,而且流程以及分支较多,结构比较复杂,工作效率较低;而Githubflow的管理较简单,但是没有规定代码提交标准,没有规定如何进行代码评审,也没有基于分支发布的特性,降低了代码审核的质量,可能导致发布的功能特性较容易出现漏洞,降低用户的使用体验。
需要说明的是,在上述背景技术部分发明的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明的目的在于提供一种前端工程的实施方法、前端工程的实施装置、电子设备以及计算机可读存储介质,进而在一定程度上克服由于相关技术的限制和缺陷而导致的,相关技术中前端开发的工作流较复杂,开发效率较低的问题。
根据本发明的第一方面,提供一种前端工程的实施方法,包括:
创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
在所述目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。
在本发明的一种示例性实施例中,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布,包括:
通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点;
基于所述特性开发分支节点,向所述发布分支节点发起代码评审指令以使所述发布分支节点生成发布数据并将所述目标功能特性进行发布。
在本发明的一种示例性实施例中,在将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布之后,所述方法还包括:
通过目标代码检查平台对已发布的所述目标功能特性进行代码检查以保证所述目标功能特性的代码质量。
在本发明的一种示例性实施例中,获取提交的目标功能特性,还包括:
对所述目标功能特性进行本地静态代码检查;
如果所述目标功能特性通过所述本地静态代码检查,则将所述目标功能特性提交到目标仓库,并通过第三方工具对所述目标功能特性进行二次增量扫描检查;
在确定所述目标功能特性没有通过所述二次增量扫描检查时,执行日志监控告警指令。
在本发明的一种示例性实施例中,在将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布之后,所述方法还包括:
响应于对页面模板的选择操作,获取所述选择操作对应的目标页面模板的配置信息;
根据所述配置信息创建目标页面模板。
在本发明的一种示例性实施例中,根据所述配置信息创建目标页面模板,还包括:
基于所述目标仓库的监听脚本,监听是否有构建分支节点的提交指令;
在监听到有构建分支节点的提交指令时,根据所述提交指令确定所述分支节点的类型;
通过所述类型调用对应的构建脚本以通过所述构建脚本触发对应的服务器端构建所述分支节点。
根据本发明的第二方面,提供一种前端工程的实施方法,包括:
响应于触发开始命令的操作,创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
响应于触发测试命令的操作,获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
响应于触发发布命令的操作,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
在所述目标功能特性发布完成后,将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布;
响应于触发结束命令的操作,删除本地分支节点或者远端分支节点,并清空所述测试环境。
根据本发明的第三方面,提供一种前端工程的实施装置,包括:
特性开发分支节点创建模块,用于创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
目标功能特性测试模块,用于获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
目标功能特性发布模块,用于在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
特性开发分支节点合并模块,用于在所述目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。
在本发明的一种示例性实施例中,所述目标功能特性发布模块还被配置为:
通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点;
基于所述特性开发分支节点,向所述发布分支节点发起代码评审指令以使所述发布分支节点生成发布数据并将所述目标功能特性进行发布。
在本发明的一种示例性实施例中,所述前端工程的实施装置还包括代码检查单元,所述代码检查单元被配置为:
通过目标代码检查平台对已发布的所述目标功能特性进行代码检查以保证所述目标功能特性的代码质量。
在本发明的一种示例性实施例中,所述目标功能特性测试模块还包括静态代码自动检查单元,所述静态代码自动检查单元被配置为:
对所述目标功能特性进行本地静态代码检查;
如果所述目标功能特性通过所述本地静态代码检查,则将所述目标功能特性提交到目标仓库,并通过第三方工具对所述目标功能特性进行二次增量扫描检查;
在确定所述目标功能特性没有通过所述二次增量扫描检查时,执行日志监控告警指令。
在本发明的一种示例性实施例中,所述前端工程的实施装置还包括页面模板创建模块,所述页面模板创建模块包括:
配置信息获取单元,用于响应于对页面模板的选择操作,获取所述选择操作对应的目标页面模板的配置信息;
目标页面模板单元,用于根据所述配置信息创建目标页面模板。
在本发明的一种示例性实施例中,所述页面模板创建模块还包括服务器端创建单元,所述服务器端创建单元被配置为:
基于所述目标仓库的监听脚本,监听是否有构建分支节点的提交指令;
在监听到有构建分支节点的提交指令时,根据所述提交指令确定所述分支节点的类型;
通过所述类型调用对应的构建脚本以通过所述构建脚本触发对应的服务器端构建所述分支节点。
根据本发明的第四方面,提供一种前端工程的实施装置,包括:
开始命令触发单元,用于响应于触发开始命令的操作,创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
测试命令触发单元,用于响应于触发测试命令的操作,获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
发布命令触发单元,用于响应于触发发布命令的操作,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
节点合并单元,用于在所述目标功能特性发布完成后,将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布;
结束命令触发单元,用于响应于触发结束命令的操作,删除本地分支节点或者远端分支节点,并清空所述测试环境。
根据本发明的第五方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的方法。
根据本发明的第六方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的方法。
本发明示例性实施例可以具有以下部分或全部有益效果:
在本发明的一示例实施方式所提供的前端工程的实施方法中,创建控制分支节点,并基于控制分支节点创建特性开发分支节点;获取提交的目标功能特性,并将特性开发分支节点直接部署到测试环境以对目标功能特性进行功能性测试;在目标功能特性测试完成后,通过控制分支节点以及特性开发分支节点确定发布分支节点,以通过发布分支节点将目标功能特性进行发布;在目标功能特性发布完成后,将特性开发分支节点并入控制分支节点以完成对目标功能特性的发布。一方面,取消Gitflow中的特性开发分支节点(Develop分支),直接将特性开发分支节点直接部署到测试环境进行目标功能特性的测试,简化了前端开发流程以及分支结构,提升前端开发的效率;另一方面,在目标功能特性发布完成后,将特性开发分支节点并入控制分支节点,并进行代码检查,保证目标功能特性对应代码的质量,提升用户的使用体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本发明实施例的一种前端工程的实施方法及装置的示例性系统架构的示意图;
图2示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图;
图3示意性示出了根据本发明的一个实施例的相关技术中通过Gitflow进行前端开发的工作流的示意图;
图4示意性示出了根据本发明的一个实施例的前端工程的实施方法的流程示意图;
图5示意性示出了根据本发明的一个实施例的进行静态代码检查的流程示意图;
图6示意性示出了根据本发明的一个实施例的静态代码检查工具化的流程示意图;
图7示意性示出了根据本发明的一个实施例的前端工程的实施方法的应用场景示意图;
图8示意性示出了根据本发明的一个实施例的页面模板工具化的流程示意图;
图9示意性示出了根据本发明的一个实施例的服务器端构建工具化以及优化的流程示意图;
图10示意性示出了根据本发明的另一个实施例的前端工程的实施方法的流程示意图;
图11示意性示出了根据本发明的一个实施例的对前端工程的实施方法进行工具化封装的流程示意图;
图12示意性示出了根据本发明的一个实施例的前端工程的实施装置的示意框图;
图13示意性示出了根据本发明的另一个实施例的前端工程的实施装置的示意框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本发明的各方面变得模糊。
此外,附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1示出了可以应用本发明实施例的一种前端工程的实施方法及装置的示例性应用环境的系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于台式计算机、便携式计算机、智能手机和平板电脑等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
本发明实施例所提供的前端工程的实施方法一般由服务器105执行,相应地,前端工程的实施装置一般设置于服务器105中。但本领域技术人员容易理解的是,本发明实施例所提供的前端工程的实施方法也可以由终端设备101、102、103执行,相应的,前端工程的实施装置也可以设置于终端设备101、102、103中,本示例性实施例中对此不做特殊限定。
图2示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图2示出的电子设备的计算机系统200仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图2所示,计算机系统200包括中央处理单元(CPU)201,其可以根据存储在只读存储器(ROM)202中的程序或者从存储部分208加载到随机访问存储器(RAM)203中的程序而执行各种适当的动作和处理。在RAM 203中,还存储有系统操作所需的各种程序和数据。CPU201、ROM 202以及RAM 203通过总线204彼此相连。输入/输出(I/O)接口205也连接至总线204。
以下部件连接至I/O接口205:包括键盘、鼠标等的输入部分206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分207;包括硬盘等的存储部分208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分209。通信部分209经由诸如因特网的网络执行通信处理。驱动器210也根据需要连接至I/O接口205。可拆卸介质211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器210上,以便于从其上读出的计算机程序根据需要被安装入存储部分208。
特别地,根据本发明的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分209从网络上被下载和安装,和/或从可拆卸介质211被安装。在该计算机程序被中央处理单元(CPU)201执行时,执行本申请的方法和装置中限定的各种功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如下述实施例中所述的方法。例如,所述的电子设备可以实现如图4~图10所示的各个步骤等。
以下对本发明实施例的技术方案进行详细阐述:
在相关技术中,工程化方案主要集中在前端开发的某一阶段或流程中进行,少有覆盖从需求开发到需求结束的完整开发工程化方案,并没有提供统一的工具化或者软件化的手段解决问题,所利用的静态代码检查方案,Git(是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理)工作流方案,页面构建方案也不一能完全满足我们的要求前端性能、稳定性、可用性、可维护性、可测试性和可访问性的业务需求。本技术方案主要从规范的工具化,封装流程和服务器端构建等几方面优化现有方案存在的Git工作流不适用,规范无法落地和强制执行,本地构建过慢,本地构建不一致,构建和提交工程缺乏相应通知和监控,前端工程测试和文档不规范等问题。
图3示意性示出了根据本发明的一个实施例的相关技术中通过Gitflow进行前端开发的工作流的示意图。参考图3所示,在Gitflow中,Master(控制分支)301和Develop(开发分支)304是一直存在的,Master分支301可以被视为稳定的分支,而Develop分支304是相对稳定的分支,特性开发会在Feature(功能特性分支)305、306分支上进行,发布操作会在Release(发布分支)分支303上进行,而bug修复则会在Hotfix(热修复分支)302分支上进行。Gitflow工作流适合大型复杂的工程团队合作,但流程和分支较多,比较复杂,降低了开发效率。
Githubflow工作流是一个轻量级,基于分支的工作流,适合开源项目,管理简单,通过Pull Request对特性进行合并和提交,但并没有规定如何发布版本和记录变更,没有规定如何合并PR,没有规定使用哪一种工具,没有规定代码提交标准,没有规定如何进行代码评审,也没有基于分支发布的特性,降低了代码的质量,影响用户的使用体验。
基于上述一个或多个问题,本示例实施方式提供了一种前端工程的实施方法。该前端工程的实施方法可以应用于上述服务器105,也可以应用于上述终端设备101、102、103中的一个或多个,本示例性实施例中对此不做特殊限定,下面以服务器执行该方法为例进行说明。参考图4所示,该前端工程的实施方法可以包括以下步骤S410至步骤S440:
步骤S410、创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点。
步骤S420、获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试。
步骤S430、在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布。
步骤S440、在所述目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。
在本示例实施方式所提供的前端工程的实施方法中,一方面,取消Gitflow中的特性开发分支节点(Develop分支),直接将特性开发分支节点直接部署到测试环境进行目标功能特性的测试,简化了前端开发流程以及分支结构,提升前端开发的效率;另一方面,在目标功能特性发布完成后,将特性开发分支节点并入控制分支节点,并进行代码检查,保证目标功能特性对应代码的质量,提升用户的使用体验。。
下面,对于本示例实施方式的上述步骤进行更加详细的说明。
在步骤S410中,创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点。
本发明的一个示例实施例中,控制分支节点可以是指前端开发工程中的Master分支,是前端开发工程中用于发布版本的分支,是前端开发工程对应的工作流中的主分支。特性开发分支节点可以是指前端开发工程中的Feature分支,是具体的功能特性开发分支。在相关技术中,特性开发分支节点只与Develop分支进行交互,但是在本示例实施例中,删除了Develop分支,因此Feature分支不需要与Develop分支进行交互,直接由Master分支切出得到Feature分支。
在步骤S420中,获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试。
本发明的一个示例实施例中,目标功能特性可以是指开发人员在本地进行开发的、并上传到特性开发分支节点的新功能,例如目标功能特性可以是WEB页面的浏览显示形态,也可以是WEB页面的放大镜辅助工具,当然,目标功能特性还可以是其他开发的新功能,本示例实施例对此不做特殊限定。测试环境可以是指根据相关测试工具构建的、对目标功能特性进行测试的虚拟环境,例如测试环境可以是指自动化测试持续集成(CI)部署的对目标功能特性进行测试的环境,本示例实施例不以此为限。在每次部署测试环境时,都将合入控制分支节点中最新的功能特性。
图5示意性示出了根据本发明的一个实施例的进行静态代码检查的流程示意图。
参考图5所示,在步骤S510中,对所述目标功能特性进行本地静态代码检查。
本发明的一个示例实施例中,在检测到将目标功能特性提交到特性开发分支节点的事件或者任何将代码从本地提交到分支的事件时,对目标功能特性或者从本地提交到分支的代码进行本地静态代码检查,即基于静态代码检查工程化工具对每一次Git提交,都会通过Git hook进行静态代码检查。通过静态代码检查工程化工具对每次提交的代码进行检查,能够保证代码的可维护性以及健壮性。
在步骤S520中,如果所述目标功能特性通过所述本地静态代码检查,则将所述目标功能特性提交到目标仓库,并通过第三方工具对所述目标功能特性进行二次增量扫描检查。
本发明的一个示例实施例中,目标仓库可以是指Git中的中央仓库,也可以是其他版本控制系统中的中央仓库,例如TGit中的工蜂仓库,当然,本示例实施例对此不做特殊限定。第三方工具可以是指对目标仓库中提交的代码进行检查,确保代码质量的工具。例如第三方工具可以是Codecc,本示例实施例不以此为限。通过第三方工具对目标功能特性进行二次增量扫描检查,进一步确保代码的质量,保证代码的可维护性以及健壮性。
可选的,如果目标功能特性没有通过本地静态代码检查,则将阻止目标功能特性或者代码的提交,并提醒提交人员进行代码逻辑检查,进一步保证代码的正确性以及质量。
在步骤S530中,在确定所述目标功能特性没有通过所述二次增量扫描检查时,执行日志监控告警指令。
本发明的一个示例实施例中,在对提交到目标仓库的目标功能特性或者代码进行二次增量扫描检查时,目标功能特性或者代码没有通过二次增量扫描检查,此时认为该目标功能特性或者代码有质量问题,不能进行发布,需要重新编译,因此执行日志监控告警指令,向相关人员报警,避免有问题的目标功能特性或者代码发布,保证目标功能特性或者代码的质量。
图6示意性示出了根据本发明的一个实施例的静态代码检查工具化的流程示意图。
步骤S601,对每次Git提交操作进行监听;
步骤S602,在监听到Git提交操作时,对提交的目标功能特性或者代码进行本地静态代码检查,例如可以通过Eslint(是一个插件化并且可配置的JavaScript语法规则和代码风格的检查工具)和/或Stylelint(是一种css代码审查工具)对提交的目标功能特性或者代码进行检查;
步骤S603,判断静态代码检查是否通过,若通过则执行步骤S604,否则执行步骤S601;
步骤S604,将通过静态代码检查的目标功能特性或者代码提交到目标仓库;
步骤S605,在将通过静态代码检查的目标功能特性或者代码提交到目标仓库时,触发第三方工具(Codecc)对目标功能特性或者代码进行二次增量扫描检查;
步骤S606,在目标功能特性或者代码通过二次增量扫描检查时结束检查流程,否则执行步骤S607;
步骤S607,对没有通过二次增量扫描检查的目标功能特性或者代码执行日志监控告警指令,向相关人员进行报警。
在步骤S430中,在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布。
本发明的一个示例实施例中,发布分支节点(Release分支)可以是指将控制分支节点或者特性开发分支节点中提交的目标功能特性或者代码进行发布的分支。通过目标功能特性测试完成后,则由控制分支节点或者特性开发分支节点共同合并出发布分支节点,在发布分支节点接收到上传的目标功能特性时,生成ARS(一种发布系统)单并将目标功能特性进行发布。
具体的,通过控制分支节点以及特性开发分支节点确定发布分支节点;基于特性开发分支节点,向发布分支节点发起代码评审指令以使发布分支节点生成发布数据并将目标功能特性进行发布。代码评审指令(Code Review)可以是指通过阅读代码来检查源代码与编码标准的符合性以及代码质量的指令。发布数据可以是指发布分支节点通过发布系统(例如ARS系统)将目标功能特性发布之后生成的数据(例如ARS单)。
在步骤S440中,在目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。
本发明的一个示例实施例中,在目标功能特性发布完成且现网验证完成后,特性开发分支节点提交合并请求指令(Merge request)以将特性开发分支节点并入控制分支节点。
具体的,通过目标代码检查平台对已发布的所述目标功能特性进行代码检查以保证目标功能特性的代码质量。目标代码检查平台可以是指对提交或者已发布的目标功能特性或者代码进行检查的第三方平台,例如目标代码检查平台可以是Codecc,本示例实施例不以此为限。
图7示意性示出了根据本发明的一个实施例的前端工程的实施方法的应用场景示意图。
参考图7所示,步骤S701,从控制分支节点(Master分支)中直接切出特性开发分支节点(Feature分支),并在每一次提交中强制检查约定式提交规范;
步骤S702,通过自动化测试持续集成(CI)部署的对目标功能特性进行测试的测试环境,并将特性开发分支节点(Feature分支)直接部署到测试环境并对目标功能特性进行测试,由工程化工具保证特性开发分支节点(Feature分支)在测试分支时与控制分支节点(Master分支)的同步性;
步骤S703,将热修复分支节点(Hotfix分支)中的功能特性进行灰度验证后,直接将热修复分支节点(Hotfix分支)合入到控制分支节点(Master分支),并将修复后的功能特性提交到控制分支节点(Master分支);
步骤S704,将步骤S703中的修复后的功能特性发布到发布分支节点(Release分支);
步骤S705,在目标功能特性测试完成后,特性开发分支节点(Feature分支)预发布(新建ARS单,并通过ARS发布)目标功能特性,并向发布分支节点(Release分支)发起代码评审指令(Code Review),在评审通过后将目标功能特性提交到发布分支节点(Release分支),发布分支节点(Release分支)生成发布数据(ARS单)并将目标功能特性发布上线;
步骤S706,在目标功能特性发布完成后,特性开发分支节点(Feature分支)提交合并请求(merge request),将特性开发分支节点(Feature分支)合并回控制分支节点(Master分支),并触发Codecc检查。
这套工作流简化了develop分支的流程,由工程化工具保证分支特性的一致性,提供了分支发布的能力,兼容了ARS发布系统和工蜂仓库。
在本发明的一个示例实施例中,响应于对页面模板的选择操作,获取选择操作对应的目标页面模板的配置信息;根据配置信息创建目标页面模板。页面模板可以是指开发人员预先创建的页面构建的模板信息,通过页面模板可以自动地、快速地创建WEB页面,例如页面模板可以是Weex模板,也可以是H5模板,本示例实施例对此不做特殊限定。选择操作可以是指目标对象通过特面模板的工程化工具选择需要创建的页面模板的操作。配置信息可以是指创建页面模板时设置的参数信息,例如,配置信息可以是页面模板的入口文件、MVC/MVVM结构、测试套件、Mock server接口等,当然,本示例实施例对此不做特殊限定。
图8示意性示出了根据本发明的一个实施例的页面模板工具化的流程示意图。
参考图8所示,步骤S801,响应于目标对象的选择模板命令,获取页面模板并提供给目标对象以供目标对象进行选择;
步骤S802,获取目标对象选择页面模板的选择操作,并确定选择操作对应的目标页面模板;
步骤S803,若目标对象的选择操作对应的是Weex模板,通过Weex对应的polyfill或者shim 801设置Weex页面模板,并通过配置参数页面测速/打点上报803、入口文件804、MVC/MVVM结构805、测试套件806、Mock server 807以及jsDoc 808对Weex页面模板进行配置;
步骤S804,若目标对象的选择操作对应的是H5模板,通过H5对应的polyfill或者shim 802设置H5页面模板,并通过配置参数页面测速/打点上报803、入口文件804、MVC/MVVM结构805、测试套件806、Mock server 807以及jsDoc 808对H5页面模板进行配置。
在本发明的一个示例实施例中,基于目标仓库的监听脚本,监听是否有构建分支节点的提交指令;在监听到有构建分支节点的提交指令时,根据提交指令确定分支节点的类型;通过类型调用对应的构建脚本以通过构建脚本触发对应的服务器端构建分支节点。对于前端的页面构建流程,由本地构建迁移到服务器端构建,利用工蜂的Web hook监听需要构建的分支的Git提交,根据不同的Githook,触发不同的服务器端构建工作流,利用服务器端docker化稳定构建环境,保证构建产物的一致性,提高前端的可用性和稳定性。
图9示意性示出了根据本发明的一个实施例的服务器端构建工具化以及优化的流程示意图。
在选择测试命令时服务器端构建流程如下:
步骤S901,检测到目标对象选择测试命令;步骤S902,基于目标仓库的监听脚本,监听是否有构建分支节点的提交指令,在监听到有构建分支节点的提交指令时,根据提交指令确定分支节点的类型;步骤S903,拉取Docker(是一个开源的应用容器引擎,让开发者可以打包应用以及依赖包到一个可移植的镜像中,然后发布到任何Linux或Windows机器上,也可以实现虚拟化)镜像;步骤S904,检测Docker镜像中是否存在包缓存,若存在则执行步骤S906,否则执行步骤S905;步骤S905,从Docker镜像下载依赖包;步骤S906,检查是否需要合并控制分支,若是则执行步骤S908,否则执行步骤S907;步骤S907,中断测试;步骤S908,对增量静态代码进行检查;步骤S909,触发对应的服务器端构建测试分支节点(特性开发分支节点Feature);步骤S910,将测试分支节点部署到测试环境;步骤S911,对步骤S908、步骤S909以及步骤S910进行日志和监控通知告警;
在选择测试命令时服务器端构建流程如下:
步骤S912,检测到目标对象选择发布命令;步骤S913,基于目标仓库的监听脚本,监听是否有构建分支节点的提交指令,在监听到有构建分支节点的提交指令时,根据提交指令确定分支节点的类型;步骤S914,拉取Docker(是一个开源的应用容器引擎,让开发者可以打包应用以及依赖包到一个可移植的镜像中,然后发布到任何Linux或Windows机器上,也可以实现虚拟化)镜像;步骤S915,检测Docker镜像中是否存在包缓存,若存在则执行步骤S917,否则执行步骤S916;步骤S916,从Docker镜像下载依赖包;步骤S917,检查是否需要合并控制分支,若是则执行步骤S919,否则执行步骤S918;步骤S918,中断发布;步骤S919,对增量静态代码进行检查;步骤S920,触发对应的服务器端构建测试分支节点(特性开发分支节点Feature);步骤S921,将测试分支节点部署到测试环境;步骤S922,对步骤S919、步骤S920以及步骤S921进行日志和监控通知告警。
本示例实施方式还提供了一种前端工程的实施方法。该前端工程的实施方法可以应用于上述服务器105,也可以应用于上述终端设备101、102、103中的一个或多个,本示例性实施例中对此不做特殊限定。该示例实施例中的前端工程的实施方法可以认为是对图4所示的前端工程的实施方法地工具化封装。参考图10所示,该前端工程的实施方法可以包括步骤S1010至步骤S1040:
在步骤S1010中,响应于触发开始命令的操作,创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点。
在步骤S1020中,响应于触发测试命令的操作,获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试。
在步骤S1030中,响应于触发发布命令的操作,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布。
在步骤S1040中,在所述目标功能特性发布完成后,将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布。
在步骤S1050中,响应于触发结束命令的操作,删除本地分支节点或者远端分支节点,并清空所述测试环境。
针对图4中提到的工作流,在本示例实施例中对其进行了封装,收归为开始,测试,发布,结束四个命令,并使用Node-Git作为Git代理,客户端用户通过Git授权,让工程化工具代理本地Git,自动化Merge分支,Checkout分支,检测冲突,发起Merge request,提交规范检查,和监控Git变化。
图11示意性示出了根据本发明的一个实施例的对前端工程的实施方法进行工具化封装的流程示意图。
参考图11所示,步骤S1101,响应于目标对象选择开始指令,执行步骤S1102;步骤S1102,获取目标对象选择创建的分支名并创建对应的分支;步骤S1103,响应于目标对象选择测试指令,执行步骤S1104;步骤S1104,判断是否将创建的分支合并到控制分支(Master分支),若需要合并则执行步骤1109,否则执行步骤S1105;步骤S1105,对创建的分支进行日志和监控通知;步骤S1106,对创建的分支进行Git提交监控;步骤S1107,对创建的分支进行Merge request监控;步骤S1108,对创建的分支进行页面发布、页面测试监控;步骤S1109,响应于目标对象选择发布指令,同时执行步骤S1110以及步骤S1113;步骤S1110,发起MR测试;步骤S1111,将分支节点中的功能特性提交;步骤S1112,判断功能特性是否符合提交规范,若是则执行步骤S1103,否则执行步骤S1111,即重新提交;步骤S1113,判断是否有发布分支(Release分支),若有则执行步骤S1115,否则执行步骤S1114;步骤S1114,新建本地/远端分支;步骤S1115,目标对象选择开始指令,执行步骤S1116;步骤S1116,删除本地/远端分支,清空环境。
应当注意,尽管在附图中以特定顺序描述了本发明中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
进一步的,本示例实施方式中,还提供了一种前端工程的实施装置。该前端工程的实施装置可以应用于一服务器或终端设备。参考图12所示,该前端工程的实施装置1200可以包括特性开发分支节点创建模块1210、目标功能特性测试模块1220、目标功能特性发布模块1230以及特性开发分支节点合并模块1240。其中:
特性开发分支节点创建模块1210用于创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
目标功能特性测试模块1220用于获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
目标功能特性发布模块1230用于在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
特性开发分支节点合并模块1240用于在所述目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。
在本发明的一种示例性实施例中,所述目标功能特性发布模块1230还被配置为:
通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点;
基于所述特性开发分支节点,向所述发布分支节点发起代码评审指令以使所述发布分支节点生成发布数据并将所述目标功能特性进行发布。
在本发明的一种示例性实施例中,所述前端工程的实施装置1200还包括代码检查单元,所述代码检查单元被配置为:
通过目标代码检查平台对已发布的所述目标功能特性进行代码检查以保证所述目标功能特性的代码质量。
在本发明的一种示例性实施例中,所述目标功能特性测试模块1220还包括静态代码自动检查单元,所述静态代码自动检查单元被配置为:
对所述目标功能特性进行本地静态代码检查;
如果所述目标功能特性通过所述本地静态代码检查,则将所述目标功能特性提交到目标仓库,并通过第三方工具对所述目标功能特性进行二次增量扫描检查;
在确定所述目标功能特性没有通过所述二次增量扫描检查时,执行日志监控告警指令。
在本发明的一种示例性实施例中,所述前端工程的实施装置1200还包括页面模板创建模块,所述页面模板创建模块包括:
配置信息获取单元,用于响应于对页面模板的选择操作,获取所述选择操作对应的目标页面模板的配置信息;
目标页面模板单元,用于根据所述配置信息创建目标页面模板。
在本发明的一种示例性实施例中,所述页面模板创建模块还包括服务器端创建单元,所述服务器端创建单元被配置为:
基于所述目标仓库的监听脚本,监听是否有构建分支节点的提交指令;
在监听到有构建分支节点的提交指令时,根据所述提交指令确定所述分支节点的类型;
通过所述类型调用对应的构建脚本以通过所述构建脚本触发对应的服务器端构建所述分支节点。
进一步的,本示例实施方式中,还提供了一种前端工程的实施装置。该前端工程的实施装置可以应用于一服务器或终端设备。参考图13所示,该前端工程的实施装置1300可以包括特性开发分支节点创建模块1310、目标功能特性测试模块1320、目标功能特性发布模块1330以及特性开发分支节点合并模块1340。其中:
开始命令触发单元1310用于响应于触发开始命令的操作,创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
测试命令触发单元1320用于响应于触发测试命令的操作,获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
发布命令触发单元1330用于响应于触发发布命令的操作,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
节点合并单元1340用于在所述目标功能特性发布完成后,将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布;
结束命令触发单元1350用于响应于触发结束命令的操作,删除本地分支节点或者远端分支节点,并清空所述测试环境。
上述前端工程的实施装置中各模块或单元的具体细节已经在对应的前端工程的实施方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
本领域技术人员在考虑说明书及实践这里发明的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未发明的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种前端工程的实施方法,其特征在于,包括:
创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
在所述目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。
2.根据权利要求1所述的前端工程的实施方法,其特征在于,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布,包括:
通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点;
基于所述特性开发分支节点,向所述发布分支节点发起代码评审指令以使所述发布分支节点生成发布数据并将所述目标功能特性进行发布。
3.根据权利要求1所述的前端工程的实施方法,其特征在于,在将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布之后,所述方法还包括:
通过目标代码检查平台对已发布的所述目标功能特性进行代码检查以保证所述目标功能特性的代码质量。
4.根据权利要求1所述的前端工程的实施方法,其特征在于,获取提交的目标功能特性,还包括:
对所述目标功能特性进行本地静态代码检查;
如果所述目标功能特性通过所述本地静态代码检查,则将所述目标功能特性提交到目标仓库,并通过第三方工具对所述目标功能特性进行二次增量扫描检查;
在确定所述目标功能特性没有通过所述二次增量扫描检查时,执行日志监控告警指令。
5.根据权利要求1所述的前端工程的实施方法,其特征在于,在将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布之后,所述方法还包括:
响应于对页面模板的选择操作,获取所述选择操作对应的目标页面模板的配置信息;
根据所述配置信息创建目标页面模板。
6.根据权利要求4或5任意一项所述的前端工程的实施方法,其特征在于,根据所述配置信息创建目标页面模板,还包括:
基于所述目标仓库的监听脚本,监听是否有构建分支节点的提交指令;
在监听到有构建分支节点的提交指令时,根据所述提交指令确定所述分支节点的类型;
通过所述类型调用对应的构建脚本以通过所述构建脚本触发对应的服务器端构建所述分支节点。
7.一种前端工程的实施方法,其特征在于,包括:
响应于触发开始命令的操作,创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
响应于触发测试命令的操作,获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
响应于触发发布命令的操作,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
在所述目标功能特性发布完成后,将所述特性开发分支节点合并入所述控制分支节点以完成对所述目标功能特性的发布;
响应于触发结束命令的操作,删除本地分支节点或者远端分支节点,并清空所述测试环境。
8.一种前端工程的实施装置,其特征在于,包括:
特性开发分支节点创建模块,用于创建控制分支节点,并基于所述控制分支节点创建特性开发分支节点;
目标功能特性测试模块,用于获取提交的目标功能特性,并将所述特性开发分支节点直接部署到测试环境以对所述目标功能特性进行功能性测试;
目标功能特性发布模块,用于在所述目标功能特性测试完成后,通过所述控制分支节点以及所述特性开发分支节点确定发布分支节点,以通过所述发布分支节点将所述目标功能特性进行发布;
特性开发分支节点合并模块,用于在所述目标功能特性发布完成后,将所述特性开发分支节点并入所述控制分支节点以完成对所述目标功能特性的发布。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911031831.4A CN110851355B (zh) | 2019-10-28 | 2019-10-28 | 前端工程的实施方法及装置、存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911031831.4A CN110851355B (zh) | 2019-10-28 | 2019-10-28 | 前端工程的实施方法及装置、存储介质、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110851355A true CN110851355A (zh) | 2020-02-28 |
CN110851355B CN110851355B (zh) | 2024-03-15 |
Family
ID=69598925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911031831.4A Active CN110851355B (zh) | 2019-10-28 | 2019-10-28 | 前端工程的实施方法及装置、存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110851355B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113495755A (zh) * | 2021-06-29 | 2021-10-12 | 青岛海尔科技有限公司 | 信息多维度分析的方法及装置 |
CN114253630A (zh) * | 2021-12-23 | 2022-03-29 | 上海新炬网络信息技术股份有限公司 | 基于Java切面修改Form表单变化信息实现日志保存的方法 |
CN115408303A (zh) * | 2022-11-01 | 2022-11-29 | 云账户技术(天津)有限公司 | 前端静态资源的维护方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247601A (zh) * | 2017-07-04 | 2017-10-13 | 武汉斗鱼网络科技有限公司 | 开发流程优化方法、装置及存储介质 |
CN107797813A (zh) * | 2017-10-13 | 2018-03-13 | 福建天泉教育科技有限公司 | 一种软件敏捷开发方法及系统 |
-
2019
- 2019-10-28 CN CN201911031831.4A patent/CN110851355B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247601A (zh) * | 2017-07-04 | 2017-10-13 | 武汉斗鱼网络科技有限公司 | 开发流程优化方法、装置及存储介质 |
CN107797813A (zh) * | 2017-10-13 | 2018-03-13 | 福建天泉教育科技有限公司 | 一种软件敏捷开发方法及系统 |
Non-Patent Citations (1)
Title |
---|
佚名: "基于GitLab Flow的开发/测试/运维同一上线流程", Retrieved from the Internet <URL:http://www.fintx.org/20170705-dev-qa-ops-unified-flow-base-on-gitlab-flow.html> * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113495755A (zh) * | 2021-06-29 | 2021-10-12 | 青岛海尔科技有限公司 | 信息多维度分析的方法及装置 |
CN113495755B (zh) * | 2021-06-29 | 2023-06-09 | 青岛海尔科技有限公司 | 信息多维度分析的方法及装置 |
CN114253630A (zh) * | 2021-12-23 | 2022-03-29 | 上海新炬网络信息技术股份有限公司 | 基于Java切面修改Form表单变化信息实现日志保存的方法 |
CN114253630B (zh) * | 2021-12-23 | 2023-07-25 | 上海新炬网络信息技术股份有限公司 | 基于Java切面修改Form表单变化信息实现日志保存的方法 |
CN115408303A (zh) * | 2022-11-01 | 2022-11-29 | 云账户技术(天津)有限公司 | 前端静态资源的维护方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110851355B (zh) | 2024-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108415832B (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
US11775262B2 (en) | Multi-technology visual integrated data management and analytics development and deployment environment | |
US20210374040A1 (en) | Auto Test Generator | |
CN102187314B (zh) | 生成适用于数据集的资源脚本的方法和系统 | |
CN110851355B (zh) | 前端工程的实施方法及装置、存储介质、电子设备 | |
US9026580B2 (en) | Validation pipeline | |
US11200051B2 (en) | Creation and execution of customised code for a data processing platform | |
US9092572B2 (en) | Development life cycle management tool for set-top box widgets | |
US11422783B2 (en) | Auto-deployment of applications | |
CN111666201A (zh) | 回归测试方法、装置、介质及电子设备 | |
US20240345834A1 (en) | Configuration properties management for software | |
CN115167972A (zh) | 一种云原生平台集成方法及系统 | |
CN111435306A (zh) | 一种代码的管理方法和装置 | |
CN114692055A (zh) | 表单处理方法、装置、存储介质与电子设备 | |
CN111221610B (zh) | 一种页面元素采集方法和装置 | |
CN113806327A (zh) | 一种数据库设计方法、装置及相关设备 | |
CN114880316B (zh) | 客户数据处理方法、系统、电子设备及可读存储介质 | |
CN108509330B (zh) | 一种数据处理方法及系统 | |
Ramil Díaz | Web module for widget based reports generation from report templates | |
CN116775463A (zh) | 测试方法、装置、存储介质及电子设备 | |
CN118779235A (zh) | 一种产品生产交付前的接口联调方法及装置 | |
CN117851265A (zh) | 测试方法、装置、电子设备及存储介质 | |
CN116069312A (zh) | 页面渲染方法及装置、电子设备和计算机可读存储介质 | |
CN118519920A (zh) | 自动化测试方法、装置、设备及存储介质 | |
CN115686479A (zh) | 一种文件的创建方法和相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |