CN104484267B - 一种测试系统及方法 - Google Patents
一种测试系统及方法 Download PDFInfo
- Publication number
- CN104484267B CN104484267B CN201410670460.5A CN201410670460A CN104484267B CN 104484267 B CN104484267 B CN 104484267B CN 201410670460 A CN201410670460 A CN 201410670460A CN 104484267 B CN104484267 B CN 104484267B
- Authority
- CN
- China
- Prior art keywords
- test
- test case
- case
- testing tool
- plan
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种测试系统及方法,该系统包括:测试用例管理单元、中间件单元、至少一个测试工具;所述测试用例管理单元,用于生成测试计划,将所述测试计划发送给中间件单元,其中,所述测试计划包括:测试用例、测试用例和测试工具的对应关系;所述中间件单元,用于接收所述测试计划,从所述测试计划中解析出所述测试用例和所述对应关系,根据所述对应关系将所述测试用例发送给对应的测试工具;所述测试工具,用于接收所述中间件单元发来的测试用例,根据所述测试用例进行测试,输出测试结果。通过本发明提供的一种测试系统及方法,能够提高测试系统的可扩展性。
Description
技术领域
本发明涉及测试技术领域,尤其涉及一种测试系统及方法。
背景技术
软件测试是指在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。测试技术从方式上可划分为手工测试、半自动化测试、自动化测试。手工测试的缺点在于:大量的重复性工作,容易使人产生心理厌倦,精确性、覆盖面无法得到充足的保证,同时效率和进度上也有所欠缺。自动化测试能够解决上述问题,从功能上可以将自动化测试技术分为用例管理平台和测试工具两部分。用例管理平台负责测试用例的管理、测试人员的管理、测试用例的跟踪、结果统计等功能,测试工具负责具体测试用例的执行。
目前常用的自动化测试平台包括以下几种:IBM Rational TestManager、HPQuality Center、TestLink。
IBM Rational TestManager是IBM公司旗下产品,IBM Rational TestManager中,测试用例以文件夹的形式进行分级管理,需要和IBM Rational的测试工具robot、functional相结合才能完成自动化测试使用。根据需要可进行功能测试或性能测试,虚拟测试机等,可以生成关于测试用例的需求覆盖率报告,以保证测试的完备性。
HP Quality Center是惠普公司旗下测试用例管理平台,提供了API(ApplicationProgramming Interface,应用程序编程接口)接口,它将一个项目测试周期细分成了各个模块,比如需求模块、测试计划模块、测试实验室模块、缺陷管理模块。把各个模块阶段集成到统一的平台上来,通过模块与模块之间的联系来控制项目测试流程的执行,以达到保证项目质量的目的。基本过程是:在需求模块中加入需求,在测试计划中根据需求编写测试用例,在测试实验室中执行测试用例,将测试执行过程发现的问题报告到缺陷模块,按照缺陷管理流程跟踪缺陷变化,直到缺陷被开发修复,在新版本中测试通过。
TestLink是基于web测试用例管理系统,主要功能是测试用例的创建、管理和执行,并且还提供了一些简单的统计功能。TestLink用于进行测试过程中的管理,通过使用TestLink提供的功能,可以将测试过程从测试需求、测试设计、到测试执行完整的管理起来,同时,它还提供了好多种测试结果的统计和分析,使我们能够简单的开始测试工作和分析测试结果。主要功能有:测试需求管理、测试用例管理、测试用例对测试需求的覆盖管理、测试计划的制定、测试用例的执行、大量测试数据的度量和统计功能。
通过上述描述可见,现有技术中的测试平台大多只能集成一种测试工具,即使部分测试平台可以集成测试工具,也只能集成某些特定工具,如果想要添加一种外部的测试工具,则需要修改平台代码,可扩展性较低。
发明内容
本发明提供了一种测试系统及方法,能够提高测试系统的可扩展性。
一方面,本发明提供了一种测试系统,包括:测试用例管理单元、中间件单元、至少一个测试工具;
所述测试用例管理单元,用于生成测试计划,将所述测试计划发送给中间件单元,其中,所述测试计划包括:测试用例、测试用例和测试工具的对应关系;
所述中间件单元,用于接收所述测试计划,从所述测试计划中解析出所述测试用例和所述对应关系,根据所述对应关系将所述测试用例发送给对应的测试工具;
所述测试工具,用于接收所述中间件单元发来的测试用例,根据所述测试用例进行测试,输出测试结果。
进一步地,所述测试用例管理单元包括:测试计划生成子单元,用于根据预先存储的测试用例和外部输入的所述对应关系生成测试计划。
进一步地,所述测试工具包括:
测试用例解析子单元,用于接收所述中间件单元发来的测试用例,解析所述测试用例,将解析出来的测试信息发送给对应的测试子单元;
测试子单元,用于接收所述测试用例解析单元发来的测试信息,根据所述测试信息进行测试。
进一步地,所述测试用例解析子单元,具体用于获取所述测试用例中的测试步骤,下载测试用例对应的测试脚本文件,将所述测试步骤和所述测试脚本文件发送给对应的测试子单元,其中,所述测试信息包括:所述测试步骤和所述测试脚本文件。
进一步地,所述中间件单元为面向对象中间件。
另一方面,本发明提供了一种测试方法,包括:
S1:测试用例管理单元生成测试计划,将所述测试计划发送给中间件单元,其中,所述测试计划包括:测试用例、测试用例和测试工具的对应关系;
S2:所述中间件单元接收所述测试计划,从所述测试计划中解析出所述测试用例和所述对应关系,根据所述对应关系将所述测试用例发送给对应的测试工具;
S3:每一个测试工具接收所述中间件单元发来的测试用例,根据所述测试用例进行测试,输出测试结果。
进一步地,所述S1包括:测试用例管理单元根据预先存储的测试用例和外部输入的所述对应关系生成测试计划。
进一步地,所述S3包括:
每一个测试工具接收所述中间件单元发来的测试用例,解析所述测试用例,根据解析出来的测试信息进行测试。
进一步地,所述S3,包括:
每一个测试工具获取所述测试用例中的测试步骤,下载测试用例对应的测试脚本文件,根据所述测试步骤和所述测试脚本文件进行测试,其中,所述测试信息包括:所述测试步骤和所述测试脚本文件。
进一步地,所述中间件单元为面向对象中间件。
通过本发明提供的一种测试系统及方法,通过中间件单元来传递测试用例管理单元和测试工具之间的信息,测试用例管理单元和测试工具只需针对中间件单元进行编程即可,提高了测试系统的可扩展性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种测试系统的结构示意图;
图2是本发明实施例提供的一种测试方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种测试系统,参见图1,该系统包括:测试用例管理单元101、中间件单元102、至少一个测试工具103;
所述测试用例管理单元101,用于生成测试计划,将所述测试计划发送给中间件单元,其中,所述测试计划包括:测试用例、测试用例和测试工具的对应关系;
所述中间件单元102,用于接收所述测试计划,从所述测试计划中解析出所述测试用例和所述对应关系,根据所述对应关系将所述测试用例发送给对应的测试工具;
测试工具103,用于接收所述中间件单元发来的测试用例,根据所述测试用例进行测试,输出测试结果。
通过本实施例提供的一种测试系统,通过中间件单元来传递测试用例管理单元和测试工具之间的信息,测试用例管理单元和测试工具只需针对中间件单元进行编程即可,提高了测试系统的可扩展性。
在一种可能的实现方式中,上述的测试用例管理单元还可以包括:用于存储测试用例的存储子单元,用于外部编辑测试用例的测试用例编辑子单元,用于外部选择测试用例的测试用例选择子单元、用于外部选择测试根据的测试工具选择子单元、用于外部上传测试脚本文件的上传子单元和用于外部输入测试时间和测试人员信息的输入子单元。用户可以通过选择测试用例和测试工具来建立测试用例与测试工具的对应关系。
所述测试用例管理单元101包括:测试计划生成子单元,用于根据预先存储的测试用例和外部输入的所述对应关系生成测试计划。测试计划中还可以包括测试时间和测试人员信息。
在一种可能的实现方式中,所述测试工具103包括:
测试用例解析子单元,用于接收所述中间件单元102发来的测试用例,解析所述测试用例,将解析出来的测试信息发送给对应的测试子单元;
测试子单元,用于接收所述测试用例解析单元发来的测试信息,根据所述测试信息进行测试。
其中,所述测试信息可以包括:所述测试步骤和所述测试脚本文件。所述测试用例解析子单元,具体用于获取所述测试用例中的测试步骤,下载测试用例对应的测试脚本文件,将所述测试步骤和所述测试脚本文件发送给对应的测试子单元,其中,所述测试信息包括:所述测试步骤和所述测试脚本文件。
在一种可能的实现方式中,测试用例管理单元101还用于保存测试用例对应的测试脚本文件,并将测试脚本文件的存储路径发送给中间件单元102;
中间件单元102,还用于接收并保存测试用例管理单元101发来的测试脚本文件的存储路径;
测试用例解析子单元,还用于从中间件单元102中获取测试脚本文件的存储路径,根据存储路径下载测试用例对应的测试脚本文件。
在一种可能的实现方式中,所述中间件单元为面向对象中间件。面向对象中间件是测试用例管理单元101与测试工具之间,传输数据信息与参数的桥梁。不同的测试工具开发语言、习惯均有不同,为了屏蔽这种不同,需要在测试用例管理单元和测试工具间定义一种标准接口。测试工具和测试用例管理单元间通讯都基于这种接口,达到方便扩展工具的目的。面向对象中间件是适用于异种环境的面向对象中间件平台,可以支持多种编程语言(c++、c#,java,php…)。只要测试用例管理单元和测试工具都采用面向对象中间件的接口,就可以实现互联互通。本实施例采用的面向对象中间件,消息传输如下:测试用例管理单元通过面向对象中间件发送TestPlanInfo消息到测试工具,测试工具完成测试后通过面向对象中间件返回TestCaseResult消息给用例平台、完成一次自动化测试。其中,本实施例的面向对象中间件可以是ZeroC公司的ICE(Internet Communications Engine)中间件。
另外,本实施例提供的系统还可以包括:存储单元,用于存储测试结果。
本实施例提供的系统还可以包括:分析单元,用于对测试结果进行分析。
需要说明的是:系统中的测试用例管理、测试计划管理、统计分析、用户管理以及测试工具执行完成后的测试结果等各种数据的保存和读取,都可以通过数据库完成。系统还可以包括:数据库单元,用于保存用户管理、用例管理、测试计划、测试用例、测试规范、测试结果、测试工具、等待执行用例等表,管理在操作过程中系统产生的数据。
本发明实施例还提供了一种测试方法,参见图2,该方法包括:
S1:测试用例管理单元生成测试计划,将所述测试计划发送给中间件单元,其中,所述测试计划包括:测试用例、测试用例和测试工具的对应关系;
S2:所述中间件单元接收所述测试计划,从所述测试计划中解析出所述测试用例和所述对应关系,根据所述对应关系将所述测试用例发送给对应的测试工具;
S3:每一个测试工具接收所述中间件单元发来的测试用例,根据所述测试用例进行测试,输出测试结果。
在一种可能的实现方式中,所述S1包括:测试用例管理单元根据预先存储的测试用例和外部输入的所述对应关系生成测试计划。
在一种可能的实现方式中,所述S3包括:
每一个测试工具接收所述中间件单元发来的测试用例,解析所述测试用例,根据解析出来的测试信息进行测试。
在一种可能的实现方式中,所述S3,包括:
每一个测试工具获取所述测试用例中的测试步骤,下载测试用例对应的测试脚本文件,根据所述测试步骤和所述测试脚本文件进行测试,其中,所述测试信息包括:所述测试步骤和所述测试脚本文件。
在一种可能的实现方式中,所述中间件单元为面向对象中间件。
本发明实施例提供了一种测试系统及方法,将测试用例管理单元和测试工具解耦合,双方面向中间件单元进行编程,只要符合中间件单元接口规范,就可各自完善其功能,自成一体并实现功能结合与信息通信。
本系统具有以下优点:
易维护:只要中间件单元不发生变化,测试用例管理单元或测试工具的改动不会影响到对方。
可扩展:新开发的测试工具只要符合中间件单元接口规范,就可以与测试用例管理单元联合应用,测试用例管理单元不需要任何修改。对测试工具的开发语言、运行环境没有任何要求。
跨平台:测试用例管理单元采用跨平台的脚本语言(例如j2ee)构建,可以实现一次开发、到处运行。
易操作:测试用例管理单元采用B/S架构开发、用户可以通过浏览器远程管理测试过程。特别适用于人力无法触及的危险环境和辐射严重的基站机房。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种测试系统,其特征在于,包括:测试用例管理单元、中间件单元、至少一个测试工具;
所述测试用例管理单元,用于生成测试计划,将所述测试计划发送给中间件单元,其中,所述测试计划包括:测试用例、测试用例和测试工具的对应关系;
所述中间件单元,用于接收所述测试计划,从所述测试计划中解析出所述测试用例和所述对应关系,根据所述对应关系将所述测试用例发送给对应的测试工具;
所述测试工具,用于接收所述中间件单元发来的测试用例,根据所述测试用例进行测试,输出测试结果;
所述测试用例管理单元还包括用于外部选择测试工具的测试工具选择子单元和用于外部选择测试用例的测试用例选择子单元。
2.根据权利要求1所述的系统,其特征在于,所述测试用例管理单元包括:测试计划生成子单元,用于根据预先存储的测试用例和外部输入的所述对应关系生成测试计划。
3.根据权利要求1所述的系统,其特征在于,所述测试工具包括:
测试用例解析子单元,用于接收所述中间件单元发来的测试用例,解析所述测试用例,将解析出来的测试信息发送给对应的测试子单元;
测试子单元,用于接收所述测试用例解析单元发来的测试信息,根据所述测试信息进行测试。
4.根据权利要求3所述的系统,其特征在于,所述测试用例解析子单元,具体用于获取所述测试用例中的测试步骤,下载测试用例对应的测试脚本文件,将所述测试步骤和所述测试脚本文件发送给对应的测试子单元,其中,所述测试信息包括:所述测试步骤和所述测试脚本文件。
5.根据权利要求1所述的系统,其特征在于,所述中间件单元为面向对象中间件。
6.一种测试方法,其特征在于,包括:
S1:测试用例管理单元外部选择测试工具和测试用例,生成测试计划,将所述测试计划发送给中间件单元,其中,所述测试计划包括:测试用例、测试用例和测试工具的对应关系;
S2:所述中间件单元接收所述测试计划,从所述测试计划中解析出所述测试用例和所述对应关系,根据所述对应关系将所述测试用例发送给对应的测试工具;
S3:每一个测试工具接收所述中间件单元发来的测试用例,根据所述测试用例进行测试,输出测试结果。
7.根据权利要求6所述的方法,其特征在于,所述S1包括:测试用例管理单元根据预先存储的测试用例和外部输入的所述对应关系生成测试计划。
8.根据权利要求6所述的方法,其特征在于,所述S3包括:
每一个测试工具接收所述中间件单元发来的测试用例,解析所述测试用例,根据解析出来的测试信息进行测试。
9.根据权利要求8所述的方法,其特征在于,所述S3,包括:
每一个测试工具获取所述测试用例中的测试步骤,下载测试用例对应的测试脚本文件,根据所述测试步骤和所述测试脚本文件进行测试,其中,所述测试信息包括:所述测试步骤和所述测试脚本文件。
10.根据权利要求6所述的方法,其特征在于,所述中间件单元为面向对象中间件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410670460.5A CN104484267B (zh) | 2014-11-20 | 2014-11-20 | 一种测试系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410670460.5A CN104484267B (zh) | 2014-11-20 | 2014-11-20 | 一种测试系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104484267A CN104484267A (zh) | 2015-04-01 |
CN104484267B true CN104484267B (zh) | 2018-05-01 |
Family
ID=52758811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410670460.5A Active CN104484267B (zh) | 2014-11-20 | 2014-11-20 | 一种测试系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104484267B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105354140B (zh) * | 2015-11-02 | 2018-09-25 | 上海聚力传媒技术有限公司 | 一种自动化测试的方法及系统 |
CN105893245A (zh) * | 2015-12-15 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种屏蔽不同测试工具运行差异的方法和装置 |
CN106771453B (zh) * | 2016-11-16 | 2020-10-02 | 广州视源电子科技股份有限公司 | 一种用于示波器的测试方法及装置 |
CN107678939A (zh) * | 2017-08-29 | 2018-02-09 | 苏州惠邦科信息技术有限公司 | Android终端仿真测试系统 |
CN107885660B (zh) * | 2017-10-31 | 2020-04-03 | 平安科技(深圳)有限公司 | 基金系统自动化测试管理方法、装置、设备及存储介质 |
CN109032925A (zh) * | 2018-06-26 | 2018-12-18 | 昆山睿力得软件技术有限公司 | 一种车载设备驱动软件自动化测试方法 |
CN109144799A (zh) * | 2018-08-14 | 2019-01-04 | 深圳壹账通智能科技有限公司 | 一体化测试方法、装置、计算机设备和存储介质 |
CN113778835A (zh) * | 2021-11-11 | 2021-12-10 | 广州粤芯半导体技术有限公司 | 压力测试方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212362A (zh) * | 2006-12-26 | 2008-07-02 | 中兴通讯股份有限公司 | 一种融合多类型测试工具的自动化测试装置及方法 |
EP2667306A2 (en) * | 2012-05-23 | 2013-11-27 | Sap Ag | Software systems testing interface |
CN103530231A (zh) * | 2013-10-12 | 2014-01-22 | 北京京东尚科信息技术有限公司 | 一种基于业务流程控制的应用程序测试方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8423962B2 (en) * | 2009-10-08 | 2013-04-16 | International Business Machines Corporation | Automated test execution plan generation |
-
2014
- 2014-11-20 CN CN201410670460.5A patent/CN104484267B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212362A (zh) * | 2006-12-26 | 2008-07-02 | 中兴通讯股份有限公司 | 一种融合多类型测试工具的自动化测试装置及方法 |
EP2667306A2 (en) * | 2012-05-23 | 2013-11-27 | Sap Ag | Software systems testing interface |
CN103530231A (zh) * | 2013-10-12 | 2014-01-22 | 北京京东尚科信息技术有限公司 | 一种基于业务流程控制的应用程序测试方法及系统 |
Non-Patent Citations (1)
Title |
---|
"基于面向对象的单元自动化测试工具研究";石燕;《山西建筑》;20070930;第33卷(第27期);第358-359页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104484267A (zh) | 2015-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104484267B (zh) | 一种测试系统及方法 | |
CN110018955B (zh) | 通过转换手动测试用例来生成自动化测试脚本 | |
CN102693183B (zh) | 一种实现软件自动化测试的方法及系统 | |
CN105045710B (zh) | 一种云计算环境下的自动化测试数据生成方法 | |
CN103365770B (zh) | 移动终端软件测试系统及软件测试方法 | |
US9489277B2 (en) | Application component testing | |
CN104268079B (zh) | 一种pos应用程序测试的方法及系统 | |
CN106095673A (zh) | 基于web接口的自动化测试方法及系统 | |
CN108345532A (zh) | 一种自动化测试用例生成方法和装置 | |
CN104199767B (zh) | 测试方法和装置 | |
CN107463362A (zh) | 基于多个Jenkins的持续部署的方法和系统 | |
CN105577463B (zh) | 一种基于通信协议的测试方法及其装置 | |
CN111158656B (zh) | 基于因果树法的测试代码生成方法及装置 | |
CN108182058A (zh) | 一种基于云平台的软件开发方法和云开发平台 | |
CN109491910A (zh) | 一种保护逻辑和控制逻辑的可视化仿真调试方法及系统 | |
CN105739481B (zh) | 工控软件的测试方法、装置及系统 | |
KR101587279B1 (ko) | Msc 입력을 위한 인터페이스를 갖는 소프트웨어 테스팅 장치 및 그 방법 | |
CN109271316A (zh) | 安卓设备及其自动化测试方法、存储器 | |
CN106201865A (zh) | 一种应用程序编程接口api测试方法、装置及终端设备 | |
CN111143228B (zh) | 基于决策表法的测试代码生成方法及装置 | |
CN110209565A (zh) | 一种元数据模型调试方法及其装置 | |
CN112527312A (zh) | 一种嵌入式系统的测试方法和测试装置 | |
Kim | Mobile applications software testing methodology | |
CN110489342A (zh) | 一种安卓应用测试方法、系统、装置及存储介质 | |
CN110309068A (zh) | 测试方法及相关设备 |
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 |