CN105224461A - 一种集成测试用例的生成方法和装置 - Google Patents

一种集成测试用例的生成方法和装置 Download PDF

Info

Publication number
CN105224461A
CN105224461A CN201510696561.4A CN201510696561A CN105224461A CN 105224461 A CN105224461 A CN 105224461A CN 201510696561 A CN201510696561 A CN 201510696561A CN 105224461 A CN105224461 A CN 105224461A
Authority
CN
China
Prior art keywords
case
data
testing use
output data
unit
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
Application number
CN201510696561.4A
Other languages
English (en)
Other versions
CN105224461B (zh
Inventor
周斯波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201510696561.4A priority Critical patent/CN105224461B/zh
Publication of CN105224461A publication Critical patent/CN105224461A/zh
Application granted granted Critical
Publication of CN105224461B publication Critical patent/CN105224461B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种集成测试用例的生成方法和装置,所述方法包括:对前置单元测试用例的输出数据进行标准化处理,将所述输出数据转换为预先设定的格式,获取标准化输出数据;从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充;其中,所述标准化输入数据的格式与所述标准化输出数据的格式相同;将所述标准化输入数据转化为所述后置单元测试用例可接受的形式并输入到所述后置单元测试用例中。采用本发明可简化集成测试用例的生成过程,提高集成测试用例的生成效率,降低测试用例的维护成本。

Description

一种集成测试用例的生成方法和装置
技术领域
本发明涉及软件测试领域,尤其涉及一种集成测试用例的生成方法和装置。
背景技术
集成测试,也叫组装测试或联合测试,是指在单元测试的基础上将部分或全部模块按照设计要求(如根据结构图)组装成为子系统或系统进行测试。系统的某项功能通常由多个模块协同工作来实现,集成测试时为了验证某项功能需要将这些模块联合起来进行测试,以确保各模块组合在一起后能够按既定的意图协作运行并且不发生冲突。
集成测试是单元测试的逻辑扩展,在进行集成测试之前一般需要先完成单元测试,在对各模块进行冒烟测试和单元测试等测试过程中往往会积累不少的单元测试用例,当项目进入到集成测试阶段时,测试人员可以通过组合这些已有的单元测试用例或者重新编写集成测试用例来完成系统的集成测试。然而,由于不同的单元测试用例的输入输出数据执行不同的逻辑标准,各单元测试用例对输入数据的要求不同,输出数据的格式和形式也不同,测试人员需要耗费大量的时间编写中间脚本以实现各单元测试用例之间的衔接和数据交换,脚本的编写较为复杂,将已有单元测试用例集成起来的难度较大,并且这些中间脚本由大量的简单判断组成,当脚本日趋完善,判断条件也会日趋臃肿,脚本的维护成本会越来越高。在具体实践当中,测试人员往往宁愿直接重新编写集成测试用例,而重新编写集成测试用例并未复用已有的单元测试用例,显然编写的成本较高、效率较低;同时,重新编写的测试用例的覆盖度往往不高,其可靠性也难以得到团队的认可。
发明内容
本发明实施例的目的在于提供一种集成测试用例的生成方法和装置,提高集成测试用例的生成效率,降低测试用例的维护成本。
为了实现上述目的,本发明实施例提供了一种集成测试用例的生成方法,包括:
对前置单元测试用例的输出数据进行标准化处理,将所述输出数据转换为预先设定的格式,获取标准化输出数据;
从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充;其中,所述标准化输入数据的格式与所述标准化输出数据的格式相同;
将所述标准化输入数据转化为所述后置单元测试用例可接受的形式并输入到所述后置单元测试用例中。
优选地,所述预先设定的格式为xml、json、yaml、protobuf、msgpack、csv、ini、自定义二进制格式和自定义文本格式中的一种。
优选地,所述从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充,包括:
从所述标准化输出数据中抽取有用数据;
对所述有用数据进行参数转换计算,获取计算结果;
将所述计算结果填充到后置单元测试用例的标准化输入数据中。
优选地,所述从所述标准化输出数据中抽取有用数据,具体为:
对所述标准化输出数据进行解析,获取所述标准化输出数据的解析结果;
根据预先设定的抽取参数进行数据提取,从所述标准化输出数据的解析结果中获取有用数据。
优选地,所述参数转换计算为数值计算、逻辑判断、记录用例执行进度和统计用例执行次数中的一种或多种组合。
优选地,在所述将所述标准化输入数据转化为所述后置单元测试用例可接受的形式之前,还包括:
将预设的数据追加或更新到所述后置单元测试用例的标准化输入数据中。
优选地,在所述对前置单元测试用例的输出数据进行标准化处理之前,还包括:
接收测试人员通过图形化操作输入的用例执行顺序指令,调整单元测试用例的执行顺序,以确定所述前置单元测试用例和所述后置单元测试用例。
优选地,在所述从所述标准化输出数据中抽取有用数据之前,还包括:
对所述前置单元测试用例的标准化输出数据进行解析并以图形化的方式进行显示,接收测试人员通过图形化操作输入的抽取参数指令,从所述标准化输出数据的解析结果中选取需要抽取的参数;
在所述对所述有用数据进行参数转换计算之前,还包括:
接收测试人员通过手动输入或者图形化操作输入的计算方式,设定参数转换所需的计算步骤;
在所述将所述计算结果填充到后置单元测试用例的标准化输入数据中之前,还包括:
对所述后置单元测试用例的标准化输入数据进行解析并以图形化的方式进行显示,接收测试人员的通过图形化操作输入的填充参数指令,从所述标准化输入数据的解析结果中选取需要填充的参数。
相应地,本发明还提供了一种集成测试用例的生成装置,包括:
输出标准化单元,用于对前置单元测试用例的输出数据进行标准化处理,将所述输出数据转换为预先设定的格式,获取标准化输出数据;
集成单元,用于从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充;其中,所述标准化输入数据的格式与所述标准化输出数据的格式相同;
输入标准化单元,用于将所述标准化输入数据转化为所述后置单元测试用例可接受的形式并输入到所述后置单元测试用例中。
优选地,所述预先设定的格式为xml、json、yaml、protobuf、msgpack、csv、ini、自定义二进制格式和自定义文本格式中的一种。
优选地,所述集成单元包括:
抽取单元,用于从所述标准化输出数据中抽取有用数据;
计算单元,用于对所述有用数据进行参数转换计算,获取计算结果;
填充单元,用于将所述计算结果填充到后置单元测试用例的标准化输入数据中。
优选地,所述抽取单元包括:
解析子单元,对所述标准化输出数据进行解析,获取所述标准化输出数据的解析结果;
提取子单元,根据预先设定的抽取参数进行数据提取,从所述标准化输出数据的解析结果中获取有用数据。
优选地,所述参数转换计算为数值计算、逻辑判断、记录用例执行进度和统计用例执行次数中的一种或多种组合。
优选地,所述集成单元还包括:
数据追加单元,将预设的数据追加或更新到所述后置单元测试用例的标准化输入数据中。
优选地,所述生成装置还包括图形化辅助单元;所述图形化辅助单元包括:
测试用例排序单元,用于接收测试人员通过图形化操作输入的用例执行顺序指令,调整单元测试用例的执行顺序,以确定所述前置单元测试用例和所述后置单元测试用例。
优选地,还包括图形化辅助单元;所述图形化辅助单元包括:
抽取参数选取单元,用于对所述前置单元测试用例的标准化输出数据进行解析并以图形化的方式进行显示,接收测试人员通过图形化操作输入的抽取参数指令,从所述标准化输出数据的解析结果中选取需要抽取的参数;
计算步骤设定单元,用于接收测试人员通过手动输入或者图形化操作输入的计算方式,设定参数转换所需的计算步骤;
填充参数选取单元,用于对所述后置单元测试用例的标准化输入数据进行解析并以图形化的方式进行显示,接收测试人员的通过图形化操作输入的填充参数指令,从所述标准化输入数据的解析结果中选取需要填充的参数。
本发明实施例通过对单元测试用例的输入数据和输出数据进行标准化处理,将单元测试用例的输入数据和输出数据标准化为统一的格式,从前置单元测试用例的标准化输出数据中抽取有用数据,并将其转化为后置单元测试用例的标准化输入数据输入到后置单元测试用例中,以生成集成测试用例。大大简化了集成测试用例的生成过程,降低了生成集成测试用例的复杂度,有利于提高集成测试用例的生成效率。本发明通过对旧有的单元测试用例进行复用,仅在原有的逻辑上新增了系统集成后的测试逻辑,降低了测试用例的编写成本,避免了从头编写测试用例带来的测试逻辑不一致的问题,增强了集成测试用例的可靠性。
进一步地,本发明还可以通过图形化的方式实现,集成测试用例可通过选择、拖拽等图形化操作生成,简化了集成测试用例的生成步骤,同时方便了用例的管理与维护。
附图说明
图1是本发明提供的集成测试用例的生成方法的一个实施例的流程图;
图2是如图1所示实施提供的步骤S2的流程图;
图3是本发明提供的集成测试用例的生成装置的一个实施例的结构图;
图4是本发明提供的集成测试用例的生成装置的另一个实施例的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明提供的集成测试用例的生成方法的一个实施例的流程图。
如图1所示,所述集成测试用例的生成方法,包括步骤S1~S3:
S1,对前置单元测试用例的输出数据进行标准化处理,将所述输出数据转换为预先设定的格式,获取标准化输出数据。
其中,本发明实施例中所述标准化处理为将输出数据转换成预先设定的数据格式和形式,可通过预先编写的输出标准化单元实现。所述预先设定的格式可以为xml格式或者json格式,需要说明的是采用xml格式或者json格式仅是本发明的一种优选实施方式,本领域技术人员还可以根据实际需要选择其他自描述格式,如:yaml、protobuf、msgpack、csv、ini、自定义二进制格式和自定义文本格式等。在具体实施当中,前置单元测试用例接收输入数据后通过执行自身的逻辑并输出用例的执行结果,即输出数据。各单元测试用例输出数据的形式不尽相同,有的以函数或模块的调用返回的形式给出,有的以操作系统标准输出的形式给出,有的则以日志文件或测试报告文件的形式给出。本发明通过将单元测试用例的输入输出数据转换成统一的自描述格式,使得前置单元测试用例和后置单元测试用例的输出输入对接变得简单,也有利于图形化辅助单元对输入输出数据的自动解析,为通过图形化界面实现集成测试用例的生成提供基础。
S2,从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充。其中,所述标准化输入数据的格式与所述标准化输出数据的格式相同。
在实际操作中,可通过以下方式从所述标准化输出数据中抽取有用数据:
对所述标准化输出数据进行解析,获取所述标准化输出数据的解析结果。
根据预先设定的抽取参数进行数据提取,从所述标准化输出数据的解析结果中获取有用数据。
如图2所示,在具体实施当中,所述步骤S2包括以下步骤:
S21,从所述标准化输出数据中抽取有用数据。
S22,对所述有用数据进行参数转换计算,获取计算结果。
S23,将所述计算结果填充到后置单元测试用例的标准化输入数据中。
在实际应用当中,某些后置单元测试用例测试所需的输入数据无法从前置单元测试用例的输出数据中直接抽取,而需要先对抽取的有用数据进行一定的计算,以进行参数转换,将抽取的有用数据转换成后置单元测试用例进行测试所需的输入数据。具体地,所述参数转换计算可以为数值计算、逻辑判断、记录用例执行进度和统计用例执行次数中的一种或多种组合。此外,还可以根据预设条件选择后置单元测试用例,或者在必要时停止后置单元测试用例的执行以结束整个集成测试用例,又或者触发并等待多个后置单元测试用例的执行并对这些后置单元测试用例的输出进行汇总、二次判断等。应当说明的是,以上方式仅为本发明的部分计算方式,本领域技术人员可以理解本发明还可以采用其他方式进行计算以将从前置单元测试用例抽取的数据转换成后置单元测试用例执行所需的输入数据,在没有作出创造性劳动前提下所获得的所有其他方式,均应视为本发明的保护范围。
进一步地,后置单元测试用例往往需要多个输入参数,从前置单元测试用例的输出数据中获取的数据可能无法完全满足后置单元测试用例的输入数据需求。因此,后置单元测试用例除了需要从前置单元测试用例的输出数据中抽取数据外,还可能需要额外的输入数据,本发明还可以通过直接将预设的数据追加或更新到所述后置单元测试用例的标准化输入数据中,以保证后置单元测试用例的正常执行。
本发明实施例的一种具体应用场景如下:某即时通信系统拥有登陆与好友两个模块,登陆模块的单元测试用例中拥有验证登陆是否成功的单元测试用例A,好友模块的单元测试用例中拥有验证好友是否在线的单元测试用例B,现按照上述集成测试用例的生成方法利用单元测试用例A和单元测试用例B构造验证好友登陆时好友列表中好友在线状态是否正确的集成测试用例。
经过标准化处理后的单元测试用例A的输出数据为:
其中,result表示单元测试用例A是否执行成功,info.state表示用户当前的在线状态,所述在线状态包括“online”(在线)、“busy”(忙碌)、“leave”(离开)和“offline”(离线)等。
根据步骤S21~S23生成集成测试用例的配置文件如下:
[{
"fetch":"info.state",
"calc":"state2online",
"push":"is_online"
},{
"params":"{'friend':'user1'}"
}]
本实施例中使用json格式作为配置文件的格式,该配置文件中包含一个json数组,数组中包含两个元素。
第一个元素表示执行一次“抽取-计算-填充”操作,抽取的内容为单元测试用例A输出数据中的“info.state”,计算方式由函数“state2online”指定,并在计算后将函数返回填充到单元测试用例B的输入数据“is_online”中。若使用python来实现state2online函数,可将其定义为:
第二个元素表示直接在单元测试用例B的标准化输入数据中添加"{'friend':'user1'}"。
由上述举例中可以看出,参数转换的计算仅由state2online中的代码指定,而其余逻辑主要为数据的抽取和填充操作,在实际应用当中,这部分逻辑可直接通过选取抽取参数和填充参数的方式来自动生成。测试脚本编写过程中,数据的抽取与填充操作与测试核心逻辑关系不大,并且由于测试过程中需要处理各种异常情况,代码冗余且易出错。本发明可通过使用配置文件来自动生成测试脚本,大大减小了出错的机率,仅需要通过对配置文件进行修改,即可对各单元测试用例之间的逻辑关系进行变更,便于对集成测试用例的管理。
获取得到经过标准化处理的单元测试用例B的标准化输入数据如下:
其中,单元测试用例B的标准化输入数据中friend表示用户的唯一标识,is_online表示好友的预期在线状态,所述预期在线状态包括“true”(在线)和“false”(离线)。
S3,将所述标准化输入数据转化为所述后置单元测试用例可接受的形式并输入到所述后置单元测试用例中。
在具体实施当中,标准化输入数据需要转化为后置单元测试用例可接受的形式才能输入到后置单元测试用例中,不同单元测试用例对输入数据的格式、方式和来源等要求往往不同,所述后置单元测试用例的可接受的输入数据可以为操作系统的标准输入,或者用例执行所依赖的数据文件,又或者数据库中的数据项,甚至是缓存系统中的缓存内容等。
在具体实施当中,可通过重复上述步骤S1~S3,对多个旧有的单元测试用例进行合理的组合,生成面向集成系统的集成测试用例。所述单元测试用例是开发人员进行冒烟测试或测试人员对系统模块进行单元测试时积累下来的旧有测试用例,在制定出通用的输入输出标准后,即可由各单元测试用例的原负责人编写各单元测试用例的输入标准化单元和输出标准化单元,通过所述输入标准化和所述输出标准化单元对单元测试用例的输入输出数据进行标准化处理,使得各单元测试用例可接受标准化的输入数据,并可输出标准化的输出数据。
本发明通过对单元测试用例的输入数据和输出数据进行标准化处理,将单元测试用例的输入数据和输出数据标准化为统一的格式,从前置单元测试用例的标准化输出数据中抽取有用数据,并将其转化为后置单元测试用例的标准化输入数据输入到后置单元测试用例中,以生成集成测试用例。大大简化了集成测试用例的生成步骤,降低了生成集成测试用例的复杂度,有利于提高集成测试用例的生成效率。本发明通过对旧有的单元测试用例进行复用,仅在原有的逻辑上新增了系统集成后的测试逻辑,降低了测试用例的编写成本,避免了从头编写测试用例带来的测试逻辑不一致的问题,增强了集成测试用例的可靠性。
更进一步地,本发明实施例还可以通过图形化界面操作的方式实现。所述图形化界面包括操作系统终端、基于图形基础类库开发的PC端应用,及web应用等。
在步骤S1之前,所述测试用例的生成方法还包括:
接收测试人员通过图形化操作输入的用例执行顺序指令,调整单元测试用例的执行顺序,以确定所述前置单元测试用例和所述后置单元测试用例。
所述前置单元测试用例和所述后置单元测试用例的区别仅在于执行顺序的先后,当组成不同的集成测试用例时,可能因单元测试用例的执行顺序改变而进行相应调整,所述前置和后置为相对性的,某一单元测试用例相对于一个单元测试用例为前置单元测试用例,但相对于另一单元测试用例则可能为后置单元测试用例。一个前置单元测试用例可以与一个或多个后置单元测试用例同时连接,同理地,一个后置单元测试用例也可以与一个或多个前置单元测试用例同时连接。在具体实施当中,可将旧有的各单元测试用例在图形化界面中进行显示,测试人员通过点击、拖拽等图形化操作方式,快速调整各单元测试用例的执行顺序。
在步骤S21之前,还包括:
对所述前置单元测试用例的标准化输出数据进行解析并以图形化的方式进行显示,接收测试人员通过图形化操作输入的抽取参数指令,从所述标准化输出数据的解析结果中选取需要抽取的参数。
标准化输出数据为统一格式的数据,图形化辅助单元仅需根据其格式采用相应的协议对其进行解析即可获取其中的具体数据内容,在所述步骤S21中,可根据选取的抽取参数,从所述标准化输出数据中抽取有用数据。
在所述步骤S22之前,还包括:
接收测试人员通过手动输入或者图形化操作输入的计算方式,设定参数转换所需的计算步骤。
在具体实施当中,可通过选择内置的计算单元或者编写新的计算单元来处理从所述输出数据中抽取的有用数据,在所述步骤S22中,可根据设定的计算方式,对所述有用数据进行参数转换计算,获取计算结果。
在所述步骤S23之前,还包括:
对所述后置单元测试用例的标准化输入数据进行解析并以图形化的方式进行显示,接收测试人员的通过图形化操作输入的填充参数指令,从所述标准化输入数据的解析结果中选取需要填充的参数。为所述计算结果指定填充的参数,例如填充的键值名称。
根据测试人员的选择,为所述计算结果指定填充参数。在所述步骤S23中,可根据选取的填充参数,将所述计算结果填充到后置单元测试用例的标准输入数据中。
本发明实施例提供的集成测试用例生成方法可通过选择、拖拽等图形化操作生成,统一并简化了集成测试用例的生成步骤,同时方便了用例的管理与维护。
参见图3,是本发明提供的集成测试用例生成装置的一个实施例的装置结构图。本实施例与图1所示实施例的基本原理一致,本实施例未详述之处可参见图1所示实施例中的相关描述。
如图3所示,所述集成测试用例的生成装置,包括:
输出标准化单元31,用于对前置单元测试用例的输出数据进行标准化处理,将所述输出数据转换为预先设定的格式,获取标准化输出数据。
集成单元32,用于从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充。其中,所述标准化输入数据的格式与所述标准化输出数据的格式相同。
输入标准化单元33,用于将所述标准化输入数据转化为所述后置单元测试用例可接受的形式并输入到所述后置单元测试用例中。
在具体实施当中,所述预先设定的格式为xml、json、yaml、protobuf、msgpack、csv、ini、自定义二进制格式和自定义文本格式中的一种。
如图4所示,在具体实施当中,所述集成单元32包括:
抽取单元321,用于从所述标准化输出数据中抽取有用数据。
计算单元322,用于对所述有用数据进行参数转换计算,获取计算结果。
填充单元323,用于将所述计算结果填充到后置单元测试用例的标准化输入数据中。
所述抽取单元321包括:
解析子单元,对所述标准化输出数据进行解析,获取所述标准化输出数据的解析结果。
提取子单元,根据预先设定的抽取参数进行数据提取,从所述标准化输出数据的解析结果中获取有用数据。
所述参数转换计算为数值计算、逻辑判断、记录用例执行进度和统计用例执行次数中的一种或多种组合。此外,在具体实施当中,还可以根据预设条件选择后置单元测试用例,或者在必要时停止后置单元测试用例的执行以结束整个集成测试用例,又或者触发并等待多个后置单元测试用例的执行并对这些后置单元测试用例的输出数据进行汇总、二次判断等。
图中虽未画出,但在具体实施当中,所述集成单元还可以进一步包括:
数据追加单元,将预设的数据追加或更新到所述后置单元测试用例的标准化输入数据中。
所述集成测试用例的生成装置还包括图形化辅助单元34。所述图形化辅助单元34包括:
测试用例排序单元341,用于接收测试人员通过图形化操作输入的用例执行顺序指令,调整单元测试用例的执行顺序,以确定所述前置单元测试用例和所述后置单元测试用例。
所述图形化辅助单元34还包括:
抽取参数选取单元342,用于对所述前置单元测试用例的标准化输出数据进行解析并以图形化的方式进行显示,接收测试人员通过图形化操作输入的抽取参数指令,从所述标准化输出数据的解析结果中选取需要抽取的参数。
计算步骤设定单元343,用于接收测试人员通过手动输入或者图形化操作输入的计算方式,设定参数转换所需的计算步骤。
填充参数选取单元344,用于对所述后置单元测试用例的标准化输入数据进行解析并以图形化的方式进行显示,接收测试人员的通过图形化操作输入的填充参数指令,从所述标准化输入数据的解析结果中选取需要填充的参数。
此外,所述图形化辅助单元还负责记录和显示各单元测试用例执行过程中的输入、输出及中间计算结果。
由于集成单元仅接受经过标准化的输入,且仅输出经过标准化的结果,图形化辅助单元甚至可以通过动态解析脚本执行过成中的输入内容,辅助测试人员定制配置集成单元。当测试人员定制集成单元时,图形化辅助单元可以通过执行前置单元测试用例来获得前置单元测试用例的标准化输出数据,解析所述标准化输出数据并以图形化的形式展示给测试人员,测试人员通过在图形化界面中选择需要的数据来定制配置,从而使测试人员无需编写与修改测试用例脚本即可完成测试用例的创建、更新与维护。
综上所述,本发明实施例提供的集成测试用例的生成方法和装置,通过对单元测试用例的输入数据和输出数据进行标准化处理,将单元测试用例的输入数据和输出数据标准化为统一的格式,从前置单元测试用例的标准化输出数据中抽取有用数据,并将其转化为后置单元测试用例的标准化输入数据输入到后置单元测试用例中,以生成集成测试用例。大大简化了集成测试用例的生成步骤,降低了生成集成测试用例的复杂度,有利于提高集成测试用例的生成效率。本发明通过对旧有的单元测试用例进行复用,仅在原有的逻辑上新增了系统集成后的测试逻辑,降低了测试用例的编写成本,避免了从头编写测试用例带来的测试逻辑不一致的问题,增强了集成测试用例的可靠性。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (16)

1.一种集成测试用例的生成方法,其特征在于,包括:
对前置单元测试用例的输出数据进行标准化处理,将所述输出数据转换为预先设定的格式,获取标准化输出数据;
从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充;其中,所述标准化输入数据的格式与所述标准化输出数据的格式相同;
将所述标准化输入数据转化为所述后置单元测试用例可接受的形式并输入到所述后置单元测试用例中。
2.如权利要求1所述的集成测试用例的生成方法,其特征在于,所述预先设定的格式为xml、json、yaml、protobuf、msgpack、csv、ini、自定义二进制格式和自定义文本格式中的一种。
3.如权利要求1所述的集成测试用例的生成方法,其特征在于,所述从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充,包括:
从所述标准化输出数据中抽取有用数据;
对所述有用数据进行参数转换计算,获取计算结果;
将所述计算结果填充到后置单元测试用例的标准化输入数据中。
4.如权利要求1所述的集成测试用例的生成方法,其特征在于,所述从所述标准化输出数据中抽取有用数据,具体为:
对所述标准化输出数据进行解析,获取所述标准化输出数据的解析结果;
根据预先设定的抽取参数进行数据提取,从所述标准化输出数据的解析结果中获取有用数据。
5.如权利要求3所述的集成测试用例的生成方法,其特征在于,所述参数转换计算为数值计算、逻辑判断、记录用例执行进度和统计用例执行次数中的一种或多种组合。
6.如权利要求1~5任一项所述的集成测试用例的生成方法,其特征在于,在所述将所述标准化输入数据转化为所述后置单元测试用例可接受的形式之前,还包括:
将预设的数据追加或更新到所述后置单元测试用例的标准化输入数据中。
7.如权利要求1~5任一项所述的集成测试用例的生成方法,其特征在于,在所述对前置单元测试用例的输出数据进行标准化处理之前,还包括:
接收测试人员通过图形化操作输入的用例执行顺序指令,调整单元测试用例的执行顺序,以确定所述前置单元测试用例和所述后置单元测试用例。
8.如权利要求3所述的集成测试用例的生成方法,其特征在于,在所述从所述标准化输出数据中抽取有用数据之前,还包括:
对所述前置单元测试用例的标准化输出数据进行解析并以图形化的方式进行显示,接收测试人员通过图形化操作输入的抽取参数指令,从所述标准化输出数据的解析结果中选取需要抽取的参数;
在所述对所述有用数据进行参数转换计算之前,还包括:
接收测试人员通过手动输入或者图形化操作输入的计算方式,设定参数转换所需的计算步骤;
在所述将所述计算结果填充到后置单元测试用例的标准化输入数据中之前,还包括:
对所述后置单元测试用例的标准化输入数据进行解析并以图形化的方式进行显示,接收测试人员的通过图形化操作输入的填充参数指令,从所述标准化输入数据的解析结果中选取需要填充的参数。
9.一种集成测试用例的生成装置,其特征在于,包括:
输出标准化单元,用于对前置单元测试用例的输出数据进行标准化处理,将所述输出数据转换为预先设定的格式,获取标准化输出数据;
集成单元,用于从所述标准化输出数据中抽取有用数据,根据所述有用数据生成后置单元测试用例的标准化输入数据并进行对应的数据填充;其中,所述标准化输入数据的格式与所述标准化输出数据的格式相同;
输入标准化单元,用于将所述标准化输入数据转化为所述后置单元测试用例可接受的形式并输入到所述后置单元测试用例中。
10.如权利要求9所述的集成测试用例的生成装置,其特征在于,所述预先设定的格式为xml、json、yaml、protobuf、msgpack、csv、ini、自定义二进制格式和自定义文本格式中的一种。
11.如权利要求9所述的集成测试用例的生成装置,其特征在于,所述集成单元包括:
抽取单元,用于从所述标准化输出数据中抽取有用数据;
计算单元,用于对所述有用数据进行参数转换计算,获取计算结果;
填充单元,用于将所述计算结果填充到后置单元测试用例的标准化输入数据中。
12.如权利要求11所述的集成测试用例的生成装置,其特征在于,所述抽取单元包括:
解析子单元,对所述标准化输出数据进行解析,获取所述标准化输出数据的解析结果;
提取子单元,根据预先设定的抽取参数进行数据提取,从所述标准化输出数据的解析结果中获取有用数据。
13.如权利要求11述的集成测试用例的生成装置,其特征在于,所述参数转换计算为数值计算、逻辑判断、记录用例执行进度和统计用例执行次数中的一种或多种组合。
14.如权利要求9~13任一项所述的集成测试用例的生成装置,其特征在于,所述集成单元还包括:
数据追加单元,将预设的数据追加或更新到所述后置单元测试用例的标准化输入数据中。
15.如权利要求9~13任一项所述的集成测试用例的生成装置,其特征在于,还包括图形化辅助单元;所述图形化辅助单元包括:
测试用例排序单元,用于接收测试人员通过图形化操作输入的用例执行顺序指令,调整单元测试用例的执行顺序,以确定所述前置单元测试用例和所述后置单元测试用例。
16.如权利要求11任一项所述的集成测试用例的生成装置,其特征在于,还包括图形化辅助单元;所述图形化辅助单元包括:
抽取参数选取单元,用于对所述前置单元测试用例的标准化输出数据进行解析并以图形化的方式进行显示,接收测试人员通过图形化操作输入的抽取参数指令,从所述标准化输出数据的解析结果中选取需要抽取的参数;
计算步骤设定单元,用于接收测试人员通过手动输入或者图形化操作输入的计算方式,设定参数转换所需的计算步骤;
填充参数选取单元,用于对所述后置单元测试用例的标准化输入数据进行解析并以图形化的方式进行显示,接收测试人员的通过图形化操作输入的填充参数指令,从所述标准化输入数据的解析结果中选取需要填充的参数。
CN201510696561.4A 2015-10-23 2015-10-23 一种集成测试用例的生成方法和装置 Active CN105224461B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510696561.4A CN105224461B (zh) 2015-10-23 2015-10-23 一种集成测试用例的生成方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510696561.4A CN105224461B (zh) 2015-10-23 2015-10-23 一种集成测试用例的生成方法和装置

Publications (2)

Publication Number Publication Date
CN105224461A true CN105224461A (zh) 2016-01-06
CN105224461B CN105224461B (zh) 2018-01-26

Family

ID=54993446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510696561.4A Active CN105224461B (zh) 2015-10-23 2015-10-23 一种集成测试用例的生成方法和装置

Country Status (1)

Country Link
CN (1) CN105224461B (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997322A (zh) * 2017-02-15 2017-08-01 网易宝有限公司 用于自动化测试的方法及设备
CN107832220A (zh) * 2017-11-15 2018-03-23 中国银行股份有限公司 一种生成测试脚本的方法以及系统
CN107844421A (zh) * 2017-10-31 2018-03-27 平安科技(深圳)有限公司 接口测试方法、装置、计算机设备和存储介质
CN107908544A (zh) * 2017-08-21 2018-04-13 中国平安人寿保险股份有限公司 一种用例测试方法及终端设备
CN107908541A (zh) * 2017-07-26 2018-04-13 平安壹钱包电子商务有限公司 接口测试方法、装置、计算机设备及存储介质
CN107918737A (zh) * 2016-10-10 2018-04-17 北京奇虎科技有限公司 压力测试数据的传输方法、装置及系统
CN108874662A (zh) * 2017-05-15 2018-11-23 丰田自动车株式会社 测试方法和存储程序的非暂态计算机可读介质
CN109196482A (zh) * 2016-05-24 2019-01-11 起元技术有限责任公司 用于处理网络中的关键数据的可执行逻辑
CN109522211A (zh) * 2018-09-29 2019-03-26 中国平安人寿保险股份有限公司 接口参数传递方法、装置、电子设备及存储介质
CN109871311A (zh) * 2017-12-04 2019-06-11 北京京东尚科信息技术有限公司 一种推荐测试用例的方法和装置
CN110941547A (zh) * 2019-10-12 2020-03-31 平安普惠企业管理有限公司 自动化测试用例库管理方法、装置、介质及电子设备
CN111338685A (zh) * 2018-12-19 2020-06-26 卓望数码技术(深圳)有限公司 一种公用组件配置方法、装置、设备和存储介质
CN112286810A (zh) * 2020-10-29 2021-01-29 中国航空工业集团公司洛阳电光设备研究所 基于用例数据和逻辑分离的用例快速生成的方法及系统
CN112579472A (zh) * 2020-12-30 2021-03-30 锐捷网络股份有限公司 测试用例的自动生成方法及装置
CN112783753A (zh) * 2019-11-07 2021-05-11 北京沃东天骏信息技术有限公司 流数据处理系统的测试方法和装置
CN114356785A (zh) * 2022-03-11 2022-04-15 中航信移动科技有限公司 一种数据处理方法、装置、电子设备及存储介质
CN117007897A (zh) * 2023-10-07 2023-11-07 山西省安装集团股份有限公司 一种应用于电仪实验室的电气设备测试系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610578B1 (en) * 2004-08-24 2009-10-27 The Math Works, Inc. Test manager for integrated test environments
CN103544107A (zh) * 2013-11-01 2014-01-29 深圳市通力科技开发有限公司 生成测试用例文档的方法及装置
CN104270455A (zh) * 2014-10-14 2015-01-07 税友软件集团股份有限公司 一种数据传输方法、装置及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610578B1 (en) * 2004-08-24 2009-10-27 The Math Works, Inc. Test manager for integrated test environments
CN103544107A (zh) * 2013-11-01 2014-01-29 深圳市通力科技开发有限公司 生成测试用例文档的方法及装置
CN104270455A (zh) * 2014-10-14 2015-01-07 税友软件集团股份有限公司 一种数据传输方法、装置及系统

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109196482B (zh) * 2016-05-24 2022-04-05 起元技术有限责任公司 用于处理网络中的关键数据的可执行逻辑
CN109196482A (zh) * 2016-05-24 2019-01-11 起元技术有限责任公司 用于处理网络中的关键数据的可执行逻辑
CN107918737B (zh) * 2016-10-10 2021-09-07 北京奇虎科技有限公司 压力测试数据的传输方法、装置及系统
CN107918737A (zh) * 2016-10-10 2018-04-17 北京奇虎科技有限公司 压力测试数据的传输方法、装置及系统
CN106997322A (zh) * 2017-02-15 2017-08-01 网易宝有限公司 用于自动化测试的方法及设备
CN108874662A (zh) * 2017-05-15 2018-11-23 丰田自动车株式会社 测试方法和存储程序的非暂态计算机可读介质
CN107908541A (zh) * 2017-07-26 2018-04-13 平安壹钱包电子商务有限公司 接口测试方法、装置、计算机设备及存储介质
CN107908544A (zh) * 2017-08-21 2018-04-13 中国平安人寿保险股份有限公司 一种用例测试方法及终端设备
CN107844421B (zh) * 2017-10-31 2020-08-14 平安科技(深圳)有限公司 接口测试方法、装置、计算机设备和存储介质
CN107844421A (zh) * 2017-10-31 2018-03-27 平安科技(深圳)有限公司 接口测试方法、装置、计算机设备和存储介质
CN107832220A (zh) * 2017-11-15 2018-03-23 中国银行股份有限公司 一种生成测试脚本的方法以及系统
CN109871311A (zh) * 2017-12-04 2019-06-11 北京京东尚科信息技术有限公司 一种推荐测试用例的方法和装置
CN109522211A (zh) * 2018-09-29 2019-03-26 中国平安人寿保险股份有限公司 接口参数传递方法、装置、电子设备及存储介质
CN111338685B (zh) * 2018-12-19 2023-11-21 卓望数码技术(深圳)有限公司 一种公用组件配置方法、装置、设备和存储介质
CN111338685A (zh) * 2018-12-19 2020-06-26 卓望数码技术(深圳)有限公司 一种公用组件配置方法、装置、设备和存储介质
CN110941547B (zh) * 2019-10-12 2024-01-16 中免日上互联网科技有限公司 自动化测试用例库管理方法、装置、介质及电子设备
CN110941547A (zh) * 2019-10-12 2020-03-31 平安普惠企业管理有限公司 自动化测试用例库管理方法、装置、介质及电子设备
CN110941547B8 (zh) * 2019-10-12 2024-03-22 中免日上互联科技有限公司 自动化测试用例库管理方法、装置、介质及电子设备
CN112783753A (zh) * 2019-11-07 2021-05-11 北京沃东天骏信息技术有限公司 流数据处理系统的测试方法和装置
CN112783753B (zh) * 2019-11-07 2024-04-12 北京沃东天骏信息技术有限公司 流数据处理系统的测试方法和装置
CN112286810A (zh) * 2020-10-29 2021-01-29 中国航空工业集团公司洛阳电光设备研究所 基于用例数据和逻辑分离的用例快速生成的方法及系统
CN112579472A (zh) * 2020-12-30 2021-03-30 锐捷网络股份有限公司 测试用例的自动生成方法及装置
CN112579472B (zh) * 2020-12-30 2024-04-16 锐捷网络股份有限公司 测试用例的自动生成方法及装置
CN114356785A (zh) * 2022-03-11 2022-04-15 中航信移动科技有限公司 一种数据处理方法、装置、电子设备及存储介质
CN114356785B (zh) * 2022-03-11 2022-05-20 中航信移动科技有限公司 一种数据处理方法、装置、电子设备及存储介质
CN117007897A (zh) * 2023-10-07 2023-11-07 山西省安装集团股份有限公司 一种应用于电仪实验室的电气设备测试系统
CN117007897B (zh) * 2023-10-07 2023-12-08 山西省安装集团股份有限公司 一种应用于电仪实验室的电气设备测试系统

Also Published As

Publication number Publication date
CN105224461B (zh) 2018-01-26

Similar Documents

Publication Publication Date Title
CN105224461A (zh) 一种集成测试用例的生成方法和装置
CN106940428B (zh) 芯片验证方法、装置及系统
CN103365770B (zh) 移动终端软件测试系统及软件测试方法
CN102880546B (zh) 一种基于xml数据库的软件集成测试方法及系统
CN102622234B (zh) 一种自动化测试用例的开发系统及开发方法
CN105512030B (zh) 一种基于卫星指令码字智能构造提升卫星测试效率的方法
CN108459951B (zh) 测试方法和装置
CN104978391A (zh) 用于自动化变电站设计及配置的系统和方法
CN105207366B (zh) 基于iec61850的配电终端即插即用模型配置工具及其实现方法
CN105450476A (zh) 一种回归测试系统及测试方法
CN102306122A (zh) 自动化测试方法及设备
CN110046091B (zh) 一种自动测试方法和装置
CN108519929B (zh) 一种智能变电站母线保护配置管控crc校验方法及装置
CN102508751A (zh) 数据设备可靠性自动化测试方法及系统
CN102495841A (zh) 一种电力系统监控方法以及相关装置
CN104731566A (zh) 集成开发环境测试装置、方法及系统
CN111597083B (zh) 智能终端的测试系统
CN103353857A (zh) 一种变电站综合监测单元的通信测试方法
CN113760730A (zh) 一种自动化测试的方法和装置
CN107247827B (zh) 基于机器学习的虚端子模型建模及自动连线方法
CN103777092A (zh) 一种基于云技术的继电保护测试系统及其方法
CN113747150B (zh) 一种基于容器云实现的视频服务系统的测试方法和系统
CN106405277B (zh) 核电站保护系统中主处理单元的试验装置和方法
CN103186465A (zh) 网页用户界面的浏览器兼容性测试方法和系统
CN107404405B (zh) 一种智能变电站iec61850一致性测试方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant