首页 / 专利库 / 计算机网络 / 软件缺陷 / 一种软件自动化测试的方法

一种软件自动化测试的方法

阅读:1033发布:2020-09-04

专利汇可以提供一种软件自动化测试的方法专利检索,专利查询,专利分析的服务。并且一种 软件 自动化测试的方法,首先定义用于测试软件的初始测试 用例 ,定义用于测试软件的测试报文。测试报文与被测软件提供的服务 接口 是对应的。然后测试报文参数化,将测试用例和测试报文关联起来,形成一个完整的测试用例。接着设计一套测试用例集,设计“流程测试用例”;最后执行单个测试用例,批量执行测试用例,检查测试结果,找出软件 缺陷 本 发明 可以将测试用例、测试报文及数据等有效地管理起来,提高测试用例的复用率;测试用例集在无人值守的情况下批量自动地运行,工具自动保存测试结果,测试执行效率大幅提高;特别是在冒烟测试、回归测试中最能发挥作用,可以代替人工做重复的测试,节约了时间和人 力 。,下面是一种软件自动化测试的方法专利的具体信息内容。

1.一种软件自动化测试的方法,其特征在于:该方法至少包括如下的步骤:
步骤1:定义用于测试软件的初始测试用例
步骤2:定义用于测试软件的测试报文。测试报文与被测软件提供的服务接口是对应的。步骤3:测试报文参数化;
步骤4:将测试用例和测试报文关联起来,形成一个完整的测试用例。
步骤5:设计一套测试用例集;
步骤6:设计“流程测试用例”;
步骤7:执行单个测试用例;
步骤8:批量执行测试用例;
步骤9:检查测试结果,找出软件缺陷

说明书全文

一种软件自动化测试的方法

技术领域

[0001] 本发明涉及一种开展软件自动化测试的方法,特别是指一种采用测试用例和测试报文相关联的技术来开展大批量的自动化测试的方法。

背景技术

[0002] 随着计算机软件在各行业中应用的不断深入,软件的质量保证显得越来越重要,软件测试作为软件质量保证的最重要手段也变得越来越重要。当前的软件测试主要采用手工测试的方法,这种方法已经不能满足对高复杂性和高可变性的软件进行测试的需要了,必须采用自动化测试的方法。
[0003] 目前的自动化测试一般是从用户界面开始的,采用脚本录制的方法进行,这种方法依赖于用户界面的稳定性,而在现实情况下,用户界面是最容易变化的部分,因此这种方法有很大的局限性。为了克服这一缺点,我们在这里提出了一个新方法,即测试用例和测试报文相关联的技术来开展大批量的自动化测试的方法。本方法适用于测试具有下列特征的软件系统:1)采用面向服务的体系结构(SOA),2)对外提供基于报文的接口,能够接受XML报文,并处理XML报文,调用相关的服务进行业务处理。在当前面向互联网和计算的背景下,这样的系统很普遍,所以本方法的适应面广。
[0004] 采用本发明,使用者只要维护一套测试用例和一套测试报文,并通过配置的方式将它们关联起来,就可以批量地执行测试用例,对被测软件进行自动化的测试,从而可以大幅提高软件测试的效率,减轻测试人员的劳动强度,对于需求和功能频繁变化的软件产品或系统来说作用更加明显。本方法简单易行,特别适合用于开展自动化的冒烟测试、回归测试、集成测试、系统测试和验收测试等。

发明内容

