基于专家知识数据库的自动化测试装置及方法

文档序号:6502649阅读:147来源:国知局
基于专家知识数据库的自动化测试装置及方法
【专利摘要】本发明提出了基于专家知识数据库的自动化测试装置及方法。其中,所述方法包括:接收来自用户的测试启动指令,并基于所述测试启动指令以及专家知识数据库中的专家知识数据记录以及待测系统所针对的业务数据库中的记录构造由单个原子测试步骤构成的测试流程并向所述待测系统发送相应的测试指令和数据以启动测试过程;接收来自所述待测系统的应答结果并将所述应答结果存储到测试结果数据库中,以及基于所述待测系统的应答结果确定后续的测试流程并执行后续的测试过程。本发明所公开的基于专家知识数据库的自动化测试装置及方法能够基于专家知识数据库自动地执行测试过程。
【专利说明】基于专家知识数据库的自动化测试装置及方法

【技术领域】
[0001] 本发明涉及测试装置及方法,更具体地,涉及基于专家知识数据库的自动化测试 装置及方法。

【背景技术】
[0002] 目前,随着计算机和网络应用的日益广泛以及不同领域的业务种类的日益丰富, 对特定的业务应用(例如金融领域中的各种交易应用)执行测试过程以发现问题并确保业 务应用的正确运行变得越来越重要。
[0003] 现有的测试装置及方法的基本工作过程如下:测试者通过用户接口人工提交测 试数据并观察待测系统的应答结果,随后根据经验判断处理结果并根据业务规则确定下 一步要进行的测试步骤。
[0004] 然而,现有的测试装置及方法存在如下问题:由于需要频繁地进行人机交互和人 工判断,故测试效率较低且会导致测试结果的不确定性。此外,虽然有些测试工具能够设置 固定的测试流程实现一定的自动化,但是无法对测试流程中需要进行逻辑判断的分支进行 处理,即仍需通过人工判断测试中间结果来启动后续的测试流程,故测试效率较低且可扩 展性差。
[0005] 因此,存在如下需求:提供能够基于专家知识数据库自动地执行测试过程的测试 装置及方法。


【发明内容】

