CN115543432B - 一种通用型Git代码托管平台系统及实现方法 - Google Patents
一种通用型Git代码托管平台系统及实现方法 Download PDFInfo
- Publication number
- CN115543432B CN115543432B CN202211496154.5A CN202211496154A CN115543432B CN 115543432 B CN115543432 B CN 115543432B CN 202211496154 A CN202211496154 A CN 202211496154A CN 115543432 B CN115543432 B CN 115543432B
- Authority
- CN
- China
- Prior art keywords
- service
- interface
- sequence
- hosting platform
- unified
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000010354 integration Effects 0.000 claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000012360 testing method Methods 0.000 claims description 96
- 230000008859 change Effects 0.000 claims description 79
- 230000006978 adaptation Effects 0.000 claims description 54
- 238000006243 chemical reaction Methods 0.000 claims description 41
- 230000006870 function Effects 0.000 claims description 28
- 230000002159 abnormal effect Effects 0.000 claims description 21
- 230000003993 interaction Effects 0.000 claims description 20
- 238000012986 modification Methods 0.000 claims description 20
- 230000004048 modification Effects 0.000 claims description 19
- 238000009826 distribution Methods 0.000 claims description 18
- 230000002452 interceptive effect Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 17
- 238000012795 verification Methods 0.000 claims description 17
- 238000013507 mapping Methods 0.000 claims description 10
- 230000008439 repair process Effects 0.000 claims description 9
- 238000013515 script Methods 0.000 claims description 9
- 238000010606 normalization Methods 0.000 claims description 7
- 238000012216 screening Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 6
- 230000003044 adaptive effect Effects 0.000 claims description 5
- 230000001105 regulatory effect Effects 0.000 claims description 5
- 239000000126 substance Substances 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 3
- 210000001503 joint Anatomy 0.000 claims description 3
- 230000014759 maintenance of location Effects 0.000 claims description 3
- 230000004075 alteration Effects 0.000 claims 3
- 230000008569 process Effects 0.000 description 14
- 238000004590 computer program Methods 0.000 description 9
- 230000009286 beneficial effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 4
- 238000012812 general test Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010367 cloning Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- 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/3684—Test management for test design, e.g. generating new test cases
-
- 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/3696—Methods or tools to render software testable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- 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
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种通用型Git代码托管平台系统及实现方法,其系统包括:Gitscm集成模块,用于对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;业务统一模块,用于按照scm内核的内核属性,获取业务统一操作;Scm统一模块,用于按照scm内核的内核属性,获取对应的Git服务统一操作;Gitscm集成模块,还用于按照业务统一操作以及Git服务统一操作,并基于通用型托管平台对不同类型的托管平台的工作流进行统一服务。通过对不同的工作流进行业业务统一以及服务统一,可以保证对不同工作流的通用操作,保证通用型托管平台的通用性,方便处理。
Description
技术领域
本发明涉及代码托管技术领域,尤其涉及一种通用型Git代码托管平台系统及实现方法。
背景技术
Git是一个分布式版本控制软件,它采用了分布式版本库的作法,不需要服务器端软件,就可以运作版本控制,使得源代码的发布和交流极其方便。使用Git软件进行版本管理的代码仓库,经常称之为Git版本仓库。
Git代码托管平台被设计为Git版本仓库的托管服务,它是一种在线的形式,让用户在本地计算机/服务器之外跟踪和共享用户的Git版本控制项目。此外还扩展了Git的基本功能,提供了一个非常直观、图形化的用户界面,并为程序员提供了内置的控制和任务管理工具。程序员可以借助Git代码托管平台组织适合自己团队的工作流。
但是,针对上述提出的Git代码托管平台,存在如下两个问题:
1、不同的代码托管平台工作流也不尽相同,用户和企业在进行Git代码托管平台选型时,需要综合考虑各平台的权威性、稳定性、功能等多方面原因,当中途需要更换Git代码托管平台时,又需要调整自己团队的工作流以适应新的平台。
2、企业和团队可能由于自身项目性质的原因,在选购Git代码托管平台服务时,对工作流形式和代码托管平台内核有着特殊要求,如:工作流是否简单通用、平台gitscm内核是否国产等。特殊的要求对于Git代码托管平台供应商的服务支持能力也是一个挑战。
因此,本发明提出一种通用型Git代码托管平台系统及实现方法。
发明内容
基于此,有必要针对上述问题,提出了一种通用型Git代码托管平台系统及实现方法。
本发明提供一种通用型Git代码托管平台系统,包括:
Gitscm集成模块,用于对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
业务统一模块,用于按照所述scm内核的内核属性,获取业务统一操作;
Scm统一模块,用于按照所述scm内核的内核属性,获取对应的Git服务统一操作;
所述Gitscm集成模块,还用于按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务。
优选的,所述Gitscm集成模块,包括:
确定子模块,用于获取用户选取的每种类型的托管平台的接口集合以及服务集合;
标准化子模块,用于对每种类型的托管平台所对应的接口集合进行第一标准化以及对所对应的服务集合进行第二标准化;
集成子模块,用于基于第一标准化结果以及第二标准化结果,对对应类型的托管平台进行集成,获取得到所述通用型托管平台的scm内核。
优选的,所述业务统一操作包括:接口业务统一、页面业务统一。
优选的,还包括:
集合确定模块,用于获取不同类型的托管平台的工作流,并确定对应的工作集合;
第一确定模块,用于确定每个工作集合中每个子流的任务权重、固有工作属性、可变更工作属性;
第二确定模块,用于基于所述任务权重、固有工作属性、可变更工作属性,确定每个子流基于对应工作集合的形式可更改概率;
第一获取模块,用于获取所述形式可更改概率小于预设更改概率的第一子流;
标签分配模块,用于对所述第一子流进行表达拆解处理,得到若干子表达,并基于所述通用型托管平台对应的表达-更改数据库,向每个子表达分配对应的形式更改标签;
构建模块,用于基于所述形式更改标签,构建得到对应第一子流的初始更改链;
一致性判定模块,用于对所述初始更改链中的所有形式更改标签进行一致性判定,当判定结果满足一致性标准时,将所述初始更改链视为形式更改链;
否则,从所述初始更改链中提取不一致更改节点,并通过追溯对应工作流的用途,确定所述不一致更改节点的用途交互权限;
调取模块,用于从历史交互集合中,调取与所述用途交互权限一致的交互形式;
窗口设置模块,用于在所述不一致更改节点建立交互窗口,并在所述交互窗口上设置与所述交互形式匹配的第一唯一标识码,同时,在所述通用型托管平台设置特殊窗口,并在所述特殊窗口设置对应的第二唯一标识码;
调整模块,用于基于所述第一唯一标识码的配对设置结果,对所述初始更改链进行调整,得到形式更改链;
第二获取模块,用于获取所述形式可更改概率不小于所述预设更改概率的第二子流,并按照标准更改规则,得到所述第二子流的形式更改链;
形式更改模块,用于基于所述形式更改链,实现对对应工作集合中每个子流的形式更改,并将所述特殊窗口以及表达-更改数据库,作为共享更改库,存储在所述通用型托管平台。
优选的,所述业务统一模块,包括:
接口获取单元,用于获取每个所述scm内核的内核接口集合,并按照所述内核属性,对对应内核接口集合进行功能归类,得到若干功能集合,并分别对每个功能集合中的接口进行类型归类,得到不同属性的子接口集合;
环境确定单元,用于基于所述scm内核的内核属性,从测试数据库中调取对应的接口测试工具;
测试例获取单元,用于基于所述接口测试工具,获取对应内核接口集合的第一测试例以及同个内核接口集合中不同子接口集合的第二测试例;
记录单元,用于记录所述第一测试例对对应内核接口集合中每个第一接口进行第一测试的第一测试路径以及记录所述第二测试例对不同子接口集合中每个第二接口进行第二测试的第二测试路径;
内容获取单元,用于获取所述scm内核中每个第一接口基于第一测试例的第一响应内容以及对应的同个scm内核下每个第二接口基于第二测试例的第二响应内容;
关系构建单元,用于提取所述第一响应内容中的第一异常标识以及第二响应内容中的第二异常标识,并构建同个scm内核对应的所述第一异常标识与第二异常标识的映射关系;
信息匹配单元,用于基于所述映射关系,从对应的预设标识信息中匹配得到测试异常信息,并确定得到对应的待校验接口集合;
排序单元,用于基于最短距离原则,从所述第一测试路径以及第二测试路径中,筛选得到所述待校验接口集合中中每个待校验接口的路径距离,并进行最短距离校验排序;
当对应的当下待校验接口校验通过时,继续对下一待校验接口进行校验;
当对应的当下待校验接口校验未通过时,确定校验未通过的原因,按照所述原因,确定是否需要设置替换接口,若需要,基于对应的scm内核建立新的接口,并基于所述新的接口替换校验未通过的接口;
若不需要,根据所述原因,获取修复脚本,基于所述修复脚本对所述校验未通过的接口进行修复,直到得到校验通过的接口;
保留单元,用于基于所有校验通过的接口的最新接口属性,建立与所述通用型托管平台的适配关系以及转换关系,并进行保留;
接口业务统一单元,用于基于保留结果,对对应的scm内核的接口进行接口业务统一。
优选的,所述标准化子模块,包括:
序列获取单元,用于获取每种类型的托管平台的服务集合,并获取所述服务集合中每个第一服务的原始服务序列;
序列转换单元,用于获取通用型托管平台中与每个第一服务匹配的通用型序列,并获取与第一服务匹配的第一转换标准,对所述原始服务序列进行转换,得到当下服务序列;
序列定位单元,用于将所述当下服务序列与对应的通用型序列进行对比,并对存在的差异序列在对应的所述通用型序列中进行定位;
分布确定单元,用于根据定位结果以及对应差异序列的差异值,确定差异分布;
区间确定单元,用于基于预设分析模型,确定所述差异分布的有效影响区间,分别获取每个有效影响区间中最大差异值所处第一位置、以及第二大差异值所处第二位置,并确定所述第一位置的第一权重以及第二位置的第二权重;
差值确定单元,用于获取所述差异分布中最大权重位置处的第一序列差值以及第二大权重位置处的第二序列差值;
阈值获取单元,用于按照所述第一序列差值、第二序列差值、第一权重、第二权重,获取对应有效影响区间的差异调节阈值;
当对应有效影响区间存在差异值为负时,按照对应差异调节阈值进行绝对值相加处理;
当对应有效影响区间存在差异值为正时,按照对应差异调节阈值进行绝对值相减处理;
序列调节单元,用于根据相加处理以及相减处理,得到调节区间,进而得到所述第一服务的调节服务序列;
适配单元,用于基于对应第一服务的调节服务序列,对相邻区间进行边界序列适配,同时,基于所有第一服务的调节服务序列,对相邻服务进行边界服务适配;
标准优化单元,用于基于边界序列适配结果以及边界服务适配结果,对对应第一转换标准进行优化,得到第二转换标准,并存储。
优选的,所述适配单元,包括:
基于所述调节服务序列,获取相邻区间中左侧区间的末尾段序列以及右侧区间的初始段序列;
基于预设适配数据库,对所述末尾段序列以及初始段序列进行边界序列适配,得到对应第一服务的第一标准化序列;
获取每个第一服务的调节服务序列,并获取相邻服务中左侧服务对应的末端区间以及右侧服务对应的始端区间;
基于预设适配数据库,对所述末端区间以及始端区间进行边界服务适配,得到对应第一服务的第二标准化序列;
基于所述第一标准化序列、第二标准化序列以及所述当下服务序列,对所述第一转换标准进行优化。
优选的,还包括:
第一统一模块,用于基于所述用户的对接使用需求,并按照所述业务统一操作对不同类型的托管平台的工作流进行第一统一;
第二统一模块,用于基于所述用户的对接使用需求,并按照所述Git服务统一操作对不同类型的托管平台的工作流进行第二统一;
适配性确定模块,用于基于第一统一结果以及第二统一结果,确定统一适配性;
其中,G表示对应类型的托管平台的工作流的统一适配性;n1表示业务统一操作总
数量;表示Git服务统一操作总数量;表示第i1个业务统一操作对应的第一统一结果
的当下统一值;表示基于通用型托管平台确定的第i1个业务统一操作的标准统一值;
表示第i2个Git服务统一操作对应的第二统一结果的当下统一值;表示基于通用型托管
平台确定的第i2个Git服务统一操作的标准统一值;表示最具相关性的业务
统一操作的当下统一值与对应标准统一值的差值平方;表示最具相关性的
Git服务统一操作的当下统一值与对应标准统一值的差值平方;
若所述统一适配性小于预设适配性,保持所述业务统一操作以及Git服务统一操作不变;
否则,基于所述第一统一结果,从结果-因子数据库中,调取对应类型托管平台的第一不适配因子,同时,基于所述第二统一结果,从所述结果-因子数据库中,调取对应类型托管平台的第二不适配因子;
第一计算模块,用于计算所述第一不适配因子的第一调整综合度K1;
从第一调整综合度、第二调整综合度、第三调整综合度中,筛选最大综合度对应的调整方案,对不适配结果进行调整,实现对不同类型的托管平台的工作流进行统一服务。
本发明提供一种通用型Git代码托管平台的实现方法,所述方法包括:
步骤1:对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
步骤2:按照所述scm内核的内核属性,获取业务统一操作;
步骤3:按照所述scm内核的内核属性,获取对应的Git服务统一操作;
步骤4:按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务。
优选的,对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核,包括:
步骤101:获取用户选取的每种类型的托管平台的接口集合以及服务集合;
步骤102:对每种类型的托管平台所对应的接口集合进行第一标准化以及对所对应的服务集合进行第二标准化;
步骤103:基于第一标准化结果以及第二标准化结果,对对应类型的托管平台进行集成,获取得到所述通用型托管平台的scm内核。
与现有技术相比,本申请的有益效果如下:
通过对不同的工作流进行业业务统一以及服务统一,可以保证对不同工作流的通用操作,保证通用型托管平台的通用性,方便处理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中系统的应用环境图;
图2为一个实施例中一种通用型Git代码托管平台系统的结构框图;
图3为一个实施例中针对托管平台系统的具体结构图;
图4为一个实施例中一种通用型Git代码托管平台的实现方法的流程图;
图5为一个实施例中计算机设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为一个实施例中通用型Git代码托管平台系统的应用环境图。参照图1,包括终端110和服务器120。终端110和服务器120通过网络连接,终端110具体可以是台式终端或移动终端,移动终端具体可以是手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
本发明提供一种通用型Git代码托管平台系统,如图2所示,包括:
Gitscm集成模块,用于对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
业务统一模块,用于按照所述scm内核的内核属性,获取业务统一操作;
Scm统一模块,用于按照所述scm内核的内核属性,获取对应的Git服务统一操作;
所述Gitscm集成模块,还用于按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务。
优选的,所述Gitscm集成模块,包括:
确定子模块,用于获取用户选取的每种类型的托管平台的接口集合以及服务集合;
标准化子模块,用于对每种类型的托管平台所对应的接口集合进行第一标准化以及对所对应的服务集合进行第二标准化;
集成子模块,用于基于第一标准化结果以及第二标准化结果,对对应类型的托管平台进行集成,获取得到所述通用型托管平台的scm内核。
优选的,所述业务统一操作包括:接口业务统一、页面业务统一。
该实施例中,Git属于SCM,SCM(SoftwareConfigurationManagement,软件配置管理)是一种标识、组织和控制修改的技术。
该实施例中,针对接口集合,可以是标准的api(是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力)、webhook和git操作接口(具备如下功能:1、克隆远程分支到本地目录 2、更新远程分支到本地目录 3、提交本地更改到本地仓库 4、推送本地更改到远程分支 5、切换当前分支到新分支等)。
该实施例中,通用型代码托管平台提供了对不同代码托管平台的工作流统一服务,所以即便是选择和切换了不同的 scm 内核,用户无需改变自己已有的工作流,降低了使用上的迁移成本。
同时平台提供对于对于scm内核直接请求的透传功能,支持用户直接使用底层scm的接口和功能。
针对上述方案,可以具体参见图3。
该实施例中,内核属性主要是基于接口以及服务确定的,不同类型对应的统一情况不一样。
该实施例中,Git服务统一操作可以是针对功能状态服务、协议服务等。
上述技术方案的有益效果是:通过对不同的工作流进行业业务统一以及服务统一,可以保证对不同工作流的通用操作,保证通用型托管平台的通用性,方便处理。
在一个实施例中,一种通用型Git代码托管平台系统,还包括:
集合确定模块,用于获取不同类型的托管平台的工作流,并确定对应的工作集合;
第一确定模块,用于确定每个工作集合中每个子流的任务权重、固有工作属性、可变更工作属性;
第二确定模块,用于基于所述任务权重、固有工作属性、可变更工作属性,确定每个子流基于对应工作集合的形式可更改概率;
第一获取模块,用于获取所述形式可更改概率小于预设更改概率的第一子流;
标签分配模块,用于对所述第一子流进行表达拆解处理,得到若干子表达,并基于所述通用型托管平台对应的表达-更改数据库,向每个子表达分配对应的形式更改标签;
构建模块,用于基于所述形式更改标签,构建得到对应第一子流的初始更改链;
一致性判定模块,用于对所述初始更改链中的所有形式更改标签进行一致性判定,当判定结果满足一致性标准时,将所述初始更改链视为形式更改链;
否则,从所述初始更改链中提取不一致更改节点,并通过追溯对应工作流的用途,确定所述不一致更改节点的用途交互权限;
调取模块,用于从历史交互集合中,调取与所述用途交互权限一致的交互形式;
窗口设置模块,用于在所述不一致更改节点建立交互窗口,并在所述交互窗口上设置与所述交互形式匹配的第一唯一标识码,同时,在所述通用型托管平台设置特殊窗口,并在所述特殊窗口设置对应的第二唯一标识码;
调整模块,用于基于所述第一唯一标识码的配对设置结果,对所述初始更改链进行调整,得到形式更改链;
第二获取模块,用于获取所述形式可更改概率不小于所述预设更改概率的第二子流,并按照标准更改规则,得到所述第二子流的形式更改链;
形式更改模块,用于基于所述形式更改链,实现对对应工作集合中每个子流的形式更改,并将所述特殊窗口以及表达-更改数据库,作为共享更改库,存储在所述通用型托管平台。
该实施例中,不同托管平台对应的工作流是不一样的,且包含的流程也是不一样的,因此,获取工作流的工作集合,且工作集合中包括若干存在的子流(流程),由于每个工作流都具备自身的固定参数以及变化参数,也就是固有工作属性以及可变更工作属性,都是预先设置好的,比如是,对应子流中是包括匹配机制1和匹配机制2,此时,匹配机制1可以视为固定工作属性,匹配机制2可以视为可变更工作属性,只是表示的子流本身具备的一些属性。
该实施例中,针对形式可变更概率计算如下:
其中,Y1表示形式可变更概率;表示任务权重;表示固有工作属性的属性
权重;表示可变更工作属性的属性权重,且=1;表示固有工作属性h1
的可更改值,取值范围为(0,1),表示固有工作属性h2的可更改值,取值范围为(0,
1);
该实施例中,在进行形式可更改概率的大小比较之后,可以获取得到第一子流以及第二子流,其中,对第一子流进行表达拆解处理,比如子流1,拆解处理之后为:11110000,此时存在两个子表达,且从表达-更改数据库中分配与1111一致的标签以及与0000一致的标签,来得到初始更改链,比如:与1111一致的标签--与0000一致的标签。
该实施例中,表达-更改数据库中,是通用型托管平台预先构建好的,主要是为了标签匹配,提高工作流形式统一的效率。
该实施例中,一致性判定,主要是为了判定与1111一致的标签、与0000一致的标签,是否存在形式转换上的差异,比如,正常情况上,形式转换类型1和类型2在转换过程中视为一致,但是,此时,出现了类型3,就视为视为不满足一致性标准,否则,视为满足一致性标准。
该实施例中,更改链中每个子表达都对应一个节点,且每个节点都有其对应的形式更改标签,当存在不一致更改节点时,获取工作流的用途,可以有效的确定该不一致更改节点的交互权限,也就是起到的一个交互功能作用(数据交互之类的),此时,可以调取交互形式,并通过在不一致更改节点设置窗口以及在通用型托管平台设置窗口,来保证形式更改的有效性,且还可以进一步增大通用型托管平台的形式数据样本。
该实施例中,通过交互窗口以及特殊窗口,相当于建立了对应节点与平台的连接,进而可以通过获取得到形式更改链,实现对对应工作流的形式更改,保证在通用型托管平台上形式的统一性,方便用户操作,提高操作效率。
该实施例中,第一唯一标识码是基于交互窗口上的,第二唯一标识码是基于特殊窗口上的,且基于第一唯一标识码的配对设置结果指的是在交互窗口上设置与交互形式匹配的第一唯一标识码,同时,在特殊窗口设置对应的第二唯一标识码,此时的第一唯一标识码以及第二唯一标识码为配对关系。
该实施例中,共享数据库就是为了能够进一步扩展形式更改样本,保证对不同工作流形式更改的高效性。
上述技术方案的有益效果是:通过对工作流中的每个子流的形式可更改概率进行判断,可以有效的针对不同子流进行不同形式更改的匹配,来提高对工作流形式更改的效率,方便形式统一操作,且通过交互窗口以及特殊窗口,可以进一步扩展形式更改样本,保证对不同工作流形式更改的高效性,保证通用高效性。
在一个实施例中,所述业务统一模块,包括:
接口获取单元,用于获取每个所述scm内核的内核接口集合,并按照所述内核属性,对对应内核接口集合进行功能归类,得到若干功能集合,并分别对每个功能集合中的接口进行类型归类,得到不同属性的子接口集合;
环境确定单元,用于基于所述scm内核的内核属性,从测试数据库中调取对应的接口测试工具;
测试例获取单元,用于基于所述接口测试工具,获取对应内核接口集合的第一测试例以及同个内核接口集合中不同子接口集合的第二测试例;
记录单元,用于记录所述第一测试例对对应内核接口集合中每个第一接口进行第一测试的第一测试路径以及记录所述第二测试例对不同子接口集合中每个第二接口进行第二测试的第二测试路径;
内容获取单元,用于获取所述scm内核中每个第一接口基于第一测试例的第一响应内容以及对应的同个scm内核下每个第二接口基于第二测试例的第二响应内容;
关系构建单元,用于提取所述第一响应内容中的第一异常标识以及第二响应内容中的第二异常标识,并构建同个scm内核对应的所述第一异常标识与第二异常标识的映射关系;
信息匹配单元,用于基于所述映射关系,从对应的预设标识信息中匹配得到测试异常信息,并确定得到对应的待校验接口集合;
排序单元,用于基于最短距离原则,从所述第一测试路径以及第二测试路径中,筛选得到所述待校验接口集合中中每个待校验接口的路径距离,并进行最短距离校验排序;
当对应的当下待校验接口校验通过时,继续对下一待校验接口进行校验;
当对应的当下待校验接口校验未通过时,确定校验未通过的原因,按照所述原因,确定是否需要设置替换接口,若需要,基于对应的scm内核建立新的接口,并基于所述新的接口替换校验未通过的接口;
若不需要,根据所述原因,获取修复脚本,基于所述修复脚本对所述校验未通过的接口进行修复,直到得到校验通过的接口;
保留单元,用于基于所有校验通过的接口的最新接口属性,建立与所述通用型托管平台的适配关系以及转换关系,并进行保留;
接口业务统一单元,用于基于保留结果,对对应的scm内核的接口进行接口业务统一。
该实施例中,由于scm内核的不同主要是针对工作流的不同,且内核属性与工作流相关,由于不同的工作流对应的使用接口是不一样的,因此,首先按照接口的功能进行第一归类,其次,按照接口的类型进行第二归类,比如:存在接口1、2、3、4和5,其中,按照接口功能1以及接口功能2,得到包括接口1、2、3的功能集合,以及包括接口4、5的功能集合,且按照接口类型,比如:公共类以及非公共类再次对功能集合进行归类。
该实施例中,接口测试工作与对应工作流有关,且工作流又是作为scm内核的一部分,因此,通过内核属性来获取接口测试工具,其中,测试数据库中汇集了包含不同属性的测试接口以及与测试接口匹配的测试工具。
该实施例中,通过测试工具,可以对不同的接口设置对应的测试例,其中,第一测试例主要是按照功能确定的,第二测试例主要是按照类型确定的,通过确定不同情况下的测试例,可以实现对接口的有效测试。
该实施例中,测试例可以是不同的测试脚本,通过读取测试脚本,实现对接口的测试,且在测试过程中,会存在对应的测试路径,也就是使用不同的测试例进行测试过程中,对对应接口进行测试状态转换的路径,比如,对接口1进行测试过程中,存在测试状态2-测试状态1-测试状态3,此时作为测试路径距离为3,当存在一样的测试路径时,按照测试时间的先后顺序,进行先后排序。
该实施例中,在进行测试过程中,会获取每个接口反馈的响应内容,比如,第一测试例针对的接口1的响应内容为1101,第二测试例针对接口1的响应内容为2202,此时,获取“1101”中“0”的异常标识,以及“2202”中“0”的异常标识,进而可以构建得到映射关系,且映射关系,是包含同个接口在不同测试例下的异常关系。
该实施例中,预设标识信息中包含不同异常标识以及异常信息在内的,因此,可以通过映射关系,得到测试异常信息,比如,虽然接口1在第一测试例以及第二测试例下都存在异常标识,但是基于预设标识信息匹配后,并未匹配到测试异常信息,此时,就视为接口1为正常接口,如果匹配得到测试异常信息,此时,就视为接口1为待校验接口。
该实施例中,校验主要是按照第三测试例(通用型测试例,比如第一测试例以及第二测试例是针对功能以及类型的测试,此时,通用型测试里既是针对功能又是针对类型的测试)对待校验接口进行重新测试,当最后匹配不出测试异常信息后,视为校验通过,否则,视为校验不通过,进而来获取校验不通过原因。
该实施例中,当原因属于接口本身所不能自动修复的原因时,建立新的接口,来替换未通过的接口,否则,获取修复脚本,来进行修复。
该实施例中,获取校验通过的接口的接口属性(功能、类型、响应情况、状态情况等),与通用型托管平台建立关系。
该实施例中,适配关系主要是为了进行格式、类型等的标准统一,转换关系,主要是为了确定对接口进行与通用型托管平台统一的转换内容,比如,格式转换内容,类型转换内容等,实现接口业务统一。
上述技术方案的有益效果是:通过对接口进行两次归类,实现接口细致划分,且通过测试工作对不同归类情况下的接口进行测试,来确定测试路径以及接口的响应内容,进而根据映射关系,合理确定待校验集合,便于对接口进行修复,保证业务统一的可靠性,避免因为某个接口故障,导致业务统一失败,且通过路径最短距离校验,实现对待校验接口的合理校验以及修复,便于提高对接口检验的效率以及后续接口业务统一的效率,且通过进行适配关系以及转换关系的确定,进一步提高统一效率,保证通用高效性。
在一个实施例中,所述标准化子模块,包括:
序列获取单元,用于获取每种类型的托管平台的服务集合,并获取所述服务集合中每个第一服务的原始服务序列;
序列转换单元,用于获取通用型托管平台中与每个第一服务匹配的通用型序列,并获取与第一服务匹配的第一转换标准,对所述原始服务序列进行转换,得到当下服务序列;
序列定位单元,用于将所述当下服务序列与对应的通用型序列进行对比,并对存在的差异序列在对应的所述通用型序列中进行定位;
分布确定单元,用于根据定位结果以及对应差异序列的差异值,确定差异分布;
区间确定单元,用于基于预设分析模型,确定所述差异分布的有效影响区间,分别获取每个有效影响区间中最大差异值所处第一位置、以及第二大差异值所处第二位置,并确定所述第一位置的第一权重以及第二位置的第二权重;
差值确定单元,用于获取所述差异分布中最大权重位置处的第一序列差值以及第二大权重位置处的第二序列差值;
阈值获取单元,用于按照所述第一序列差值、第二序列差值、第一权重、第二权重,获取对应有效影响区间的差异调节阈值;
当对应有效影响区间存在差异值为负时,按照对应差异调节阈值进行绝对值相加处理;
当对应有效影响区间存在差异值为正时,按照对应差异调节阈值进行绝对值相减处理;
序列调节单元,用于根据相加处理以及相减处理,得到调节区间,进而得到所述第一服务的调节服务序列;
适配单元,用于基于对应第一服务的调节服务序列,对相邻区间进行边界序列适配,同时,基于所有第一服务的调节服务序列,对相邻服务进行边界服务适配;
标准优化单元,用于基于边界序列适配结果以及边界服务适配结果,对对应第一转换标准进行优化,得到第二转换标准,并存储。
该实施例中,服务集合是针对的各种控制服务、状态服务、协议服务、类型服务、字符转换服务、代码服务、业务服务在内的,且都可以视为第一服务,原始服务序列是对应类型托管平台本身就设置好的。
该实施例中,在进行不同类型的托管平台与通用型托管平台进行统一的过程中,按照通用型托管平台所提供的标准,进行转换,实现各种不同类型托管平台在通用型托管平台上针对服务的统一,在进行转换的过程中,可能会存在序列误差,因此,通过获取当下服务序列与通用型服务序列的对比,对差异序列进行定位,且通过定位以及差值,来获取差异分布。
该实施例中,预设分析模型是预先训练好的,且是以不同的差异分布以及对差异分布所确定的影响区域为样本训练得到的。
该实施例中,比如:差异分布为0 0 0 0 0.2 0.5 1 0 0 1 0 0.3 0.3 0.6 1 0 0,此时,对应的 0.2 0.5 1 、1 0 0.3 0.3 0.6 1分别作为有效影响区间;其中,0.2 0.5 1中的最大差异值为1,第二大差异值为0.5,1 0 0.3 0.3 0.6 1中的最大差异值为1,第二大差异值为0.6;
该实施例中,每个序列所处位置的权重都是预先设定好的,所以,可以得出最大权重对应的位置以及第二大权重对应的位置。
该实施例中,在确定差异调节阈值的过程中,可以根据如下公式获取得到:
其中,b表示对应有效影响区间的差异调节阈值;表示第一序列差值x1与第二序列差值y1对应的调节函数;表示第一权重x2与第二权重y2对应的调节函数;p1表示最大权重所处位置;u1表示第二大权重所处位置;p2表示最大差异值;u2表示第二大差异值,其中,最后计算出来的差异调节阈值的取值范围一般在(-0.3,0.3)之间。
该实施例中,在按照差异值进行调节的过程中,按照差异阈值进行相加或者相减处理,且在对序列值进行调节之后,得到调节区间,也就是基于原先有效影响区间进行序列值调节之后,得到的调节区间,进而获取的调节服务序列。
该实施例中,边界序列适配指的是针对第一服务的整个序列,也就是调节服务序列,重新确定第一服务区间,比如:刚开始存在区间1、2、3,其中区间2和3是针对调节区间的,此时,相邻区间指的是区间1与区间2、区间2与区间3,也就是对区间1和区间2中的相邻的边界序列进行适配,以及对区间2和区间3中的相邻的边界序列进行适配,同理边界服务适配,指的是存在服务1、2、3,此时,将服务1与服务2进行适配,将服务2与服务3进行适配。
上述技术方案的有益效果是:通过进行序列比较、差异调节阈值、序列适配调节,实现对第一次标准转换后的序列优化,由于第一转换标准是通用型托管平台对对应类型的托管平台的服务进行的一个标准统一,但是,在进行统一的过程中,可能会存在原本服务的序列与标准不一致的情况,因此,通过对进行初次标准转换后的序列与对应标准的通用型序列进行比较,以此,来实现对原始序列的一个最佳标准转换,保证通用性以及后续使用的高效性。
在一个实施例中,所述适配单元,包括:
基于所述调节服务序列,获取相邻区间中左侧区间的末尾段序列以及右侧区间的初始段序列;
基于预设适配数据库,对所述末尾段序列以及初始段序列进行边界序列适配,得到对应第一服务的第一标准化序列;
获取每个第一服务的调节服务序列,并获取相邻服务中左侧服务对应的末端区间以及右侧服务对应的始端区间;
基于预设适配数据库,对所述末端区间以及始端区间进行边界服务适配,得到对应第一服务的第二标准化序列;
基于所述第一标准化序列、第二标准化序列以及所述当下服务序列,对所述第一转换标准进行优化。
该实施例中,比如:调节服务序列为:11110001111000,此时,11110001为左侧区间,111000为右侧区间,末尾段序列为01,初始段序列为11,此时,对01与11进行边界序列适配,比如,01与11按照预设适配数据库的适配标准应该为01与0.9 1的适配,此时,得到的调节服务序列为11110001 0.9 11000。
该实施例中,边界服务适配与上述边界序列适配同理,且都是基于预设适配数据库来确定的适配标准。
该实施例中,第一标准序列是针对一个服务中相邻区间的序列的适配,第二标准序列是针对相邻服务间序列的适配,因此,对每个服务的末端区间与始端区间的序列进行调整以及对同个服务中相邻区间的序列进行调整,得到第二标准化序列。
该实施例中,优化指的是按照调节情况,实现对标准的优化。
上述技术方案的有益效果是:通过进行边界序列适配以及边界服务适配,可以有效的对原先的标准进行优化,得到更加满足标准统一的情况,便于保证标准统一下的高效处理。
在一个实施例中,还包括:
第一统一模块,用于基于所述用户的对接使用需求,并按照所述业务统一操作对不同类型的托管平台的工作流进行第一统一;
第二统一模块,用于基于所述用户的对接使用需求,并按照所述Git服务统一操作对不同类型的托管平台的工作流进行第二统一;
适配性确定模块,用于基于第一统一结果以及第二统一结果,确定统一适配性;
其中,G表示对应类型的托管平台的工作流的统一适配性;n1表示业务统一操作总
数量;表示Git服务统一操作总数量;表示第i1个业务统一操作对应的第一统一结果
的当下统一值;表示基于通用型托管平台确定的第i1个业务统一操作的标准统一值;
表示第i2个Git服务统一操作对应的第二统一结果的当下统一值;表示基于通用型托管
平台确定的第i2个Git服务统一操作的标准统一值;表示最具相关性的业务
统一操作的当下统一值与对应标准统一值的差值平方;表示最具相关性的
Git服务统一操作的当下统一值与对应标准统一值的差值平方;
若所述统一适配性小于预设适配性,保持所述业务统一操作以及Git服务统一操作不变;
否则,基于所述第一统一结果,从结果-因子数据库中,调取对应类型托管平台的第一不适配因子,同时,基于所述第二统一结果,从所述结果-因子数据库中,调取对应类型托管平台的第二不适配因子;
第一计算模块,用于计算所述第一不适配因子的第一调整综合度K1;
从第一调整综合度、第二调整综合度、第三调整综合度中,筛选最大综合度对应的调整方案,对不适配结果进行调整,实现对不同类型的托管平台的工作流进行统一服务。
该实施例中,比如业务统一操作包括:操作01、02和03,服务统一操作包括:操作11、操作22,此时,对应的n1的取值为3,对应的n2的取值为2。
该实施例中,标准统一值是预先设定好的,且当下统一值是按照对应操作进行统一操作之后获取得到的。
该实施例中,预设适配性是预先设定好的,且取值一般是0.3。
该实施例中,根据统一结果,是从结果-因子数据库中调取到的,且包括各种不同的统一结果以及不同结果下对应的适配因子在内的,因此,可以按照统一结果来确定最后的不适配因子,比如是,某些类型元素的不适配、某些页面场景的不是配等。
该实施例中,通过根据不同的公式,分别计算对应的调整综合度,可以有效的筛选出对应的调整方案,对不适配结果进行调整,进一步保证平台的通用性。
上述技术方案的有益效果是:通过用户对接使用需求,并进行各种操作的统一,并按照统一结果进行适配性计算,后续通过比较,可以有效的确定不同情况下的适配度,因此,筛选得到最佳方案,实现调整,最大程度满足用户在通用型托管平台上的使用需求,保证平台的通用性。
如图4所示,在一个实施例中,本发明提供一种通用型Git代码托管平台的实现方法,所述方法包括:
步骤1:对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
步骤2:按照所述scm内核的内核属性,获取业务统一操作;
步骤3:按照所述scm内核的内核属性,获取对应的Git服务统一操作;
步骤4:按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务。
优选的,对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核,包括:
步骤101:获取用户选取的每种类型的托管平台的接口集合以及服务集合;
步骤102:对每种类型的托管平台所对应的接口集合进行第一标准化以及对所对应的服务集合进行第二标准化;
步骤103:基于第一标准化结果以及第二标准化结果,对对应类型的托管平台进行集成,获取得到所述通用型托管平台的scm内核。
上述技术方案的有益效果是:通过对不同的工作流进行业业务统一以及服务统一,可以保证对不同工作流的通用操作,保证通用型托管平台的通用性,方便处理。
图5示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图5所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器通用型Git代码托管平台的实现方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行通用型Git代码托管平台的实现方法。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
步骤1:对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
步骤2:按照所述scm内核的内核属性,获取业务统一操作;
步骤3:按照所述scm内核的内核属性,获取对应的Git服务统一操作;
步骤4:按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务。
在一个实施例中,提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
步骤1:对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
步骤2:按照所述scm内核的内核属性,获取业务统一操作;
步骤3:按照所述scm内核的内核属性,获取对应的Git服务统一操作;
步骤4:按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。请输入具体实施内容部分。
Claims (9)
1.一种通用型Git代码托管平台系统,其特征在于,包括:
Gitscm集成模块,用于对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
业务统一模块,用于按照所述scm内核的内核属性,获取业务统一操作;
Scm统一模块,用于按照所述scm内核的内核属性,获取对应的Git服务统一操作;
所述Gitscm集成模块,还用于按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务;
还包括:
集合确定模块,用于获取不同类型的托管平台的工作流,并确定对应的工作集合;
第一确定模块,用于确定每个工作集合中每个子流的任务权重、固有工作属性、可变更工作属性;
第二确定模块,用于基于所述任务权重、固有工作属性、可变更工作属性,确定每个子流基于对应工作集合的形式可更改概率;
第一获取模块,用于获取所述形式可更改概率小于预设更改概率的第一子流;
标签分配模块,用于对所述第一子流进行表达拆解处理,得到若干子表达,并基于所述通用型托管平台对应的表达-更改数据库,向每个子表达分配对应的形式更改标签;
构建模块,用于基于所述形式更改标签,构建得到对应第一子流的初始更改链;
一致性判定模块,用于对所述初始更改链中的所有形式更改标签进行一致性判定,当判定结果满足一致性标准时,将所述初始更改链视为形式更改链;
否则,从所述初始更改链中提取不一致更改节点,并通过追溯对应工作流的用途,确定所述不一致更改节点的用途交互权限;
调取模块,用于从历史交互集合中,调取与所述用途交互权限一致的交互形式;
窗口设置模块,用于在所述不一致更改节点建立交互窗口,并在所述交互窗口上设置与所述交互形式匹配的第一唯一标识码,同时,在所述通用型托管平台设置特殊窗口,并在所述特殊窗口设置对应的第二唯一标识码;
调整模块,用于基于所述第一唯一标识码的配对设置结果,对所述初始更改链进行调整,得到形式更改链;
第二获取模块,用于获取所述形式可更改概率不小于所述预设更改概率的第二子流,并按照标准更改规则,得到所述第二子流的形式更改链;
形式更改模块,用于基于所述形式更改链,实现对对应工作集合中每个子流的形式更改,并将所述特殊窗口以及表达-更改数据库,作为共享更改库,存储在所述通用型托管平台。
2.如权利要求1所述的通用型Git代码托管平台系统,其特征在于,Gitscm集成模块,包括:
确定子模块,用于获取用户选取的每种类型的托管平台的接口集合以及服务集合;
标准化子模块,用于对每种类型的托管平台所对应的接口集合进行第一标准化以及对所对应的服务集合进行第二标准化;
集成子模块,用于基于第一标准化结果以及第二标准化结果,对对应类型的托管平台进行集成,获取得到所述通用型托管平台的scm内核。
3.如权利要求1所述的通用型Git代码托管平台系统,其特征在于,
所述业务统一操作包括:接口业务统一、页面业务统一。
4.如权利要求1所述的通用型Git代码托管平台系统,其特征在于,所述业务统一模块,包括:
接口获取单元,用于获取每个所述scm内核的内核接口集合,并按照所述内核属性,对对应内核接口集合进行功能归类,得到若干功能集合,并分别对每个功能集合中的接口进行类型归类,得到不同属性的子接口集合;
环境确定单元,用于基于所述scm内核的内核属性,从测试数据库中调取对应的接口测试工具;
测试例获取单元,用于基于所述接口测试工具,获取对应内核接口集合的第一测试例以及同个内核接口集合中不同子接口集合的第二测试例;
记录单元,用于记录所述第一测试例对对应内核接口集合中每个第一接口进行第一测试的第一测试路径以及记录所述第二测试例对不同子接口集合中每个第二接口进行第二测试的第二测试路径;
内容获取单元,用于获取所述scm内核中每个第一接口基于第一测试例的第一响应内容以及对应的同个scm内核下每个第二接口基于第二测试例的第二响应内容;
关系构建单元,用于提取所述第一响应内容中的第一异常标识以及第二响应内容中的第二异常标识,并构建同个scm内核对应的所述第一异常标识与第二异常标识的映射关系;
信息匹配单元,用于基于所述映射关系,从对应的预设标识信息中匹配得到测试异常信息,并确定得到对应的待校验接口集合;
排序单元,用于基于最短距离原则,从所述第一测试路径以及第二测试路径中,筛选得到所述待校验接口集合中中每个待校验接口的路径距离,并进行最短距离校验排序;
当对应的当下待校验接口校验通过时,继续对下一待校验接口进行校验;
当对应的当下待校验接口校验未通过时,确定校验未通过的原因,按照所述原因,确定是否需要设置替换接口,若需要,基于对应的scm内核建立新的接口,并基于所述新的接口替换校验未通过的接口;
若不需要,根据所述原因,获取修复脚本,基于所述修复脚本对所述校验未通过的接口进行修复,直到得到校验通过的接口;
保留单元,用于基于所有校验通过的接口的最新接口属性,建立与所述通用型托管平台的适配关系以及转换关系,并进行保留;
接口业务统一单元,用于基于保留结果,对对应的scm内核的接口进行接口业务统一。
5.如权利要求2所述的通用型Git代码托管平台系统,其特征在于,所述标准化子模块,包括:
序列获取单元,用于获取每种类型的托管平台的服务集合,并获取所述服务集合中每个第一服务的原始服务序列;
序列转换单元,用于获取通用型托管平台中与每个第一服务匹配的通用型序列,并获取与第一服务匹配的第一转换标准,对所述原始服务序列进行转换,得到当下服务序列;
序列定位单元,用于将所述当下服务序列与对应的通用型序列进行对比,并对存在的差异序列在对应的所述通用型序列中进行定位;
分布确定单元,用于根据定位结果以及对应差异序列的差异值,确定差异分布;
区间确定单元,用于基于预设分析模型,确定所述差异分布的有效影响区间,分别获取每个有效影响区间中最大差异值所处第一位置、以及第二大差异值所处第二位置,并确定所述第一位置的第一权重以及第二位置的第二权重;
差值确定单元,用于获取所述差异分布中最大权重位置处的第一序列差值以及第二大权重位置处的第二序列差值;
阈值获取单元,用于按照所述第一序列差值、第二序列差值、第一权重、第二权重,获取对应有效影响区间的差异调节阈值;
当对应有效影响区间存在差异值为负时,按照对应差异调节阈值进行绝对值相加处理;
当对应有效影响区间存在差异值为正时,按照对应差异调节阈值进行绝对值相减处理;
序列调节单元,用于根据相加处理以及相减处理,得到调节区间,进而得到所述第一服务的调节服务序列;
适配单元,用于基于对应第一服务的调节服务序列,对相邻区间进行边界序列适配,同时,基于所有第一服务的调节服务序列,对相邻服务进行边界服务适配;
标准优化单元,用于基于边界序列适配结果以及边界服务适配结果,对对应第一转换标准进行优化,得到第二转换标准,并存储。
6.如权利要求5所述的通用型Git代码托管平台系统,其特征在于,所述适配单元,包括:
基于所述调节服务序列,获取相邻区间中左侧区间的末尾段序列以及右侧区间的初始段序列;
基于预设适配数据库,对所述末尾段序列以及初始段序列进行边界序列适配,得到对应第一服务的第一标准化序列;
获取每个第一服务的调节服务序列,并获取相邻服务中左侧服务对应的末端区间以及右侧服务对应的始端区间;
基于预设适配数据库,对所述末端区间以及始端区间进行边界服务适配,得到对应第一服务的第二标准化序列;
基于所述第一标准化序列、第二标准化序列以及所述当下服务序列,对所述第一转换标准进行优化。
7.如权利要求1所述的通用型Git代码托管平台系统,其特征在于,还包括:
第一统一模块,用于基于所述用户的对接使用需求,并按照所述业务统一操作对不同类型的托管平台的工作流进行第一统一;
第二统一模块,用于基于所述用户的对接使用需求,并按照所述Git服务统一操作对不同类型的托管平台的工作流进行第二统一;
适配性确定模块,用于基于第一统一结果以及第二统一结果,确定统一适配性;
其中,G表示对应类型的托管平台的工作流的统一适配性;n1表示业务统一操作总数量;表示Git服务统一操作总数量;表示第i1个业务统一操作对应的第一统一结果的当下统一值;表示基于通用型托管平台确定的第i1个业务统一操作的标准统一值;表示第i2个Git服务统一操作对应的第二统一结果的当下统一值;表示基于通用型托管平台确定的第i2个Git服务统一操作的标准统一值;表示最具相关性的业务统一操作的当下统一值与对应标准统一值的差值平方;表示最具相关性的Git服务统一操作的当下统一值与对应标准统一值的差值平方;
若所述统一适配性小于预设适配性,保持所述业务统一操作以及Git服务统一操作不变;
否则,基于所述第一统一结果,从结果-因子数据库中,调取对应类型托管平台的第一不适配因子,同时,基于所述第二统一结果,从所述结果-因子数据库中,调取对应类型托管平台的第二不适配因子;
第一计算模块,用于计算所述第一不适配因子的第一调整综合度K1;
从第一调整综合度、第二调整综合度、第三调整综合度中,筛选最大综合度对应的调整方案,对不适配结果进行调整,实现对不同类型的托管平台的工作流进行统一服务。
8.一种通用型Git代码托管平台的实现方法,其特征在于,所述方法包括:
步骤1:对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核;
步骤2:按照所述scm内核的内核属性,获取业务统一操作;
步骤3:按照所述scm内核的内核属性,获取对应的Git服务统一操作;
步骤4:按照所述业务统一操作以及Git服务统一操作,并基于所述通用型托管平台对不同类型的托管平台的工作流进行统一服务;
还包括:
获取不同类型的托管平台的工作流,并确定对应的工作集合;
确定每个工作集合中每个子流的任务权重、固有工作属性、可变更工作属性;
基于所述任务权重、固有工作属性、可变更工作属性,确定每个子流基于对应工作集合的形式可更改概率;
获取所述形式可更改概率小于预设更改概率的第一子流;
对所述第一子流进行表达拆解处理,得到若干子表达,并基于所述通用型托管平台对应的表达-更改数据库,向每个子表达分配对应的形式更改标签;
基于所述形式更改标签,构建得到对应第一子流的初始更改链;
对所述初始更改链中的所有形式更改标签进行一致性判定,当判定结果满足一致性标准时,将所述初始更改链视为形式更改链;
否则,从所述初始更改链中提取不一致更改节点,并通过追溯对应工作流的用途,确定所述不一致更改节点的用途交互权限;
从历史交互集合中,调取与所述用途交互权限一致的交互形式;
在所述不一致更改节点建立交互窗口,并在所述交互窗口上设置与所述交互形式匹配的第一唯一标识码,同时,在所述通用型托管平台设置特殊窗口,并在所述特殊窗口设置对应的第二唯一标识码;
基于所述第一唯一标识码的配对设置结果,对所述初始更改链进行调整,得到形式更改链;
获取所述形式可更改概率不小于所述预设更改概率的第二子流,并按照标准更改规则,得到所述第二子流的形式更改链;
基于所述形式更改链,实现对对应工作集合中每个子流的形式更改,并将所述特殊窗口以及表达-更改数据库,作为共享更改库,存储在所述通用型托管平台。
9.如权利要求8所述的通用型Git代码托管平台的实现方法,其特征在于,对用户选取的不同类型的托管平台进行集成,并作为通用型托管平台的scm内核,包括:
步骤101:获取用户选取的每种类型的托管平台的接口集合以及服务集合;
步骤102:对每种类型的托管平台所对应的接口集合进行第一标准化以及对所对应的服务集合进行第二标准化;
步骤103:基于第一标准化结果以及第二标准化结果,对对应类型的托管平台进行集成,获取得到所述通用型托管平台的scm内核。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211496154.5A CN115543432B (zh) | 2022-11-28 | 2022-11-28 | 一种通用型Git代码托管平台系统及实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211496154.5A CN115543432B (zh) | 2022-11-28 | 2022-11-28 | 一种通用型Git代码托管平台系统及实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115543432A CN115543432A (zh) | 2022-12-30 |
CN115543432B true CN115543432B (zh) | 2023-03-10 |
Family
ID=84722015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211496154.5A Active CN115543432B (zh) | 2022-11-28 | 2022-11-28 | 一种通用型Git代码托管平台系统及实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115543432B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102323879A (zh) * | 2011-06-07 | 2012-01-18 | 北京大学 | 完整网络中间件运行支撑平台及异构中间件的集成方法 |
CN110489158A (zh) * | 2019-08-01 | 2019-11-22 | 北京字节跳动网络技术有限公司 | 对代码托管平台进行优化的方法、装置、介质和电子设备 |
CN111008036A (zh) * | 2019-12-02 | 2020-04-14 | 北京仿真中心 | 一种基于git的结构型数据版本管理系统和方法 |
CN112099843A (zh) * | 2020-09-15 | 2020-12-18 | 平安付科技服务有限公司 | 代码托管平台管理方法、装置、计算机设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10705864B2 (en) * | 2017-05-24 | 2020-07-07 | Twilio Inc. | System and method for platform-integrated custom applications |
-
2022
- 2022-11-28 CN CN202211496154.5A patent/CN115543432B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102323879A (zh) * | 2011-06-07 | 2012-01-18 | 北京大学 | 完整网络中间件运行支撑平台及异构中间件的集成方法 |
CN110489158A (zh) * | 2019-08-01 | 2019-11-22 | 北京字节跳动网络技术有限公司 | 对代码托管平台进行优化的方法、装置、介质和电子设备 |
CN111008036A (zh) * | 2019-12-02 | 2020-04-14 | 北京仿真中心 | 一种基于git的结构型数据版本管理系统和方法 |
CN112099843A (zh) * | 2020-09-15 | 2020-12-18 | 平安付科技服务有限公司 | 代码托管平台管理方法、装置、计算机设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于Git的代码托管平台JLUCODE;侯效永等;《计算机时代》;20161215(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115543432A (zh) | 2022-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11163731B1 (en) | Autobuild log anomaly detection methods and systems | |
US10671593B2 (en) | Normalization engine to manage configuration management database integrity | |
US10783116B2 (en) | Systems and methods for managing data | |
US7644055B2 (en) | Rule-based database object matching with comparison certainty | |
US10929780B2 (en) | Analytics-based bidirectional database synchronization | |
US9836297B2 (en) | Computer implemented method and system for automatically deploying and versioning scripts in a computing environment | |
US8607217B2 (en) | Incremental upgrade of entity-relationship systems | |
US9513997B2 (en) | Test data management | |
CN111240968A (zh) | 一种自动测试管理方法及系统 | |
CN110865806B (zh) | 代码处理方法、装置、服务器及存储介质 | |
CN114327374A (zh) | 业务流程的生成方法、装置及计算机设备 | |
CN115543432B (zh) | 一种通用型Git代码托管平台系统及实现方法 | |
CN114527974B (zh) | 软件产品的业务功能实现方法、装置和计算机设备 | |
CN117236304A (zh) | 一种基于模板配置的Excel通用导入的实现方法 | |
CN115168217A (zh) | 源代码文件的缺陷发现方法及装置 | |
ElGamal et al. | An Architecture-Oriented Data Warehouse Testing Approach. | |
US10606577B1 (en) | System and method for assuring customers during software deployment | |
US11734238B2 (en) | Correcting data errors for data processing fault recovery | |
US11789967B2 (en) | Recovering from data processing errors by data error detection and correction | |
CN113052463B (zh) | 工作流核验方法、装置、计算机设备及存储介质 | |
US10997056B1 (en) | Generation of explanatory and executable repair examples | |
CN117217828B (zh) | 验证转化回传数据方法、装置、计算机设备和存储介质 | |
US11989123B1 (en) | Systems, methods, and media for updating, managing, and maintaining a reference template for web service API testing | |
CN117788163A (zh) | 一种贸易背景的核实方法、装置、计算机设备及存储介质 | |
CN116893973A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231019 Address after: 5-1 # Annex 23-02-087, No.1 Huayi Road, Qixinggang Street, Yuzhong District, Chongqing, 400000 (cluster registration) Patentee after: Chongqing Kaiyuan Gongchuang Technology Co.,Ltd. Address before: 100000 room 205A, second floor, building 2, No. 10 Jiuxianqiao Road, Chaoyang District, Beijing Patentee before: Beijing Innovation Lezhi Network Technology Co.,Ltd. Patentee before: Changsha developer Technology Co.,Ltd. |
|
TR01 | Transfer of patent right |