一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

代码工程的测试方法、装置、电子设备和存储介质与流程

2022-10-26 08:35:37 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,更具体地说,涉及代码工程的测试方法、装置、电子设备和存储介质。


背景技术:

2.android端和ios端是两套不同的系统,所使用的开发代码语言和系统特性都是不同的,但是,无论是什么端的播放器,其底层代码是通用的一套代码。例如,对于android端的播放器和ios端的播放器来说,其底层代码大多都是使用c语言和c 语言开发的。
3.相关技术中,测试人员需要对android端的播放器和ios端的播放器分别进行测试,但是,android端的播放器的底层软件开发工具包(software development kit,sdk)和ios端的播放器的底层sdk是同一套,此时,如果分别针对android端的播放器和ios端的播放器进行测试,相当于将播放器的底层sdk重复测试两次,增加了测试成本,造成测试资源的浪费。


技术实现要素:

4.本公开提供代码工程的测试方法、装置、电子设备和存储介质,以至少解决上述相关技术中,如果分别针对android端的播放器和ios端的播放器进行测试,相当于将播放器的底层sdk重复测试两次,增加了测试成本,造成测试资源的浪费的问题。
5.根据本公开实施例的第一方面,提供一种代码工程的测试方法,应用于测试终端,所述测试方法包括:从业务方终端获取服务器地址;从所述服务器地址所指示的服务器上获取测试配置文件,其中,所述测试配置文件由所述业务方终端上传至所述服务器,所述测试配置文件包含待测试的代码工程所包含的多个待测试代码内容中每个待测试代码内容在所述服务器上的存储位置信息以及测试类型信息,所述待测试的代码工程由所述业务方终端上传至所述服务器,所述待测试的代码工程为不同操作系统通用的底层代码;针对每个待测试代码内容,基于所述待测试代码内容在所述服务器上的存储位置信息,从所述服务器上获取所述待测试代码内容,并根据所述待测试代码内容的测试类型信息,链接所述测试类型信息对应的测试用例;利用所述测试类型信息对应的测试用例,对所述待测试代码内容进行测试。
6.可选地,所述测试配置文件还包含编译文件在所述服务器上的存储位置信息;所述测试方法还包括:基于所述编译文件在所述服务器上的存储位置信息从所述服务器上获取所述编译文件,其中,所述编译文件由所述业务方终端上传至所述服务器;所述利用所述测试类型信息对应的测试用例,对所述待测试代码内容进行测试,包括:利用所述编译文件对所述待测试代码内容进行编译,获得可执行内容;利用所述测试类型信息对应的测试用例,对所述待测试代码内容对应的可执行内容进行测试。
7.可选地,所述测试配置文件还包含所述待测试的代码工程中每个待格式化代码内容在所述服务器上的存储位置信息;所述测试方法还包括:根据所述每个待格式化代码内
容在所述服务器上的存储位置信息,从所述服务器上获取所述待格式化代码内容;对所述每个待格式化代码内容进行格式化。
8.可选地,所述服务器包括多个服务器,所述每个待测试代码内容被存储到所述多个服务器中的一个服务器,所述每个待测试代码内容的所述存储位置信息还指示其被存储的服务器;所述基于所述待测试代码内容在所述服务器上的存储位置信息,从所述服务器上获取所述待测试代码内容,包括:基于所述待测试代码内容的存储位置信息所指示的服务器以及在所述服务器上的存储位置,获取所述待测试代码内容。
9.可选地,所述测试配置文件还包含测试结果地址,所述测试结果地址用于指示所述待测试的代码工程的测试结果的发送地址。
10.可选地,所述测试配置文件还包含误报信息在所述服务器上的存储位置信息;所述测试方法还包括:基于所述误报信息在所述服务器上的存储位置信息从所述服务器获取所述误报信息,其中,所述误报信息为所述业务方终端对所述待测试的代码工程进行漏洞分析所获得的误报的漏洞的信息。
11.可选地,所述待测试代码内容为所述待测试的代码工程所包含的文件夹中的代码文件。
12.可选地,所述待测试的代码工程为基于c语言/c 语言开发的。
13.根据本公开实施例的第二方面,提供一种代码工程的测试装置,包括:服务器地址获取模块,被配置从业务方终端获取服务器地址;测试配置文件获取模块,被配置为从所述服务器地址所指示的服务器上获取测试配置文件,其中,所述测试配置文件由所述业务方终端上传至所述服务器,所述测试配置文件包含待测试的代码工程所包含的多个待测试代码内容中每个待测试代码内容在所述服务器上的存储位置信息以及测试类型信息,所述待测试的代码工程由所述业务方终端上传至所述服务器,所述待测试的代码工程为不同操作系统通用的底层代码;链接模块,被配置为针对每个待测试代码内容,基于所述待测试代码内容在所述服务器上的存储位置信息,从所述服务器上获取所述待测试代码内容,并根据所述待测试代码内容的测试类型信息,链接所述测试类型信息对应的测试用例;测试模块,被配置为利用所述测试类型信息对应的测试用例,对所述待测试代码内容进行测试。
14.可选地,所述测试配置文件还包含编译文件在所述服务器上的存储位置信息;所述测试装置还包括:编译文件获取模块,被配置为基于所述编译文件在所述服务器上的存储位置信息从所述服务器上获取所述编译文件,其中,所述编译文件由所述业务方终端上传至所述服务器;所述测试模块被配置为:利用所述编译文件对所述待测试代码内容进行编译,获得可执行内容;利用所述测试类型信息对应的测试用例,对所述待测试代码内容对应的可执行内容进行测试。
15.可选地,所述测试配置文件还包含所述待测试的代码工程中每个待格式化代码内容在所述服务器上的存储位置信息;所述测试装置还包括:待格式化代码内容获取模块,被配置为根据所述每个待格式化代码内容在所述服务器上的存储位置信息,从所述服务器上获取该待格式化代码内容;格式化模块,被配置为对所述每个待格式化代码内容进行格式化。
16.可选地,所述服务器包括多个服务器,所述每个待测试代码内容被存储到所述多个服务器中的一个服务器,所述每个待测试代码内容的所述存储位置信息还指示其被存储
的服务器;所述链接模块被配置为:基于所述待测试代码内容的存储位置信息所指示的服务器以及在所述服务器上的存储位置,获取所述待测试代码内容。
17.可选地,所述测试配置文件还包含测试结果地址,所述测试结果地址用于指示所述待测试的代码工程的测试结果的发送地址。
18.可选地,所述测试配置文件还包含误报信息在所述服务器上的存储位置信息;所述测试装置还包括:误报信息获取模块,被配置为基于所述误报信息在所述服务器上的存储位置信息从所述服务器获取所述误报信息,其中,所述误报信息为所述业务方终端对所述待测试的代码工程进行漏洞分析所获得的误报的漏洞的信息。
19.可选地,所述待测试代码内容为所述待测试的代码工程所包含的文件夹中的代码文件。
20.可选地,所述待测试的代码工程为基于c语言/c 语言开发的。
21.根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现根据本公开的代码工程的测试方法。
22.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行根据本公开的代码工程的测试方法。
23.根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据本公开的代码工程的测试方法。
24.本公开的实施例提供的技术方案至少带来以下有益效果:
25.本公开的代码工程的测试方法,可以基于测试配置文件所包含的待测试的代码工程中每个待测试代码内容在服务器上的存储位置信息以及测试类型信息,对从服务器上拉取的待测试代码内容进行测试,即只需要对底层代码进行测试,由于android端的播放器的底层sdk和ios端的播放器的底层sdk是同一套,因此此时相当于同时完成了对android端的播放器和ios端的播放器的测试,相比于针对不同系统终端的播放器分别进行测试的方式,本公开的代码工程的测试方法避免了对播放器的底层sdk的重复测试,降低了测试成本,可以节省测试资源。
26.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
27.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
28.图1是示出根据本公开的示例性实施例的一种代码工程的测试方法的流程图;
29.图2是示出根据本公开的示例性实施例的一种代码工程的测试方法的具体实施流程图;
30.图3是示出根据本公开的示例性实施例的一种代码内容的测试结果的示意图;
31.图4是示出根据本公开的示例性实施例的一种代码工程的测试装置的框图;
32.图5是示出根据本公开的示例性实施例的一种电子设备的框图。
具体实施方式
33.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
34.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
35.在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括a和b之中的至少一个”即包括如下三种并列的情况:(1)包括a;(2)包括b;(3)包括a和b。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
36.图1是示出根据本公开的示例性实施例的一种代码工程的测试方法的流程图,应用于测试终端。
37.参照图1,在步骤101中,可以从业务方终端获取服务器地址。需要说明的是,由于某些待测试的代码工程比较庞大,如果放在本地会占用较多的存储空间,因此,业务方终端可以将待测试的代码工程上传至服务器上的仓库进行存储。进一步的,业务方终端还可以将用于存储待测试的代码工程的服务器地址,即仓库地址发给测试终端,便于测试终端根据仓库地址从对应的仓库中拉取待测试的代码工程。
38.在步骤102中,可以从服务器地址所指示的服务器上获取测试配置文件。其中,该测试配置文件由业务方终端上传至服务器,该测试配置文件可以包含待测试的代码工程所包含的多个待测试代码内容中每个待测试代码内容在服务器上的存储位置信息以及测试类型信息,待测试的代码工程由业务方终端上传至服务器,待测试的代码工程可以为不同操作系统通用的底层代码。
39.例如,测试配置文件可以包含需要测试代码行覆盖率的文件夹在服务器上的存储位置信息、需要测试代码函数覆盖率的文件夹在服务器上的存储位置信息或者需要测试内存泄漏的文件夹在服务器上的存储位置信息等等。这样,业务方可以根据自身需要在测试配置文件中指定需要进行测试的代码内容以及相应的测试类型,即业务方只需在测试配置文件中配置相关参数,就可以实现对指定的待测试代码内容进行指定类型的测试,实现过程简单,方便快捷。
40.在步骤103中,针对每个待测试代码内容,可以基于待测试代码内容在服务器上的存储位置信息,从服务器上获取该待测试代码内容,即将该待测试代码内容从服务器拉取到测试终端本地。并且,可以根据该待测试代码内容的测试类型信息,链接测试类型信息对应的测试用例(case)。
41.进一步的,还可以从服务器上获取测试用例的头文件,然后,可以利用该头文件链接测试用例。接下来,可以利用测试用例对待测试代码内容进行测试。
42.在步骤104中,可以利用测试类型信息对应的测试用例,对待测试代码内容进行测
试。
43.例如,如果测试配置文件中指定针对待测试的代码工程中的文件夹a测试代码行覆盖率,则可以针对文件夹a仅测试代码行覆盖率;如果测试配置文件中指定针对待测试的代码工程中的文件夹b测试内存泄漏,则可以针对文件夹b仅测试内存泄漏等等。
44.根据本公开的示例性实施,测试配置文件还可以包含编译文件在服务器上的存储位置信息。可以基于编译文件在服务器上的存储位置信息从服务器上获取编译文件。其中,该编译文件由业务方终端上传至服务器。然后,可以利用编译文件对待测试代码内容进行编译,获得可执行内容。接下来,可以利用测试类型信息对应的测试用例,对待测试代码内容对应的可执行内容进行测试。
45.根据本公开的示例性实施例,测试配置文件还可以包含待测试的代码工程中每个待格式化代码内容在服务器上的存储位置信息。可以根据每个待格式化代码内容在服务器上的存储位置信息,从服务器上获取该待格式化代码内容。然后,可以对每个待格式化代码内容进行格式化。需要说明的是,业务方编写的某些代码内容可能并不规范,因此可以在测试配置文件中指定需要进行格式化的代码内容,进而测试终端可以基于测试配置文件对被指定需要进行格式化的代码内容进行格式化,使相应的代码内容更规范。
46.根据本公开的示例性实施例,需要说明的是,某些待测试的代码工程可能比较庞大,其所包含的待测试代码内容可能存储于不同的服务器上。因此,本公开可以包括多个服务器,每个待测试代码内容可以被存储到多个服务器中的一个服务器,每个待测试代码内容的存储位置信息还指示其被存储的服务器。可以基于待测试代码内容的存储位置信息所指示的服务器以及在该服务器上的存储位置,获取该待测试代码内容。
47.根据本公开的示例性实施例,测试配置文件还可以包含测试结果地址,该测试结果地址用于指示待测试的代码工程的测试结果的发送地址。这样,对待测试的代码工程进行测试获得测试结果之后,可以基于测试配置文件包含的测试结果地址,向该测试结果地址所指示的位置发送测试结果,进而测试人员就可以查看测试结果,并基于测试结果评估代码工程是否需要进一步完善。
48.根据本公开的示例性实施例,测试配置文件还可以包含误报信息在服务器上的存储位置信息。可以基于误报信息在服务器上的存储位置信息从服务器获取误报信息。其中,该误报信息为业务方终端对待测试的代码工程进行漏洞分析所获得的误报的漏洞的信息。“误报”的含义是指业务方终端判定待测试的代码工程中的某些代码内容存在漏洞,但是研发人员经过分析却认为该代码内容没有问题,此时,可以以研发人员的分析结果为准。
49.根据本公开的示例性实施例,待测试代码内容可以为待测试的代码工程所包含的文件夹中的代码文件。
50.根据本公开的示例性实施例,待测试的代码工程可以为基于c语言/c 语言开发的。
51.图2示出根据本公开的示例性实施例的一种代码工程的测试方法的具体实施流程图。
52.参照图2,在步骤201中,业务方终端在待测试的代码工程中集成开源的单元测试框架catch2。即业务方终端可以在待测试的代码工程中放入一个头文件,这样,测试终端就可以利用该头文件链接到测试用例,并利用链接到的测试用例对待测试的代码工程进行测
试。
53.在步骤202中,业务方终端根据自身的需要对测试配置文件中的相关参数进行配置。
54.例如,测试配置文件的内容可以如下:
55.[0056][0057]
其中,上述测试配置文件中的“入口cmakelists.txt的相对路径”表示编译文件在服务器上的存储路径,cmakelists为一种编译方式;"cmakelists.txt中project的内容【必选】"中的“project”这个字段为待测试的代码工程的名称;"cmake前的一些clone库等操作的脚本的相对路径"表示存储于除当前服务器之外的其他服务器上的待测试代码内容在其他服务器上的存储路径;"“由于可能有误报,将误报的堆栈信息分别放入文件中,这里给出文件路径即可”中的“误报的堆栈信息”即为前一个实施例中所述的“业务方终端对待测试的代码工程进行漏洞分析所获得的误报的漏洞的信息”;"需要使用astyle格式化的文件夹"中的“astyle”与"需要使用clang-format格式化的文件夹"中的“clang-format”为两种不同的格式化工具。上述测试配置文件中的“必选”表示需要业务方必须配置的参数,“可选”表示业务方可以根据自身的需要选择性配置的参数。
[0058]
这样,业务方可以根据自身需要在测试配置文件中指定需要进行测试的代码内容以及相应的测试类型,即业务方只需在测试配置文件中配置相关参数,就可以实现对指定的待测试代码内容进行指定类型的测试,实现过程简单,方便快捷。
[0059]
在步骤203中,业务方终端向远端服务器上传待测试的代码工程以及配置好的测试配置文件,并将用于存储待测试的代码工程以及测试配置文件的服务器的仓库地址发给测试终端。
[0060]
在步骤204中,测试终端在jenkins上配置业务方终端发送的仓库地址,利用jenkins从该仓库地址所指示的远端服务器上下载待测试的代码工程以及相应的测试配置文件,并利用jenkins基于测试配置文件中的相关参数完成对待测试的代码工程的编译和
测试。其中,jenkins是一个开源软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
[0061]
参照图3,图3示出根据本公开的示例性实施例的一种代码内容的测试结果的示意图。在图3中,示出了测试的启动时间、编译分支、测试提交人员的姓名、待测试的代码工程的执行产物、代码行覆盖率测试结果、代码函数覆盖率测试结果和内存泄漏检测测试结果。其中,待测试的代码工程的执行产物:jenkins地址可以为一个跳转链接,用户点击该跳转链接可以跳转至测试结果的详情页面,该测试结果的详情页面可以包含代码工程的测试日志、代码工程的编译过程以及代码工程中每个代码内容的详细测试结果等等。图3中还示出了测试用例(test cases)以及断言(assertions)的通过情况,test cases可以用于测试代码工程中的函数的对错。其中,test cases的总数(total)为6个,通过(passed)的数量为5个,未通过(failed)的数量为1个;assertions的总数(total)为23个,通过(passed)的数量为22个,未通过(failed)的数量为1个。
[0062]
本公开的代码工程的测试方法,可以将开源工具进行整合封装,可以使用catch2做单元测试基础框架、可以使用addresssanitizer做内存泄露检测、可以使用gcov/lcov做代码覆盖率统计、可以使用jenkins完成代码工程的测试以及测试结果的通知。由于仅针对底层代码进行测试,并且android端的播放器的底层sdk和ios端的播放器的底层sdk是同一套,因此此时相当于同时完成了对android端的播放器和ios端的播放器的测试,相比于针对不同系统终端的播放器分别进行测试的方式,本公开的代码工程的测试方法避免了对播放器的底层sdk的重复测试,降低了测试成本,可以节省测试资源。
[0063]
进一步的,本公开的代码工程的测试方法可以封装好对外接口,使业务方不需要关注内部细节和中间过程,只需要在测试配置文件中配置相关参数,便可一键自动化完成对代码工程中指定的代码内容进行指定类型的测试,实现过程简单,方便快捷。
[0064]
图4是示出根据本公开的示例性实施例的一种代码工程的测试装置的框图。
[0065]
参照图4,该装置400可包括服务器地址获取模块401、测试配置文件获取模块402、链接模块403和测试模块404。
[0066]
服务器地址获取模块401可以从业务方终端获取服务器地址。需要说明的是,由于某些待测试的代码工程比较庞大,如果放在本地会占用较多的存储空间,因此,业务方终端可以将待测试的代码工程上传至服务器上的仓库进行存储。进一步的,业务方终端还可以将用于存储待测试的代码工程的服务器地址,即仓库地址发给测试终端,便于测试终端根据服务器地址从对应的仓库中拉取待测试的代码工程。
[0067]
测试配置文件获取模块402可以从服务器地址所指示的服务器上获取测试配置文件。其中,该测试配置文件由业务方终端上传至服务器,该测试配置文件可以包含待测试的代码工程所包含的多个待测试代码内容中每个待测试代码内容在服务器上的存储位置信息以及测试类型信息,待测试的代码工程由业务方终端上传至服务器,待测试的代码工程可以为不同操作系统通用的底层代码。
[0068]
例如,测试配置文件可以包含需要测试代码行覆盖率的文件夹在服务器上的存储位置信息、需要测试代码函数覆盖率的文件夹在服务器上的存储位置信息或者需要测试内存泄漏的文件夹在服务器上的存储位置信息等等。这样,业务方可以根据自身需要在测试配置文件中指定需要进行测试的代码内容以及相应的测试类型,即业务方只需在测试配置
文件中配置相关参数,就可以实现对指定的待测试代码内容进行指定类型的测试,实现过程简单,方便快捷。
[0069]
针对每个待测试代码内容,链接模块403可以基于待测试代码内容在服务器上的存储位置信息,从服务器上获取该待测试代码内容,即将该待测试代码内容从服务器拉取到测试终端本地。并且,链接模块403可以根据该待测试代码内容的测试类型信息,链接测试类型信息对应的测试用例(case)。
[0070]
进一步的,还可以从服务器上获取测试用例的头文件,然后,可以利用该头文件链接测试用例。接下来,可以利用测试用例对待测试代码内容进行测试。
[0071]
测试模块404可以利用测试类型信息对应的测试用例,对待测试代码内容进行测试。
[0072]
例如,如果测试配置文件中指定针对待测试的代码工程中的文件夹a测试代码行覆盖率,则可以针对文件夹a仅测试代码行覆盖率;如果测试配置文件中指定针对待测试的代码工程中的文件夹b测试内存泄漏,则可以针对文件夹b仅测试内存泄漏等等。
[0073]
根据本公开的示例性实施例,代码工程的测试装置400还可以包含编译文件获取模块。测试配置文件还可以包含编译文件在服务器上的存储位置信息。编译文件获取模块可以基于编译文件在服务器上的存储位置信息从服务器上获取编译文件。其中,该编译文件由业务方终端上传至服务器。然后,测试模块404可以利用编译文件对待测试代码内容进行编译,获得可执行内容。接下来,测试模块404可以利用测试类型信息对应的测试用例,对待测试代码内容对应的可执行内容进行测试。
[0074]
根据本公开的示例性实施例,代码工程的测试装置400还可以包含待格式化代码内容获取模块和格式化模块。测试配置文件还可以包含待测试的代码工程中每个待格式化代码内容在服务器上的存储位置信息。待格式化代码内容获取模块可以根据每个待格式化代码内容在服务器上的存储位置信息,从服务器上获取该待格式化代码内容。然后,格式化模块可以对每个待格式化代码内容进行格式化。需要说明的是,业务方编写的某些代码内容可能并不规范,因此可以在测试配置文件中指定需要进行格式化的代码内容,进而测试终端可以基于测试配置文件对被指定需要进行格式化的代码内容进行格式化,使相应的代码内容更规范。
[0075]
根据本公开的示例性实施例,需要说明的是,某些待测试的代码工程可能比较庞大,其所包含的待测试代码内容可能存储于不同的服务器上。因此,本公开可以包括多个服务器,每个待测试代码内容可以被存储到多个服务器中的一个服务器,每个待测试代码内容的存储位置信息还指示其被存储的服务器。链接模块403可以基于待测试代码内容的存储位置信息所指示的服务器以及在该服务器上的存储位置,获取该待测试代码内容。
[0076]
根据本公开的示例性实施例,测试配置文件还可以包含测试结果地址,该测试结果地址用于指示待测试的代码工程的测试结果的发送地址。这样,对待测试的代码工程进行测试获得测试结果之后,可以基于测试配置文件包含的测试结果地址,向该测试结果地址所指示的位置发送测试结果,进而测试人员就可以查看测试结果,并基于测试结果评估代码工程是否需要进一步完善。
[0077]
根据本公开的示例性实施例,代码工程的测试装置400还可以包含误报信息获取模块。测试配置文件还可以包含误报信息在服务器上的存储位置信息。误报信息获取模块
可以基于误报信息在服务器上的存储位置信息从服务器获取误报信息。其中,该误报信息为业务方终端对待测试的代码工程进行漏洞分析所获得的误报的漏洞的信息。“误报”的含义是指业务方终端判定待测试的代码工程中的某些代码内容存在漏洞,但是研发人员经过分析却认为该代码内容没有问题,此时,可以以研发人员的分析结果为准。
[0078]
根据本公开的示例性实施例,待测试代码内容可以为待测试的代码工程所包含的文件夹中的代码文件。
[0079]
根据本公开的示例性实施例,待测试的代码工程可以为基于c语言/c 语言开发的。
[0080]
图5是示出根据本公开的示例性实施例的一种电子设备500的框图。
[0081]
参照图5,电子设备500包括至少一个存储器501和至少一个处理器502,所述至少一个存储器501中存储有指令,当指令被至少一个处理器502执行时,执行根据本公开的示例性实施例的代码工程的测试方法。
[0082]
作为示例,电子设备500可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令的装置。这里,电子设备500并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备500还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
[0083]
在电子设备500中,处理器502可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
[0084]
处理器502可运行存储在存储器501中的指令或代码,其中,存储器501还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
[0085]
存储器501可与处理器502集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器501可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器501和处理器502可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器502能够读取存储在存储器中的文件。
[0086]
此外,电子设备500还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备500的所有组件可经由总线和/或网络而彼此连接。
[0087]
根据本公开的示例性实施例,还可提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行根据本公开的代码工程的测试方法。这里的计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd r、cd-rw、cd rw、dvd-rom、dvd-r、dvd r、dvd-rw、dvd rw、dvd-ram、bd-rom、bd-r、bd-r lth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态硬盘(ssd)、卡式存储器(诸如,多媒体卡、安全数字(sd)卡或极速数字(xd)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非
暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
[0088]
根据本公开的示例性实施例,还可提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据本公开的代码工程的测试方法。
[0089]
根据本公开的代码工程的测试方法、装置、电子设备和存储介质,可以基于测试配置文件所包含的待测试的代码工程中每个待测试代码内容在服务器上的存储位置信息以及测试类型信息,对从服务器上拉取的待测试代码内容进行测试,即只需要对底层代码进行测试,由于android端的播放器的底层sdk和ios端的播放器的底层sdk是同一套,因此此时相当于同时完成了对android端的播放器和ios端的播放器的测试,相比于针对不同系统终端的播放器分别进行测试的方式,本公开的代码工程的测试方法避免了对播放器的底层sdk的重复测试,降低了测试成本,可以节省测试资源。
[0090]
进一步的,业务方可以根据自身需要在测试配置文件中指定需要进行测试的代码内容以及相应的测试类型,即业务方只需在测试配置文件中配置相关参数,就可以实现对指定的待测试代码内容进行指定类型的测试,实现过程简单,方便快捷。
[0091]
进一步的,业务方编写的某些代码内容可能并不规范,因此可以在测试配置文件中指定需要进行格式化的代码内容,进而测试终端可以基于测试配置文件对被指定需要进行格式化的代码内容进行格式化,使相应的代码内容更规范。
[0092]
进一步的,对待测试的代码工程进行测试获得测试结果之后,可以基于测试配置文件包含的测试结果地址,向该测试结果地址所指示的位置发送测试结果,进而测试人员就可以查看测试结果,并基于测试结果评估代码工程是否需要进一步完善。
[0093]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0094]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献