[0006] 为了解决上述现有技术方案所存在的问题,本发明提出了能够基于专家知识数据 库自动地执行测试过程的测试装置及方法。
[0007] 本发明的目的是通过以下技术方案实现的: 一种基于专家知识数据库的自动化测试装置,所述基于专家知识数据库的自动化测试 装置包括: 用户接口,所述用户接口接收用户在执行测试过程之前输入的专家知识并将所述专家 知识传送到专家知识处理模块,以及接收来自用户的测试启动指令,并将所述测试启动指 令传送到测试驱动模块; 专家知识处理模块,所述专家知识处理模块解析接收到的所述专家知识并根据预定格 式将所解析的专家知识组装成专家知识数据记录,以及随后将所述专家知识数据记录存储 到专家知识存储模块中; 推理模块,所述推理模块基于接收到的所述测试启动指令并根据专家知识处理模块中 的专家知识数据记录以及待测系统所针对的业务数据库中的记录构造由单个原子测试步 骤构成的测试流程并驱动所述测试驱动模块启动测试过程,所述推理模块进一步用于基于 接收到的来自所述测试驱动模块的测试返回指令确定后续的测试流程并驱动所述测试驱 动模块执行后续的测试过程; 测试驱动模块,所述测试驱动模块基于所述推理模块的驱动向所述待测系统发送相应 的测试指令和数据以启动测试过程以及执行所述推理模块所确定的后续的测试过程,所述 测试驱动模块进一步用于接收来自所述待测系统的应答结果并将所述应答结果存储到测 试结果存储模块中,以及在接收到来自所述待测系统的应答结果后向所述推理模块发送相 应的测试返回指令; 专家知识存储模块,所述专家知识处理模块用于存储所述专家知识数据记录; 测试结果存储模块,所述测试结果存储模块用于存储来自所述待测系统的应答结果。
[0008] 在上面所公开的方案中,优选地,所述推理模块以如下方式基于接收到的来自所 述测试驱动模块的测试返回指令确定后续的测试流程:(1)判断测试所针对的业务流程是 否完成;(2)如果测试所针对的业务流程已完成,则终止测试过程;(3)如果测试所针对的 业务流程未完成,则根据所述测试返回指令所对应的待测系统的应答结果、所述业务数据 库中对应的记录以及对应的专家知识数据记录综合地确定后续的测试步骤和测试参数,并 驱动所述测试驱动模块执行后续的测试过程。
[0009] 在上面所公开的方案中,优选地,所述推理模块进一步用于在测试过程全部完成 后根据相应的专家知识数据记录对测试结果存储模块中所存储的相应的应答结果进行评 估以获得测试结论,并将所述测试结论存储到所述测试结果存储模块中。
[0010] 在上面所公开的方案中,优选地,所述装置进一步包括解释器,所述解释器用于对 所述推理模块进行的推理过程进行解释和存储以跟踪和追溯推理路径。
[0011] 在上面所公开的方案中,优选地,所述用户接口能够基于用户指令显示所述测试 结论以及所跟踪和追溯的推理路径。
[0012] 在上面所公开的方案中,优选地,用户能够通过所述用户接口修正所述专家知识 数据记录和/或所使用的测试参数。
[0013] 本发明的目的也可以通过以下技术方案实现: 一种基于专家知识数据库的自动化测试方法,所述基于专家知识数据库的自动化测试 方法包括下列步骤: (A1)接收用户在执行测试过程之前输入的专家知识; (A2)解析所述专家知识并根据预定格式将所解析的专家知识组装成专家知识数据记 录,以及随后将所述专家知识数据记录存储到专家知识数据库中; (A3)接收来自用户的测试启动指令,并基于所述测试启动指令以及专家知识数据库中 的专家知识数据记录以及待测系统所针对的业务数据库中的记录构造由单个原子测试步 骤构成的测试流程并向所述待测系统发送相应的测试指令和数据以启动测试过程; (A4)接收来自所述待测系统的应答结果并将所述应答结果存储到测试结果数据库中, 以及基于所述待测系统的应答结果确定后续的测试流程并执行后续的测试过程。
[0014] 本发明所公开的基于专家知识数据库的自动化测试装置及方法具有以下优点: (1)由于能够根据专业知识数据库中的知识和前一步的测试结果来选择并执行后续的测试 案例,故使得整个测试流程智能化和自动化;(2)由于能够根据专家知识数据库自动生成 测试案例,故无需手工配置测试案例,故提高了测试效率并从而减少了测试时间;(3)由于 能够自动地根据专业知识数据库中的专家知识对测试结果进行分析和评估,故提高了评估 结果的准确性。

【专利附图】

【附图说明】
[0015] 结合附图,本发明的技术特征以及优点将会被本领域技术人员更好地理解,其 中: 图1是根据本发明的实施例的基于专家知识数据库的自动化测试装置的示意性结构 图; 图2是根据本发明的实施例的基于专家知识数据库的自动化测试方法的流程图。

