本申请涉及云测试技术领域,特别涉及一种svn资源库测试前的分析方法、装置、计算机设备。
背景技术:
目前,版本的更新周期越来越快,当每出现一个新的版本,都需要进行测试分析,在现有的测试方式中,是对整个新版本进行测试,导致测试范围广,测试时间长的问题。
申请内容
针对现有技术不足,本申请提出一种svn资源库测试前的分析方法、装置、计算机设备,旨在解决在现有的测试方式中,并没有测试前的分析,是对整个新版本进行测试,导致测试范围广,测试时间长的问题。
本申请提出的技术方案是:
一种svn资源库测试前的分析方法,所述方法包括:
检测svn资源库是否存在版本提交;
若检测到所述svn资源库存在版本提交,则获取提交的目标版本;
将所述目标版本与待对比版本进行比较,获取变动文件;
判断所述变动文件的变动类别;
根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略;
按照所述目标策略对所述变动文件进行测试前的分析,分析所述变动文件中字符串规则,获得目标字符串规则;
将所述目标字符串规则与所述目标策略中的预设字符串规则与输出信息关系表中进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,所述输出信息包括分析信息和风险关注点信息。
进一步地,在所述将所述目标版本与待对比版本进行比较,获取变动文件的步骤中,包括:
将所述目标版本与待对比版本进行比较,判断所述目标版本中是否存在新增、修改或者删除的文件;
若存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件。
进一步地,在所述判断所述变动文件的变动类别的步骤中,包括:
若所述变动文件是新增的文件,则判定所述变动文件的变动类别为新增类别;
若所述变动文件是修改的文件,则判定所述变动文件的变动类别为修改类别;
若所述变动文件是删除的文件,则判定所述变动文件的变动类别为删除类别。
进一步地,在所述根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略的步骤中,包括:
若所述变动文件的变动类别为新增类别,则将所述新增类别在所述策略库中匹配,匹配到新增类别策略,获得目标策略;
若所述变动文件的变动类别为修改类别,则将所述修改类别在所述策略库中匹配,匹配到修改类别策略,获得目标策略;
若所述变动文件的变动类别为删除类别,则将所述删除类别在所述策略库中匹配,匹配到删除类别策略,获得目标策略。
进一步地,在所述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为删除类别策略时,将所述目标策略在动作库中匹配,匹配到删除类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述删除类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
进一步地,在所述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为新增类别策略时,将所述目标策略在动作库中匹配,匹配到新增类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述新增类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
进一步地,在所述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为修改类别策略时,将所述目标策略在动作库中匹配,匹配到修改类别的动作库;
将所述变动文件与所述待对比版本对应的文件进行比较,获取差异部分;
从所述差异部分提取代码格式;
将提取到的代码格式在所述修改类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述差异部分的测试前的分析。
本申请还提供一种svn资源库测试前的分析装置,所述装置包括:
检测模块,用于检测svn资源库是否存在版本提交;
若检测到所述svn资源库存在版本提交,则获取提交的目标版本;
比较模块,用于将所述目标版本与待对比版本进行比较,获取变动文件;
判断模块,用于判断所述变动文件的变动类别;
匹配模块,用于根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略;
分析模块,用于按照所述目标策略对所述变动文件进行测试前的分析,分析所述变动文件中字符串规则,获得目标字符串规则;
输出模块,用于将所述目标字符串规则与所述目标策略中的预设字符串规则与输出信息关系表中进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,所述输出信息包括分析信息和风险关注点信息。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
根据上述的技术方案,本申请有益效果:检测到svn资源库有版本提交,获取提交的目标版本,将目标版本与待对比版本进行比较,根据比较结果,获取变动文件,根据变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略,按照目标策略对变动文件进行测试前的分析,分析变动文件中字符串规则,获得目标字符串规则;将目标字符串规则进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,进而有针对性地测试,不需要对整个版本进行测试,旨在解决在现有的测试方式中,并没有测试前的分析,是对整个新版本进行测试,导致测试范围广,测试时间长的问题。
附图说明
图1是应用本申请实施例提供的svn资源库测试前的分析方法的流程图;
图2是应用本申请实施例提供的svn资源库测试前的分析装置的功能模块图;
图3是应用本申请实施例提供的计算机设备的结构示意框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
如图1所示,本申请实施例提出一种svn资源库测试前的分析方法,所述方法包括以下步骤:
步骤s101、检测svn资源库是否存在版本提交。
配置连接svn资源库的账号密码于配置文件中,根据配置文件中的账号密码与svn资源库建立通信连接,在与svn资源库建立连接之后,检测svn资源库是否存在版本提交,在本实施例中,采用java定时任务轮询版本提交情况。
步骤s102、若检测到所述svn资源库存在版本提交,则获取提交的目标版本。
如果检测到svn资源库是存在版本提交,对该版本进行标记,待该版本完成提交之后,获取该版本,从而获取提交的目标版本。
步骤s103、将所述目标版本与待对比版本进行比较,获取变动文件。
在获取到目标版本之后,将目标版本与待对比版本进行比较,根据比较结果,获取变动文件。
在本实施例中,待对比版本为目标版本的上一个版本,例如,以版本号为例,目标版本的版本号为18192,已存在的版本的版本号为18191、18190,按版本号的命名规则,目标版本的上一个版本的版本号为18191,为此,待对比版本的版本号为18191,或者,以上传时间为例,目标版本的上传时间为当前,已存在的版本的上传时间为上周三、上周一,按上传时间的规则,目标版本的上一个版本的版本号为上周三的版本,为此,待对比版本的版本号为上周三的版本。
在一些实施例,待对比版本为用户输入的指定版本。
在本实施例中,在步骤s103之前,包括:
检测用户是否输入指定版本作为待对比版本;
若检测到用户输入指定版本作为待对比版本,则获取所述用户输入的指定版本,获得待对比版本;
若检测到用户没有输入指定版本作为待对比版本,则获取所述目标版本的上一个版本,获得待对比版本。
在获取到目标版本之后,需要获取待对比版本,检测用户是否输入指定版本作为待对比版本,如果检测到用户输入指定版本作为待对比版本,则获取用户输入的指定版本,在获取到用户输入的指定版本之后,将用户输入的指定版本作为待对比版本,从而获得待对比版本。若检测到用户没有输入指定版本作为待对比版本,则获取目标版本的上一个版本,获得待对比版本。
在本实施例中,在步骤s103中,包括:
将所述目标版本与待对比版本进行比较,判断所述目标版本中是否存在新增、修改或者删除的文件;
若存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件。
在获取到目标版本之后,将目标版本与待对比版本进行比较,根据比较,得到目标版本与待对比版本的差异部分,差异部分的具体类型包括新增、修改和删除,根据差异部分的具体类型,判断目标版本中是否存在新增、修改或者删除的文件,如果存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件。
步骤s104、判断所述变动文件的变动类别。
在获取变动文件之后,对变动文件的变动类别进行判断,判断变动文件的变动类别为新增类别、删除类别或者修改类别。
在本实施例中,在步骤s103之后,在步骤s104之前,包括:
对所述变动文件的变动类别进行标记。
在目标版本与待对比版本进行比较时,可以得到目标版本与待对比版本的差异部分,差异部分的具体类型包括新增、修改和删除,根据差异部分的具体类型,判断目标版本中是否存在新增、修改或者删除的文件,如果存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件,之后,根据变动文件对应的差异部分的具体类型,对变动文件的变动类别进行标记。
对应地,在步骤s104中,包括:
获取所述变动文件的变动类别的标记;
根据所述变动文件的变动类别的标记,判断所述变动文件的变动类别。
在对变动文件的变动类别进行标记之后,获取变动文件的变动类别的标记,根据标记可以知道变动文件的变动类别,为此,根据变动文件的变动类别的标记,判断变动文件的变动类别。
在一些实施例中,在步骤s104中,包括:
将所述变动文件与所述待对比版本对应的文件进行比较;
根据比较,判断所述变动文件的变动类别。
在获取到变动文件之后,再次将变动文件与待对比版本对应的文件进行比较,根据比较,可以得到差异部分,差异部分的具体类型包括新增、修改和删除,根据差异部分的具体类型,判断变动文件的变动类别。
在本实施例中,在步骤s104中,包括:
若所述变动文件是新增的文件,则判定所述变动文件的变动类别为新增类别;
若所述变动文件是修改的文件,则判定所述变动文件的变动类别为修改类别;
若所述变动文件是删除的文件,则判定所述变动文件的变动类别为删除类别。
根据判断变动文件是新增、修改或者删除的文件,进而判断所述变动文件的变动类别,具体地,若变动文件是新增的文件,则判定变动文件的变动类别为新增类别,若变动文件是修改的文件,则判定变动文件的变动类别为修改类别,若变动文件是删除的文件,则判定变动文件的变动类别为删除类别。
步骤s105、根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略。
在判断出变动文件的变动类别之后,根据变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略。
在本实施例中,在步骤s105中,包括:
若所述变动文件的变动类别为新增类别,则将所述新增类别在所述策略库中匹配,匹配到新增类别策略,获得目标策略;
若所述变动文件的变动类别为修改类别,则将所述修改类别在所述策略库中匹配,匹配到修改类别策略,获得目标策略;
若所述变动文件的变动类别为删除类别,则将所述删除类别在所述策略库中匹配,匹配到删除类别策略,获得目标策略。
策略库包括新增类别策略、修改类别策略和删除类别策略,对变动文件的变动类别进行判断,若变动文件的变动类别为新增类别,则将新增类别在策略库中匹配,匹配到新增类别策略,获得目标策略。若变动文件的变动类别为修改类别,则将修改类别在策略库中匹配,匹配到修改类别策略,获得目标策略。若变动文件的变动类别为删除类别,则将删除类别在策略库中匹配,匹配到删除类别策略,获得目标策略。
步骤s106、按照所述目标策略对所述变动文件进行测试前的分析,分析所述变动文件中字符串规则,获得目标字符串规则。
步骤s107、将所述目标字符串规则与所述目标策略中的预设字符串规则与输出信息关系表中进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,所述输出信息包括分析信息和风险关注点信息。
在获得目标策略之后,按照目标策略对变动文件进行测试前的分析。不同的目标策略在动作库中匹配不同的动作库,然后动作库中与目标策略对应的动作对变动文件进行测试前的分析。对变动文件中的字符串规则进行分析,得到目标字符串规则,在目标策略中的预设字符串规则与输出信息关系表中存储有字符串规则与输出信息的对应关系,然后根据目标字符串规则匹配到的输出信息标记在对应的字符串中,之后形成报告文档,将报告文档通过邮件发送给测试人员,在报告文档中记录分析信息和风险关注点信息,使得代码改动透明化、易于查看,对于测试人员有前置引导和启示作用。
在本实施例中,在所述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为删除类别策略时,将所述目标策略在动作库中匹配,匹配到删除类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述删除类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
当目标策略为删除类别策略时,将目标策略在动作库中匹配,也就是将删除类别策略在动作库中匹配,删除类别策略与删除类别的动作库相对应,为此,匹配到删除类别的动作库,在匹配到删除类别的动作库之后,获取变动文件的后缀名,根据文件的后缀名,可以得到文件的类型,将变动文件的后缀名在删除类别的动作库中匹配,匹配到对应的动作,从而得到与文件的后缀名对应的动作,在匹配对应的动作之后,按照匹配到对应的动作执行对变动文件的测试前的分析。
在一些实施例中,在所述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为新增类别策略时,将所述目标策略在动作库中匹配,匹配到新增类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述新增类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
当目标策略为新增类别策略时,将目标策略在动作库中匹配,也就是将新增类别策略在动作库中匹配,新增类别策略与新增类别的动作库相对应,为此,匹配到新增类别的动作库,在匹配到新增类别的动作库之后,获取变动文件的后缀名,根据文件的后缀名,可以得到文件的类型,将变动文件的后缀名在新增类别的动作库中匹配,匹配到对应的动作,从而得到与文件的后缀名对应的动作,在匹配对应的动作之后,按照匹配到对应的动作执行对变动文件的测试前的分析。
在一些实施例中,在所述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为修改类别策略时,将所述目标策略在动作库中匹配,匹配到修改类别的动作库;
将所述变动文件与所述待对比版本对应的文件进行比较,获取差异部分;
从所述差异部分提取代码格式;
将提取到的代码格式在所述修改类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述差异部分的测试前的分析。
当目标策略为修改类别策略时,将目标策略在动作库中匹配,也就是将修改类别策略在动作库中匹配,修改类别策略与修改类别的动作库相对应,为此,匹配到修改类别的动作库,在匹配到修改类别的动作库之后,将变动文件与待对比版本对应的文件进行比较,根据比较,得到变动文件与待对比版本对应的文件的差异,获取差异部分,在获取到差异部分之后,从差异部分提取代码格式,在提取到代码格式之后,将提取到的代码格式在修改类别的动作库中匹配,匹配到对应的动作,从而得到与代码格式对应的动作,在匹配对应的动作之后,按照匹配到对应的动作执行对差异部分的测试前的分析。
综上所述,检测到svn资源库有版本提交,获取提交的目标版本,将目标版本与待对比版本进行比较,根据比较结果,获取变动文件,根据变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略,按照目标策略对变动文件进行测试前的分析,分析变动文件中字符串规则,获得目标字符串规则;将目标字符串规则进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,进而有针对性地测试,不需要对整个版本进行测试,旨在解决在现有的测试方式中,并没有测试前的分析,是对整个新版本进行测试,导致测试范围广,测试时间长的问题。
如图2所示,本申请实施例提出一种svn资源库测试前的分析装置1,装置1包括检测模块11、获取模块12、比较模块13、判断模块14、匹配模块15、分析模块16和输出模块17。
检测模块11,用于检测svn资源库是否存在版本提交。
配置连接svn资源库的账号密码于配置文件中,根据配置文件中的账号密码与svn资源库建立通信连接,在与svn资源库建立连接之后,检测svn资源库是否存在版本提交,在本实施例中,采用java定时任务轮询版本提交情况。
获取模块12,用于若检测到所述svn资源库存在版本提交,则获取提交的目标版本。
如果检测到svn资源库是存在版本提交,对该版本进行标记,待该版本完成提交之后,获取该版本,从而获取提交的目标版本。
比较模块13,用于将所述目标版本与待对比版本进行比较,获取变动文件。
在获取到目标版本之后,将目标版本与待对比版本进行比较,根据比较结果,获取变动文件。
在本实施例中,待对比版本为目标版本的上一个版本,例如,以版本号为例,目标版本的版本号为18192,已存在的版本的版本号为18191、18190,按版本号的命名规则,目标版本的上一个版本的版本号为18191,为此,待对比版本的版本号为18191,或者,以上传时间为例,目标版本的上传时间为当前,已存在的版本的上传时间为上周三、上周一,按上传时间的规则,目标版本的上一个版本的版本号为上周三的版本,为此,待对比版本的版本号为上周三的版本。
在一些实施例,待对比版本为用户输入的指定版本。
在本实施例中,装置1包括:
第一检测模块,用于检测用户是否输入指定版本作为待对比版本;
第一获取模块,用于若检测到用户输入指定版本作为待对比版本,则获取所述用户输入的指定版本,获得待对比版本;
第二获取模块,用于若检测到用户没有输入指定版本作为待对比版本,则获取所述目标版本的上一个版本,获得待对比版本。
在获取到目标版本之后,需要获取待对比版本,检测用户是否输入指定版本作为待对比版本,如果检测到用户输入指定版本作为待对比版本,则获取用户输入的指定版本,在获取到用户输入的指定版本之后,将用户输入的指定版本作为待对比版本,从而获得待对比版本。若检测到用户没有输入指定版本作为待对比版本,则获取目标版本的上一个版本,获得待对比版本。
在本实施例中,比较模块13包括:
第一子判断模块,用于将所述目标版本与待对比版本进行比较,判断所述目标版本中是否存在新增、修改或者删除的文件;
第一子获取模块,用于若存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件。
在获取到目标版本之后,将目标版本与待对比版本进行比较,根据比较,得到目标版本与待对比版本的差异部分,差异部分的具体类型包括新增、修改和删除,根据差异部分的具体类型,判断目标版本中是否存在新增、修改或者删除的文件,如果存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件。
判断模块14,用于判断所述变动文件的变动类别。
在获取变动文件之后,对变动文件的变动类别进行判断,判断变动文件的变动类别为新增类别、删除类别或者修改类别。
在本实施例中,装置1包括:
第一标记模块,用于对所述变动文件的变动类别进行标记。
在目标版本与待对比版本进行比较时,可以得到目标版本与待对比版本的差异部分,差异部分的具体类型包括新增、修改和删除,根据差异部分的具体类型,判断目标版本中是否存在新增、修改或者删除的文件,如果存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件,之后,根据变动文件对应的差异部分的具体类型,对变动文件的变动类别进行标记。
对应地,判断模块14包括:
第二子获取模块,用于获取所述变动文件的变动类别的标记;
第二子判断模块,用于根据所述变动文件的变动类别的标记,判断所述变动文件的变动类别。
在对变动文件的变动类别进行标记之后,获取变动文件的变动类别的标记,根据标记可以知道变动文件的变动类别,为此,根据变动文件的变动类别的标记,判断变动文件的变动类别。
在一些实施例中,判断模块14包括:
第二子比较模块,用于将所述变动文件与所述待对比版本对应的文件进行比较;
第三子判断模块,用于根据比较,判断所述变动文件的变动类别。
在获取到变动文件之后,再次将变动文件与待对比版本对应的文件进行比较,根据比较,可以得到差异部分,差异部分的具体类型包括新增、修改和删除,根据差异部分的具体类型,判断变动文件的变动类别。
在本实施例中,判断模块14包括:
第一子判定模块,用于若所述变动文件是新增的文件,则判定所述变动文件的变动类别为新增类别;
第二子判定模块,用于若所述变动文件是修改的文件,则判定所述变动文件的变动类别为修改类别;
第三子判定模块,用于若所述变动文件是删除的文件,则判定所述变动文件的变动类别为删除类别。
根据判断变动文件是新增、修改或者删除的文件,进而判断所述变动文件的变动类别,具体地,若变动文件是新增的文件,则判定变动文件的变动类别为新增类别,若变动文件是修改的文件,则判定变动文件的变动类别为修改类别,若变动文件是删除的文件,则判定变动文件的变动类别为删除类别。
匹配模块15,用于根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略。
在判断出变动文件的变动类别之后,根据变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略。
在本实施例中,匹配模块15包括:
第一子匹配模块,用于若所述变动文件的变动类别为新增类别,则将所述新增类别在所述策略库中匹配,匹配到新增类别策略,获得目标策略;
第二子匹配模块,用于若所述变动文件的变动类别为修改类别,则将所述修改类别在所述策略库中匹配,匹配到修改类别策略,获得目标策略;
第三子匹配模块,用于若所述变动文件的变动类别为删除类别,则将所述删除类别在所述策略库中匹配,匹配到删除类别策略,获得目标策略。
策略库包括新增类别策略、修改类别策略和删除类别策略,对变动文件的变动类别进行判断,若变动文件的变动类别为新增类别,则将新增类别在策略库中匹配,匹配到新增类别策略,获得目标策略。若变动文件的变动类别为修改类别,则将修改类别在策略库中匹配,匹配到修改类别策略,获得目标策略。若变动文件的变动类别为删除类别,则将删除类别在策略库中匹配,匹配到删除类别策略,获得目标策略。
分析模块16,用于按照所述目标策略对所述变动文件进行测试前的分析,分析所述变动文件中字符串规则,获得目标字符串规则。
输出模块17,用于将所述目标字符串规则与所述目标策略中的预设字符串规则与输出信息关系表中进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,所述输出信息包括分析信息和风险关注点信息。
在获得目标策略之后,按照目标策略对变动文件进行测试前的分析。不同的目标策略在动作库中匹配不同的动作库,然后动作库中与目标策略对应的动作对变动文件进行测试前的分析。对变动文件中的字符串规则进行分析,得到目标字符串规则,在目标策略中的预设字符串规则与输出信息关系表中存储有字符串规则与输出信息的对应关系,然后根据目标字符串规则匹配到的输出信息标记在对应的字符串中,之后形成报告文档,将报告文档通过邮件发送给测试人员,在报告文档中记录分析信息和风险关注点信息,使得代码改动透明化、易于查看,对于测试人员有前置引导和启示作用。
在本实施例中,分析模块16包括:
第四子匹配模块,用于当所述目标策略为删除类别策略时,将所述目标策略在动作库中匹配,匹配到删除类别的动作库;
第三子获取模块,用于获取所述变动文件的后缀名;
第五子匹配模块,用于将所述变动文件的后缀名在所述删除类别的动作库中匹配,匹配到对应的动作;
第一子分析模块,用于按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
当目标策略为删除类别策略时,将目标策略在动作库中匹配,也就是将删除类别策略在动作库中匹配,删除类别策略与删除类别的动作库相对应,为此,匹配到删除类别的动作库,在匹配到删除类别的动作库之后,获取变动文件的后缀名,根据文件的后缀名,可以得到文件的类型,将变动文件的后缀名在删除类别的动作库中匹配,匹配到对应的动作,从而得到与文件的后缀名对应的动作,在匹配对应的动作之后,按照匹配到对应的动作执行对变动文件的测试前的分析。
在一些实施例中,分析模块16包括:
第六子匹配模块,用于当所述目标策略为新增类别策略时,将所述目标策略在动作库中匹配,匹配到新增类别的动作库;
第四子获取模块,用于获取所述变动文件的后缀名;
第七子匹配模块,用于将所述变动文件的后缀名在所述新增类别的动作库中匹配,匹配到对应的动作;
第二子分析模块,用于按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
当目标策略为新增类别策略时,将目标策略在动作库中匹配,也就是将新增类别策略在动作库中匹配,新增类别策略与新增类别的动作库相对应,为此,匹配到新增类别的动作库,在匹配到新增类别的动作库之后,获取变动文件的后缀名,根据文件的后缀名,可以得到文件的类型,将变动文件的后缀名在新增类别的动作库中匹配,匹配到对应的动作,从而得到与文件的后缀名对应的动作,在匹配对应的动作之后,按照匹配到对应的动作执行对变动文件的测试前的分析。
在一些实施例中,分析模块16包括:
第八子匹配模块,用于当所述目标策略为修改类别策略时,将所述目标策略在动作库中匹配,匹配到修改类别的动作库;
第五子获取模块,用于将所述变动文件与所述待对比版本对应的文件进行比较,获取差异部分;
第一子提取模块,用于从所述差异部分提取代码格式;
第九子匹配模块,用于将提取到的代码格式在所述修改类别的动作库中匹配,匹配到对应的动作;
第三子分析模块,用于按照所述匹配到对应的动作执行对所述差异部分的测试前的分析。
当目标策略为修改类别策略时,将目标策略在动作库中匹配,也就是将修改类别策略在动作库中匹配,修改类别策略与修改类别的动作库相对应,为此,匹配到修改类别的动作库,在匹配到修改类别的动作库之后,将变动文件与待对比版本对应的文件进行比较,根据比较,得到变动文件与待对比版本对应的文件的差异,获取差异部分,在获取到差异部分之后,从差异部分提取代码格式,在提取到代码格式之后,将提取到的代码格式在修改类别的动作库中匹配,匹配到对应的动作,从而得到与代码格式对应的动作,在匹配对应的动作之后,按照匹配到对应的动作执行对差异部分的测试前的分析。
综上所述,检测到svn资源库有版本提交,获取提交的目标版本,将目标版本与待对比版本进行比较,根据比较结果,获取变动文件,根据变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略,按照目标策略对变动文件进行测试前的分析,分析变动文件中字符串规则,获得目标字符串规则;将目标字符串规则进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,进而有针对性地测试,不需要对整个版本进行测试,旨在解决在现有的测试方式中,并没有测试前的分析,是对整个新版本进行测试,导致测试范围广,测试时间长的问题。
如图3所示,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储svn资源库测试前的分析方法的模型等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种svn资源库测试前的分析方法。
上述处理器执行上述svn资源库测试前的分析方法的步骤:检测svn资源库是否存在版本提交;若检测到所述svn资源库存在版本提交,则获取提交的目标版本;将所述目标版本与待对比版本进行比较,获取变动文件;判断所述变动文件的变动类别;根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略;按照所述目标策略对所述变动文件进行测试前的分析,分析所述变动文件中字符串规则,获得目标字符串规则;将所述目标字符串规则与所述目标策略中的预设字符串规则与输出信息关系表中进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,所述输出信息包括分析信息和风险关注点信息。
在一个实施例中,上述将所述目标版本与待对比版本进行比较,获取变动文件的步骤中,包括:
将所述目标版本与待对比版本进行比较,判断所述目标版本中是否存在新增、修改或者删除的文件;
若存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件。
在一个实施例中,上述判断所述变动文件的变动类别的步骤中,包括:
若所述变动文件是新增的文件,则判定所述变动文件的变动类别为新增类别;
若所述变动文件是修改的文件,则判定所述变动文件的变动类别为修改类别;
若所述变动文件是删除的文件,则判定所述变动文件的变动类别为删除类别。
在一个实施例中,上述根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略的步骤中,包括:
若所述变动文件的变动类别为新增类别,则将所述新增类别在所述策略库中匹配,匹配到新增类别策略,获得目标策略;
若所述变动文件的变动类别为修改类别,则将所述修改类别在所述策略库中匹配,匹配到修改类别策略,获得目标策略;
若所述变动文件的变动类别为删除类别,则将所述删除类别在所述策略库中匹配,匹配到删除类别策略,获得目标策略。
在一个实施例中,上述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为删除类别策略时,将所述目标策略在动作库中匹配,匹配到删除类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述删除类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
在一个实施例中,上述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为新增类别策略时,将所述目标策略在动作库中匹配,匹配到新增类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述新增类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
在一个实施例中,上述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为修改类别策略时,将所述目标策略在动作库中匹配,匹配到修改类别的动作库;
将所述变动文件与所述待对比版本对应的文件进行比较,获取差异部分;
从所述差异部分提取代码格式;
将提取到的代码格式在所述修改类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述差异部分的测试前的分析。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请实施例的计算机设备,检测到svn资源库有版本提交,获取提交的目标版本,将目标版本与待对比版本进行比较,根据比较结果,获取变动文件,根据变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略,按照目标策略对变动文件进行测试前的分析,分析变动文件中字符串规则,获得目标字符串规则;将目标字符串规则进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,进而有针对性地测试,不需要对整个版本进行测试,旨在解决在现有的测试方式中,并没有测试前的分析,是对整个新版本进行测试,导致测试范围广,测试时间长的问题。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种svn资源库测试前的分析方法,具体为:检测svn资源库是否存在版本提交;若检测到所述svn资源库存在版本提交,则获取提交的目标版本;将所述目标版本与待对比版本进行比较,获取变动文件;判断所述变动文件的变动类别;根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略;按照所述目标策略对所述变动文件进行测试前的分析,分析所述变动文件中字符串规则,获得目标字符串规则;将所述目标字符串规则与所述目标策略中的预设字符串规则与输出信息关系表中进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,所述输出信息包括分析信息和风险关注点信息。
在一个实施例中,上述将所述目标版本与待对比版本进行比较,获取变动文件的步骤中,包括:
将所述目标版本与待对比版本进行比较,判断所述目标版本中是否存在新增、修改或者删除的文件;
若存在新增、修改或者删除的文件,则获取对应的文件,获得变动文件。
在一个实施例中,上述判断所述变动文件的变动类别的步骤中,包括:
若所述变动文件是新增的文件,则判定所述变动文件的变动类别为新增类别;
若所述变动文件是修改的文件,则判定所述变动文件的变动类别为修改类别;
若所述变动文件是删除的文件,则判定所述变动文件的变动类别为删除类别。
在一个实施例中,上述根据所述变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略的步骤中,包括:
若所述变动文件的变动类别为新增类别,则将所述新增类别在所述策略库中匹配,匹配到新增类别策略,获得目标策略;
若所述变动文件的变动类别为修改类别,则将所述修改类别在所述策略库中匹配,匹配到修改类别策略,获得目标策略;
若所述变动文件的变动类别为删除类别,则将所述删除类别在所述策略库中匹配,匹配到删除类别策略,获得目标策略。
在一个实施例中,上述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为删除类别策略时,将所述目标策略在动作库中匹配,匹配到删除类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述删除类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
在一个实施例中,上述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为新增类别策略时,将所述目标策略在动作库中匹配,匹配到新增类别的动作库;
获取所述变动文件的后缀名;
将所述变动文件的后缀名在所述新增类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述变动文件的测试前的分析。
在一个实施例中,上述按照所述目标策略对所述变动文件进行测试前的分析的步骤中,包括:
当所述目标策略为修改类别策略时,将所述目标策略在动作库中匹配,匹配到修改类别的动作库;
将所述变动文件与所述待对比版本对应的文件进行比较,获取差异部分;
从所述差异部分提取代码格式;
将提取到的代码格式在所述修改类别的动作库中匹配,匹配到对应的动作;
按照所述匹配到对应的动作执行对所述差异部分的测试前的分析。
本申请实施例的存储介质,检测到svn资源库有版本提交,获取提交的目标版本,将目标版本与待对比版本进行比较,根据比较结果,获取变动文件,根据变动文件的变动类别,在策略库中匹配对应的策略,获得目标策略,按照目标策略对变动文件进行测试前的分析,分析变动文件中字符串规则,获得目标字符串规则;将目标字符串规则进行匹配,以及将匹配到的输出信息标记在对应的字符串中,形成报告文件,进而有针对性地测试,不需要对整个版本进行测试,旨在解决在现有的测试方式中,并没有测试前的分析,是对整个新版本进行测试,导致测试范围广,测试时间长的问题。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双速据率sdram(ssrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,均应包括在本申请的保护范围之内。