本发明专利技术公开了一种生成测试接口应用的入参类对象的方法及装置,在生成针对测试接口应用的测试用例中的入参类对象时,调用所设置的入参类模型,所述入参类模型根据所获取类文件中各个字段的字段类型赋予各个字段对应的字段值,生成入参类对象。更进一步地,在当确定所述字段的字段类型为自定义类型时,所述入参类模型将该字段实例化为一个入参类对象,且对该入参类对象所含有的所有字段值依次赋予到该字段中。这样,由于入参类模型的设置及调用,只需要编写测试用例中的类文件即可,而无需对入参类对象的生成过程代码进行编写,且避免了直接采用Json转换工具转换而造成的转换错误问题,从而在无专业人员的参与下,简单且正确地生成测试接口应用的入参类对象。
A method and device for generating test interface application's input class object
【技术实现步骤摘要】
一种生成测试接口应用的入参类对象的方法及装置
本专利技术涉及互联网
,特别涉及一种生成测试接口应用的入参类对象的方法及装置。
技术介绍
随着信息化技术的发展,互联网已经渗透到了日常生活的方方面面。在一个互联网系统功能正常运行的背后,需要大量测试工作保障系统的健壮性。采用单元测试方式对互联网系统的各个最小可测试功能单元进行测试,在开发人员或测试人员对互联网系统的测试过程中功不可没,其可以对一个一个的测试用例场景进行覆盖,帮助其快速定位所述系统中的各个可测试功能单元的问题。在对互联网系统的众多功能单元测试中,有一种是针对接口应用的测试,具体是采用计算机脚本语言编译得到所述系统要测试的接口应用的测试用例,该测试用例包括了多个入参类对象,运行测试用例,对所述接口应用进行测试,得到所述接口应用的测试结果。目前,生成针对接口应用的测试用例中的入参类对象的方式主要有两种:第一种方式,在生成针对接口应用的测试用例中,直接设置每个接口的入参类对象,具体为所设置入参类对象的字段设置符合测试用例要求的字段值。对于一个入参类对象的每个字段都设置有类型值,除了基础类型外,可能会有各种自定义类型,比如列表(List)类型、集(Set)类型或映射(Map)等,在这些自定义类型下,对应的字段值常常是一个集合,比如字段类型值为Set时,字段值是一个无序且不可重复的字段值集合;字段类型值为List时,字段值是一个有序且可重复的字段值列表等等,这时,就还需要设置这些集合值。第二种方式,在生成针对接口应用的测试用例中,采用轻量级的数据交换格式(Json)转换工具,诸如快速Json(FastJson)转换工具为所设置入参类对象的字段设置符合测试用例要求的字段值。具体地,对于一个入参类对象的字段,根据字段类型生成字段值的JSON字符串样稿(Demo),在该Json字符串样稿中填写相应字段的字段值,然后在编译测试用例过程中采用JSON转换工具将该Json字符串Demo转换为所设置的入参类对象。具体字段值的填写甚至不需要技术人员参与,只需要懂业务的人员根据具体业务填写相应字段的字段值即可。但是,专利技术人研究后发现,无论采用上述两种方式的哪一种方式,都存在问题:第一种方式,需要专业的技术人员编写计算机脚本语言代码,主要是为了设置每个接口的入参类对象,这需要技术人员具有计算机语言的编程基础。另外,如果入参类对象中字段特别多的情况下,在编写时由于技术人员的问题,也会出现漏设置或错误设置的问题。第二种方式,虽然不需要专业的技术人员编写计算机脚本语言代码,但是由于JSON转换工具的转换设置缺陷,对于入参类对象的自定义类型字段,由于其字段值常常为一个集合,而在JSON字符串Demo中填写相应字段的字段值转换时无法对应一个集合,所以转换得到的字段值都是空值(null),而得不到具体的值,造成了针对接口应用的测试用例的设置错误。综上,如何不需要专业的技术人员参与,就可以简单且正确的生成测试接口应用的入参类对象,成为了一个亟待解决的问题。
技术实现思路
有鉴于此,本专利技术实施例提供一种生成测试接口应用的入参类对象的方法,该方法能够在无专业人员的参与下,简单且正确地生成测试接口应用的入参类对象。本专利技术实施例还提供一种生成测试接口应用的入参类对象的装置,该装置能够在无专业人员的参与下,简单且正确地生成测试接口应用的入参类对象。本专利技术实施例是这样实现的:一种生成测试接口应用的入参类对象的方法,该方法包括:调用设置的入参类模型;所述入参类模型根据获取类文件中各个字段的字段类型,分别判断各个字段的字段类型是否为自定义类型,如果是,将自定义类型的字段实例化为入参类对象,将对该入参类对象所含有的所有字段值,依次赋予到该字段中;如果否,所述入参类模型将非自定义类型的字段赋予设置的对应字段值。一种生成测试接口应用的入参类对象的装置,包括:设置单元、调用单元及处理单元,其中,设置单元,用于设置入参类模型;调用单元,用于调用所设置的入参类模型及获取类文件中各个字段的字段类型;处理单元,用于分别判断各个字段的字段类型是否为自定义类型,如果是,所述入参类模型将自定义类型的字段实例化为一个入参类对象,将对该入参类对象所含有的所有字段值,依次赋予到该字段中;如果否,则所述入参类模型将非自定义类型的字段赋予设置的对应字段值。如上可见,本专利技术实施例设置入参类模型,在生成针对测试接口应用的测试用例中的入参类对象时,调用所设置的入参类模型,所述入参类模型根据所获取类文件中各个字段的字段类型赋予各个字段对应的字段值,生成入参类对象。更进一步地,在当确定所述字段的字段类型为自定义类型时,所述入参类模型将该字段实例化为一个入参类对象,且对该入参类对象所含有的所有字段值依次赋予到该字段中。这样,由于入参类模型的设置及调用,只需要编写测试用例中的类文件即可,而无需对入参类对象的生成过程代码进行编写,且避免了直接采用Json转换工具转换而造成的转换错误问题,从而在无专业人员的参与下,简单且正确地生成测试接口应用的入参类对象。附图说明图1为本专利技术实施例提供的生成测试接口应用的入参类对象的方法流程图;图2为本专利技术实施例提供的生成测试接口应用的入参类对象的方法具体例子一流程图;图3为本专利技术实施例提供的生成测试接口应用的入参类对象的方法具体例子二流程图;图4为本专利技术实施例提供的生成测试接口应用的入参类对象的装置结构示意图。具体实施方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本专利技术进一步详细说明。本专利技术实施例为了在无专业人员的参与下,简单且正确地生成测试接口应用的入参类对象,设置入参类模型,在生成针对测试接口应用的入参类对象时,调用所设置的入参类模型,所述入参类模型根据所获取类文件中各个字段的字段类型赋予各个字段对应的字段值,生成入参类对象。更进一步地,在当确定所述字段的字段类型为自定义类型时,所述入参类模型将该字段实例化为一个入参类对象,且对该入参类对象所含有的所有字段值依次赋予到该字段中。这样,由于入参类模型的设置及调用,只需要编写测试用例中的类文件即可。在按照上述方式得到入参类对象之后,再采用Json转换工具,具体采用FastJson转换工具,将生成的入参类对象转换为Json字符串样稿,存储,以使后续编译针对测试接口的测试用例时进行Json转换工具的转换及调用。采用本专利技术实施例生成入参类对象,考虑了其中自定义类型的字段赋值问题,特别是其中集合类型或反射类型的字段赋值,而不会出现
技术介绍
那样直接采用Json转换工具转换时对自定义类型的字段赋值错误的情况,所以最终得到的入参类对象更加准确,且简单容易实现。在本专利技术实施例中,所述入参类模型是预先采用计算机脚本语言,比如Java语言编写的一段可执行程序并存储,该段可执行程序能够读取类文件中的各个字段,并根据各个字段的字段类型进行对应字段的适应性处理。在调用本文档来自技高网...
【技术保护点】
1.一种生成测试接口应用的入参类对象的方法,其特征在于,该方法包括:/n调用设置的入参类模型;/n所述入参类模型根据获取类文件中各个字段的字段类型,分别判断各个字段的字段类型是否为自定义类型,如果是,将自定义类型的字段实例化为入参类对象,将对该入参类对象所含有的所有字段值,依次赋予到该字段中;如果否,所述入参类模型将非自定义类型的字段赋予设置的对应字段值。/n
【技术特征摘要】
1.一种生成测试接口应用的入参类对象的方法,其特征在于,该方法包括:
调用设置的入参类模型;
所述入参类模型根据获取类文件中各个字段的字段类型,分别判断各个字段的字段类型是否为自定义类型,如果是,将自定义类型的字段实例化为入参类对象,将对该入参类对象所含有的所有字段值,依次赋予到该字段中;如果否,所述入参类模型将非自定义类型的字段赋予设置的对应字段值。
2.如权利要求1所述的方法,其特征在于,该方法还包括:
采用Json转换工具将设置的入参类对象转换为Json字符串样稿存储,以使后续编译测试接口的测试用例时,采用Json转换工具将所存储的Json字符串样稿转换后调用。
3.如权利要求1所述的方法,其特征在于,所述调用采用Java语言反射方式。
4.如权利要求1所述的方法,其特征在于,所述类文件中采用类名标识,并存储;
通过获取传入所述类名的完整路径,以得到该类文件;
所述类文件采用Java语言的Class类设置。
5.如权利要求1所述的方法,其特征在于,所述入参类模型将非自定义类型的字段赋予对应的字段值为:
a、判断当前要判断的字段类型是否为枚举类,如果是,则对应的字段值为“0”;如果否,执行步骤b;
b、判断是否为不可变量String,如果是,则对应的字段值为“”,如果否,执行步骤c;
步骤c、判断是否为基础类,如果否,则是自定义类型,执行所述将自定义类型的字段实例化为入参类对象的步骤;如果是,则执行步骤d;
步骤d、确定是基础类下的整数类型,则对应的字段值为“0”;确定是基础类下的布尔类型,则对应的字段值为“真值true”;确定是基础类型下的字符类型,则对应的字段值为“a”;确定是基础类下的浮点数类型,则对应的字段值“0.0”。
6.如权利要求1所述的方法,其特征在于,所述入参类模型将自定义类型的字段实例化为一个入参类对象,将对该入参类对象所含有的所有字段值,依次赋予到该字段中为:
所述类文件采用Java语言的Class类设置,将Class类...
【专利技术属性】
技术研发人员:余欢,
申请(专利权)人:北京京东尚科信息技术有限公司,北京京东世纪贸易有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。