【具体实施方式】
[0016] 图1是根据本发明的实施例的基于专家知识数据库的自动化测试装置的示意性 结构图。如图1所示,本发明所公开的基于专家知识数据库的自动化测试装置包括用户接 口 1、专家知识处理模块2、推理模块3、测试驱动模块5、专家知识存储模块6和测试结果存 储模块7。其中,所述用户接口 1用于接收用户(例如测试操作者)在执行测试过程之前输 入的专家知识(例如针对特定应用的业务规则和流程)并将所述专家知识传送到专家知识 处理模块2,以及接收来自用户的测试启动指令,并将所述测试启动指令传送到测试驱动模 块5。所述专家知识处理模块2解析接收到的所述专家知识并根据预定格式将所解析的专 家知识组装成专家知识数据记录(即标准化、结构化的数据记录形式),以及随后将所述专 家知识数据记录存储到专家知识存储模块6 (即专家知识数据库)中。所述推理模块3基于 接收到的所述测试启动指令并根据专家知识处理模块2中的专家知识数据记录(例如特定 应用的业务流程)以及待测系统所针对的业务数据库(其向所述推理模块3提供进行逻辑推 理的环境数据以及用于驱动测试的输入参数)中的记录构造由单个原子测试步骤构成的测 试流程(例如经组装的测试案例)并驱动所述测试驱动模块5启动测试过程,所述推理模块 3进一步用于基于接收到的来自所述测试驱动模块5的测试返回指令确定后续的测试流程 并驱动所述测试驱动模块5执行后续的测试过程。所述测试驱动模块5基于所述推理模块 3的驱动向所述待测系统发送相应的测试指令和数据以启动测试过程以及执行所述推理模 块3所确定的后续的测试过程,所述测试驱动模块5进一步用于接收来自所述待测系统的 应答结果并将所述应答结果存储到测试结果存储模块7中,以及在接收到来自所述待测系 统的应答结果后向所述推理模块3发送相应的测试返回指令。所述专家知识存储模块6用 于存储所述专家知识数据记录。所述测试结果存储模块7用于存储来自所述待测系统的应 答结果。
[0017] 优选地,在本发明所公开的基于专家知识数据库的自动化测试装置中,所述推理 模块3以如下方式基于接收到的来自所述测试驱动模块5的测试返回指令确定后续的测试 流程:(1)判断测试所针对的业务流程是否完成;(2)如果测试所针对的业务流程已完成, 则终止测试过程;(3)如果测试所针对的业务流程未完成,则根据所述测试返回指令所对 应的待测系统的应答结果、所述业务数据库中对应的记录以及对应的专家知识数据记录综 合地确定后续的测试步骤和测试参数,并驱动所述测试驱动模块5执行后续的测试过程。
[0018] 优选地,在本发明所公开的基于专家知识数据库的自动化测试装置中,所述推理 模块3进一步用于在测试过程全部完成后根据相应的专家知识数据记录(例如特定应用的 业务规则)对测试结果存储模块7中所存储的相应的应答结果进行评估以获得测试结论,并 将所述测试结论存储到所述测试结果存储模块7中。
[0019] 优选地,本发明所公开的基于专家知识数据库的自动化测试装置进一步包括解释 器4,所述解释器4用于对所述推理模块3进行的推理过程进行解释和存储以跟踪和追溯推 理路径。
[0020] 优选地,在本发明所公开的基于专家知识数据库的自动化测试装置中,所述用户 接口1能够基于用户指令显示所述测试结论以及所跟踪和追溯的推理路径。
[0021] 优选地,在本发明所公开的基于专家知识数据库的自动化测试装置中,用户能够 通过所述用户接口1修正所述专家知识数据记录和/或所使用的测试参数。
[0022] 示例性地,在金融领域中,针对交易支付应用,本发明所公开的基于专家知识数据 库的自动化测试装置中的针对业务规则的专家知识数据记录可以包括下列字段:一个或多 个测试交易数据字段(例如其值可以分别是原因码和原交易数据)、测试数据字段(例如其 值可以是"贷调交易")、测试结果应答码字段(例如其值可以是"9224-原因码不正确")和 测试案例字段(例如其值可以是"原交易数据不变发起原因码9601贷调")。
[0023] 由上可见,本发明所公开的基于专家知识数据库的自动化测试装置具有下列优 点:(1)由于能够根据专业知识数据库中的知识和前一步的测试结果来选择并执行后续的 测试案例,故使得整个测试流程智能化和自动化;(2)由于能够根据专家知识数据库自动 生成测试案例,故无需手工配置测试案例,故提高了测试效率并从而减少了测试时间;(3) 由于能够自动地根据专业知识数据库中的专家知识对测试结果进行分析和评估,故提高了 评估结果的准确性。
[0024] 图2是根据本发明的实施例的基于专家知识数据库的自动化测试方法的流程图。 如图2所示,本发明所公开的基于专家知识数据库的自动化测试方法包括下列步骤:(A1) 接收用户(例如测试操作者)在执行测试过程之前输入的专家知识(例如针对特定应用的业 务规则和流程);(A2)解析所述专家知识并根据预定格式将所解析的专家知识组装成专家 知识数据记录(即标准化、结构化的数据记录形式),以及随后将所述专家知识数据记录存 储到专家知识数据库中;(A3)接收来自用户的测试启动指令,并基于所述测试启动指令以 及专家知识数据库中的专家知识数据记录(例如特定应用的业务流程)以及待测系统所针 对的业务数据库(其提供进行逻辑推理的环境数据以及用于驱动测试的输入参数)中的记 录构造由单个原子测试步骤构成的测试流程(例如经组装的测试案例)并向所述待测系统 发送相应的测试指令和数据以启动测试过程;(A4)接收来自所述待测系统的应答结果并 将所述应答结果存储到测试结果数据库中,以及基于所述待测系统的应答结果确定后续的 测试流程并执行后续的测试过程。
[0025] 优选地,在本发明所公开的基于专家知识数据库的自动化测试方法中,在所述步 骤(A4)中以如下方式确定后续的测试流程并执行后续的测试过程:(1)判断测试所针对的 业务流程是否完成;(2)如果测试所针对的业务流程已完成,则终止测试过程;(3)如果测 试所针对的业务流程未完成,则根据所述待测系统的应答结果、所述业务数据库中对应的 记录以及对应的专家知识数据记录综合地确定后续的测试步骤和测试参数,并随后执行后 续的测试过程。
[0026] 优选地,本发明所公开的基于专家知识数据库的自动化测试方法进一步包括:在 测试过程全部完成后根据相应的专家知识数据记录(例如特定应用的业务规则)对测试结 果数据库中所存储的相应的应答结果进行评估以获得测试结论,并将所述测试结论存储到 所述测试结果数据库中。
[0027] 优选地,发明所公开的基于专家知识数据库的自动化测试方法进一步包括:对为 确定测试流程而进行的推理过程进行解释和存储以跟踪和追溯推理路径。
[0028] 优选地,本发明所公开的基于专家知识数据库的自动化测试方法进一步包括:基 于用户指令显示所述测试结论以及所跟踪和追溯的推理路径。
[0029] 优选地,本发明所公开的基于专家知识数据库的自动化测试方法进一步包括:用 户能够修正所述专家知识数据记录和/或所使用的测试参数。
[0030] 示例性地,在金融领域中,针对交易支付应用,本发明所公开的基于专家知识数据 库的自动化测试方法中的针对业务规则的专家知识数据记录可以包括下列字段:一个或多 个测试交易数据字段(例如其值可以分别是原因码和原交易数据)、测试数据字段(例如其 值可以是"贷调交易")、测试结果应答码字段(例如其值可以是"9224-原因码不正确")和 测试案例字段(例如其值可以是"原交易数据不变发起原因码9601贷调")。
[0031] 由上可见,本发明所公开的基于专家知识数据库的自动化测试方法具有下列优 点:(1)由于能够根据专业知识数据库中的知识和前一步的测试结果来选择并执行后续的 测试案例,故使得整个测试流程智能化和自动化;(2)由于能够根据专家知识数据库自动 生成测试案例,故无需手工配置测试案例,故提高了测试效率并从而减少了测试时间;(3) 由于能够自动地根据专业知识数据库中的专家知识对测试结果进行分析和评估,故提高了 评估结果的准确性。
[0032] 尽管本发明是通过上述的优选实施方式进行描述的,但是其实现形式并不局限于 上述的实施方式。应该认识到:在不脱离本发明主旨和范围的情况下,本领域技术人员可以 对本发明做出不同的变化和修改。
【权利要求】
1. 一种基于专家知识数据库的自动化测试装置,所述基于专家知识数据库的自动化测 试装置包括: 用户接口,所述用户接口接收用户在执行测试过程之前输入的专家知识并将所述专家 知识传送到专家知识处理模块,以及接收来自用户的测试启动指令,并将所述测试启动指 令传送到测试驱动模块; 专家知识处理模块,所述专家知识处理模块解析接收到的所述专家知识并根据预定格 式将所解析的专家知识组装成专家知识数据记录,以及随后将所述专家知识数据记录存储 到专家知识存储模块中; 推理模块,所述推理模块基于接收到的所述测试启动指令并根据专家知识处理模块中 的专家知识数据记录以及待测系统所针对的业务数据库中的记录构造由单个原子测试步 骤构成的测试流程并驱动所述测试驱动模块启动测试过程,所述推理模块进一步用于基于 接收到的来自所述测试驱动模块的测试返回指令确定后续的测试流程并驱动所述测试驱 动模块执行后续的测试过程; 测试驱动模块,所述测试驱动模块基于所述推理模块的驱动向所述待测系统发送相应 的测试指令和数据以启动测试过程以及执行所述推理模块所确定的后续的测试过程,所述 测试驱动模块进一步用于接收来自所述待测系统的应答结果并将所述应答结果存储到测 试结果存储模块中,以及在接收到来自所述待测系统的应答结果后向所述推理模块发送相 应的测试返回指令; 专家知识存储模块,所述专家知识处理模块用于存储所述专家知识数据记录; 测试结果存储模块,所述测试结果存储模块用于存储来自所述待测系统的应答结果。
2. 根据权利要求1所述的基于专家知识数据库的自动化测试装置,其特征在于,所述 推理模块以如下方式基于接收到的来自所述测试驱动模块的测试返回指令确定后续的测 试流程:(1)判断测试所针对的业务流程是否完成;(2)如果测试所针对的业务流程已完 成,则终止测试过程;(3)如果测试所针对的业务流程未完成,则根据所述测试返回指令所 对应的待测系统的应答结果、所述业务数据库中对应的记录以及对应的专家知识数据记录 综合地确定后续的测试步骤和测试参数,并驱动所述测试驱动模块执行后续的测试过程。
3. 根据权利要求2所述的基于专家知识数据库的自动化测试装置,其特征在于,所述 推理模块进一步用于在测试过程全部完成后根据相应的专家知识数据记录对测试结果存 储模块中所存储的相应的应答结果进行评估以获得测试结论,并将所述测试结论存储到所 述测试结果存储模块中。
4. 根据权利要求3所述的基于专家知识数据库的自动化测试装置,其特征在于,所述 装置进一步包括解释器,所述解释器用于对所述推理模块进行的推理过程进行解释和存储 以跟踪和追溯推理路径。
5. 根据权利要求4所述的基于专家知识数据库的自动化测试装置,其特征在于,所述 用户接口能够基于用户指令显示所述测试结论以及所跟踪和追溯的推理路径。
6. 根据权利要求5所述的基于专家知识数据库的自动化测试装置,其特征在于,用户 能够通过所述用户接口修正所述专家知识数据记录和/或所使用的测试参数。
7. -种基于专家知识数据库的自动化测试方法,所述基于专家知识数据库的自动化测 试方法包括下列步骤: (A1)接收用户在执行测试过程之前输入的专家知识; (A2)解析所述专家知识并根据预定格式将所解析的专家知识组装成专家知识数据记 录,以及随后将所述专家知识数据记录存储到专家知识数据库中; (A3)接收来自用户的测试启动指令,并基于所述测试启动指令以及专家知识数据库中 的专家知识数据记录以及待测系统所针对的业务数据库中的记录构造由单个原子测试步 骤构成的测试流程并向所述待测系统发送相应的测试指令和数据以启动测试过程; (A4)接收来自所述待测系统的应答结果并将所述应答结果存储到测试结果数据库中, 以及基于所述待测系统的应答结果确定后续的测试流程并执行后续的测试过程。
【文档编号】G06F17/30GK104142959SQ201310172596
【公开日】2014年11月12日 申请日期:2013年5月10日 优先权日:2013年5月10日
【发明者】郭弘强, 刘波, 李伟 申请人:中国银联股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1