[0005] 本发明的主要目的在于提供一种软件自动化测试的方法,通过对测试用例和测试报文进行配置和对测试用例集进行定制,使得人们可以自动地测试软件,以提高软件测试的效率。
[0006] 本发明所述的方法至少包括如下的步骤。下面以税收征管系统作为案例来说明。
[0007] 步骤1:定义用于测试软件的初始测试用例。表-1是初始定义的营业税申报的测试用例。
[0008] 表-1初始定义的测试用例
[0009]
[0010]
[0011] 步骤2:定义用于测试软件的测试报文。测试报文与被测软件提供的服务接口是对应的。下面列出了一个测试报文,是调用营业税申报接口时需要的输入报文。测试报文的名称是“xml_sbzs_yyssb_saveSbb_001”,报文头中有报文对应的服务名称“name”、报文中文名称“cnName”,报文体中有NSRSBH(纳税人识别号)、SBRQ(申报日期)和申报表的其他数据。报文的具体格式及信息如下:
[0012]
[0013]
[0014]
[0015] 步骤3:测试报文参数化。
[0016] 报文参数化的内涵是在报文中设置变量,使得在给变量赋予不同的值之后,报文可以变为不同的报文。在本发明中,设置了两种报文参数化的方式。第一种方式是:,在运行时,系统遇到“?”号会让使用者输入数据。
[0017] 第二种方式是:?XTSPHM,在运行时,系统遇到“?XTSPHM”,会到上一个用例执行后返回的结果信息中查找“XTSPHM”的值,然后带回到此报文中。
[0018] 步骤4:将测试用例和测试报文关联起来,形成一个完整的测试用例。给表-1中的初始测试用例指定一个输入报文与之关联,用于代替手工输入数据,此输入报文将在执行此测试用例时被传递给被测试系统。关联后形成的完整测试用例如表-2所示。
[0019] 表-2一个完整的测试用例
[0020]
[0021]
[0022] 测试用例与测试报文的关联关系是:一个测试用例有一个测试报文与之对应,而参数化的测试报文可以对应多个测试用例,这样可以减少测试报文的数量和维护工作量。
[0023] 步骤5:设计一套测试用例集
[0024] 测试用例集是测试用例的集合。按上述步骤设计出一个个完整的测试用例,就形成了一套测试用例集。良好的测试用例集应该是完整的,覆盖系统的所有功能点;而且是按照类型、子系统或业务流程进行组织汇集的。表-3是税收申报的测试用例集的部分内容。
[0025] 表-3税收申报的测试用例集(部分)
[0026]
[0027]
[0028] 步骤6:设计“流程测试用例”
[0029] “流程测试用例”是按业务流程的顺序来组织的一组测试用例,用于测试一个业务流程。流程测试用例中的测试用例是从上述的测试用例集中选择出来的,并且按业务流程的顺序排列好了,而且对应的测试报文之间的参数化关系也设置好了。下面以营业税申报为例来说明流程测试用例的设计。此流程测试用例的目的是测试营业税从申报、开票、上解销号到入库销号的流程。从表-3中选取测试用例tc_yyssb_003、tc_ybkp_001、tc_sjxh_001、tc_sjxh_002、tc_sjxh_001、tc_rkxh_001,组成营业税申报的一个流程测试用例,如表-4所示。
[0030] 表-4营业税申报的流程测试用例
[0031]
[0032] 步骤7:执行单个测试用例。
[0033] 在执行单个测试用例时,从测试用例集中选择一个测试用例(例如tc_yyssb_001),把报文xml_sbzs_yyssb_saveSbb_001发送到被测系统,调用被测系统中的服务,系统执行服务,系统输出运行结果到一个统一的日志文件(LOG)中。
[0034] 步骤8:批量执行测试用例。
[0035] 在批量执行测试用例时,可以从测试用例集中任意选择多个测试用例来执行,但更多地是选择流程测试用例来执行。例如选择表-4中的营业税申报的流程测试用例执行,可以完成一个完整流程的测试。在批量执行测试用例时,会按照顺序执行每一个测试用例,而其中每一个测试用例的执行跟步骤7是一样的。
[0036] 步骤9:检查测试结果,找出软件缺陷
[0037] 系统会自动检查测试用例的执行状态(“通过”或“失败”),会将执行结果记录到统一的日志文件中,通过查看这些信息,可以找出相关的软件缺陷。如果做的好的话,可以根据预期结果定义自动化的检查程序,这跟具体的实施方式有关。

具体实施方式

[0038] 针对上述测试方法的实施办法是开发一个工具软件,将上述步骤和功能在工具软件中实现,例如可以用此工具软件来定义被测试系统、测试用例、测试报文、测试用例集、流程测试用例等,并将这些内容保存在数据库中,通过工具对这些内容进行维护和管理。此工具软件还应包含单个执行测试用例、批量执行测试用例、执行结果日志保存、测试结果比对等功能。
[0039] 在针对一个系统进行自动化测试之前,可以通过此工具软件把被测试系统的名称、所包含子系统、模、服务等信息进行录入和管理;然后将测试环境的信息,如服务器地址、使用协议等使用此软件进行配置;将被测服务的测试用例、测试报文等进行录入和管理起来。
[0040] 存入此工具软件的测试用例中,不仅包括测试用例的一般内容,还包括此测试用例相关的测试报文(XML格式),用作测试用例的输入数据。单个执行测试用例的功能是指,
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