测试计划执行时间的估算方法及装置.pdf

上传人:000****221 文档编号:1277802 上传时间:2018-04-12 格式:PDF 页数:16 大小:404.38KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910164067.8

申请日:

2009.08.07

公开号:

CN101989228A

公开日:

2011.03.23

当前法律状态:

驳回

有效性:

无权

法律详情:

发明专利申请公布后的驳回IPC(主分类):G06F 11/36申请公布日:20110323|||实质审查的生效IPC(主分类):G06F 11/36申请日:20090807|||公开

IPC分类号:

G06F11/36

主分类号:

G06F11/36

申请人:

中兴通讯股份有限公司

发明人:

陆新华

地址:

518057 广东省深圳市南山区科技南路55号

优先权:

专利代理机构:

北京康信知识产权代理有限责任公司 11240

代理人:

余刚;吴孟秋

PDF下载: PDF下载
内容摘要

本发明提供了一种测试计划执行时间的估算方法,包括以下步骤:测试计划的执行客户端将已完成测试计划的执行信息导入数据库;根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数;根据测试脚本的执行时间参数估算本次测试计划的执行时间。本发明还提供了一种测试计划执行时间的估算装置,包括:导入模块;统计模块;计算模块。本发明克服了相关技术中的测试计划执行时间的估算方法采用人工方法需要花费较长时间且容易出错,造成对本次测试计划执行时间估算的准确性和效率较低,从而影响了本次测试计划的准确制定和高效执行的问题,从而提高了本次测试计划执行时间估算的准确性和效率,有利于本次测试计划的准确制定和高效执行。

权利要求书

1: 一种测试计划执行时间的估算方法, 其特征在于, 包括以下步骤 : 测试计划的执行客户端将已完成测试计划的执行信息导入数据库 ; 根据所述数据库中的所述执行信息统计所述测试计划的测试脚本的执行时间参数 ; 根据所述测试脚本的执行时间参数估算本次测试计划的执行时间。
2: 根据权利要求 1 所述的估算方法, 其特征在于, 将已完成测试计划的执行信息导入 数据库具体包括 : 收集所述执行信息 ; 检查所述执行信息是否有效 ; 将有效的所述执行信息中的测试计划、 测试场景和测试脚本导入所述数据库。
3: 根据权利要求 2 所述的估算方法, 其特征在于, 根据所述数据库中的所述执行信息 统计测试脚本的执行时间参数具体包括 : 从所述数据库收集所述测试计划、 所述测试场景和所述测试脚本 ; 读取所述测试脚本的执行时间参数。
4: 根据权利要求 3 所述的估算方法, 其特征在于, 在测试计划的执行客户端将已完成 测试计划的执行信息导入数据库之后还包括 : 接收用户对已导入的所述执行信息是否有效的确认 ; 根据所述确认修改所述执行信息的有效性标记。
5: 根据权利要求 4 所述的估算方法, 其特征在于, 从所述数据库收集所述测试计划、 所 述测试场景和所述测试脚本具体包括 : 从所述数据库收集被标记为有效的测试计划 ; 收集所述测试计划下被标记为有效的测试场景 ; 收集所述测试场景下被标记为有效的测试脚本。
6: 根据权利要求 3 或 5 所述的估算方法, 其特征在于, 根据所述测试脚本的执行时间参 数估算本次测试计划的执行时间具体包括 : 根据所述测试脚本的执行时间参数得到所述测试脚本的脚本预估执行时间参数 ; 将同一测试场景下的测试脚本的所述脚本预估执行时间参数进行累加得到所述同一 测试场景的场景预估执行时间 ; 将所述本次测试计划的测试场景的所述场景预估执行时间进行累加得到所述本次测 试计划的执行时间。
7: 根据权利要求 6 所述的估算方法, 其特征在于, 根据所述测试脚本的执行时间参数 得到所述测试脚本的脚本预估执行时间参数具体包括 : 根据预定脚本执行时间阈值对所述测试脚本的执行时间参数进行过滤 ; 根据过滤后的所述脚本执行时间计算所述测试脚本的执行时间参数的最小执行时间、 最大执行时间和平均执行时间 ; 根据预定算法对所述测试脚本的最小执行时间、 所述最大执行时间、 所述平均执行时 间以及历次执行时间进行计算, 得到所述测试脚本的脚本预估执行时间, 所述预定算法为 以下之一 : 中值算法、 均值算法、 黄金分割算法、 八二法则。
8: 根据权利要求 2 所述的估算方法, 其特征在于, 还包括 : 若所述数据库中不包括所述本次测试计划的测试脚本, 计算包括所述测试脚本的测试 2 场景下已知的测试脚本的脚本预估执行时间参数的算术平均值 ; 设置所述算术平均值与所述本次测试计划中所述测试脚本数量的乘积为所述测试场 景的场景预估执行时间 ; 将所述本次测试计划的测试场景的所述场景预估执行时间进行累加得到所述本次测 试计划的执行时间。
9: 根据权利要求 2 所述的估算方法, 其特征在于, 还包括 : 若所述数据库中不包括所述本次测试计划的测试场景, 计算包括所述测试场景的测试 计划下已知的测试场景的场景预估执行时间的算术平均值 ; 设置所述算术平均值与所述本次测试计划中所述测试场景数量的乘积为所述本次测 试计划的执行时间。
10: 一种测试计划执行时间的估算装置, 其特征在于, 包括 : 导入模块, 用于将已完成测试计划的执行信息导入数据库 ; 统计模块, 用于根据所述数据库中的所述执行信息统计所述测试计划的测试脚本的执 行时间参数 ; 计算模块, 用于根据所述测试脚本的执行时间参数估算本次测试计划的执行时间。
11: 根据权利要求 10 所述的估算装置, 其特征在于, 还包括 : 标记模块, 用于接收用户对已导入的所述执行信息是否有效的确认, 并根据所述确认 修改所述执行信息的有效性标记。

说明书


测试计划执行时间的估算方法及装置

    【技术领域】
     本发明涉及自动化测试领域, 具体而言, 涉及一种测试计划执行时间的估算方法及装置。 背景技术 自动化测试是使用软件来进行自动控制测试的输入、 执行、 输出及其他操作, 对实 际输出结果和预期输出结果进行自动比较, 并自动输出测试报告。自动化测试可执行一些 手工测试较难进行或不可能进行的测试, 可以更好地利用人力与设备资源, 而且测试执行 的结果一致性更好。
     随着自动化的深入, 用户对自动化的细节需求越来越多, 特别是对自动化测试过 程的监控越来越关注。在自动化测试执行计划制定时, 用户希望能够了解所涉及的测试场 景、 测试用例, 以及不同测试用例在不同测试场景下的执行时间、 测试计划下不同测试场景 的执行时间、 测试计划总的执行时间。
     相关技术提供了一种测试计划执行时间的估算方法, 该方法中对历次测试执行信 息的收集与录入、 对本次测试计划执行时间的估算均由人工手动完成。
     发明人发现相关技术中的测试计划执行时间的估算方法采用人工方法完成信息 收集与录入, 并根据该信息由人工进行测试计划执行时间的估算, 需要花费较长时间且容 易出错, 造成对本次测试计划执行时间估算的准确性和效率较低, 从而影响了本次测试计 划的准确制定和高效执行。
     发明内容
     本发明旨在提供一种测试计划执行时间的估算方法及装置, 能够解决相关技术中 的测试计划执行时间的估算方法采用人工方法完成信息收集与录入, 并根据该信息由人工 进行测试计划执行时间的估算, 需要花费较长时间且容易出错, 造成对本次测试计划执行 时间估算的准确性和效率较低, 从而影响了本次测试计划的准确制定和高效执行的问题。
     在本发明的实施例中, 提供了一种测试计划执行时间的估算方法, 包括以下步骤 : 测试计划的执行客户端将已完成测试计划的执行信息导入数据库 ; 根据数据库中的执行信 息统计测试计划的测试脚本的执行时间参数 ; 根据测试脚本的执行时间参数估算本次测试 计划的执行时间。
     优选地, 在上述估算方法中, 将已完成测试计划的执行信息导入数据库具体包括 : 收集执行信息 ; 检查执行信息是否有效 ; 将有效的执行信息中的测试计划、 测试场景和测 试脚本导入数据库。
     优选地, 在上述估算方法中, 根据数据库中的执行信息统计测试脚本的执行时间 参数具体包括 : 从数据库收集测试计划、 测试场景和测试脚本 ; 读取测试脚本的脚本执行 时间参数。
     优选地, 在上述估算方法中, 在测试计划的执行客户端将已完成测试计划的执行信息导入数据库之后还包括 : 接收用户对已导入的执行信息是否有效的确认 ; 根据确认修 改执行信息的有效性标记。
     优选地, 在上述估算方法中, 从数据库收集测试计划、 测试场景和测试脚本具体包 括: 从数据库收集被标记为有效的测试计划 ; 收集测试计划下被标记为有效的测试场景 ; 收集测试场景下被标记为有效的测试脚本。
     优选地, 在上述估算方法中, 根据测试脚本的执行时间参数估算本次测试计划的 执行时间具体包括 : 根据测试脚本的执行时间参数得到测试脚本的脚本预估执行时间参 数; 将同一测试场景下的测试脚本的脚本预估执行时间参数进行累加得到同一测试场景的 场景预估执行时间 ; 将与本次测试计划的测试计划下的测试场景的场景预估执行时间进行 累加得到本次测试计划的执行时间。
     优选地, 在上述估算方法中, 根据测试脚本的执行时间参数得到测试脚本的脚本 预估执行时间具体包括 : 根据预定脚本执行时间阈值对测试脚本的执行时间参数进行过 滤; 根据过滤后的脚本执行时间计算测试脚本的执行时间参数的最小执行时间、 最大执行 时间和平均执行时间 ; 根据预定算法对测试脚本的最小执行时间、 最大执行时间、 平均执行 时间以及历次执行时间进行计算, 得到测试脚本的脚本预估执行时间, 预定算法为以下之 一: 中值算法、 均值算法、 黄金分割算法、 八二法则。
     优选地, 在上述估算方法中, 还包括 : 若数据库中不包括本次测试计划的测试脚 本, 计算包括测试脚本的测试场景下已知的测试脚本的脚本预估执行时间参数的算术平均 值; 设置算术平均值与本次测试计划中测试脚本数量的乘积为测试场景的场景预估执行时 间; 将本次测试计划的测试场景的场景预估执行时间进行累加得到本次测试计划的执行时 间。
     优选地, 在上述估算方法中, 还包括 : 若数据库中不包括测试计划的测试场景, 计 算包括测试场景的测试计划下已知的测试场景的场景预估执行时间的算术平均值 ; 设置算 术平均值与本次测试计划中测试场景数量的乘积为本次测试计划的执行时间。
     在本发明的实施例中, 还提供了一种测试计划执行时间的估算装置, 包括 : 导入模 块, 用于将已完成测试计划的执行信息导入数据库 ; 统计模块, 用于根据数据库中的执行信 息统计测试计划的测试脚本的执行时间参数 ; 计算模块, 用于根据测试脚本的执行时间参 数估算本次测试计划的执行时间。
     优选地, 上述估算装置还包括 : 标记模块, 用于接收用户对已导入的执行信息是否 有效的确认, 并根据所述确认修改所述执行信息的有效性标记。
     上述实施例将已完成测试计划的执行信息自动导入数据库, 并读取数据库中的执 行信息, 再根据该执行信息估算本次测试计划的执行时间, 由于采用自动化方法进行信息 导入、 执行时间估算, 所以提高了本次测试计划执行时间估算的准确性和效率, 有利于本次 测试计划的准确制定和高效执行, 从而克服了相关技术中的测试计划执行时间的估算方法 采用人工方法完成信息收集与录入, 并根据该信息由人工进行测试计划执行时间的估算, 需要花费较长时间且容易出错, 造成对本次测试计划执行时间估算的准确性和效率较低, 从而影响了本次测试计划的准确制定和高效执行的问题。附图说明 此处所说明的附图用来提供对本发明的进一步理解, 构成本申请的一部分, 本发 明的示意性实施例及其说明用于解释本发明, 并不构成对本发明的不当限定。在附图中 :
     图 1 示出了根据本发明第一实施例的估算方法的流程图 ;
     图 2 示出了根据本发明第二实施例的数据表关系示意图
     图 3 示出了根据本发明第二实施例的估算方法的流程图 ;
     图 4 示出了根据本发明第三实施例的估算方法的信息交互示意图 ;
     图 5 示出了根据本发明第四实施例的估算方法的时间参数示意图 ;
     图 6 示出了根据本发明第四实施例的估算方法的流程图 ;
     图 7 示出了根据本发明第五实施例的估算装置的结构图。
     具体实施方式
     下面将参考附图并结合实施例, 来详细说明本发明。
     图 1 示出了根据本发明第一实施例的估算方法的流程图, 该方法包括以下步骤 :
     步骤 101, 测试计划的执行客户端将已完成测试计划的执行信息导入数据库 ; 步骤 102, 根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数 ;
     步骤 103, 根据测试脚本的执行时间参数估算本次测试计划的执行时间。
     本实施例首先由测试计划的执行客户端将已完成测试计划的执行信息导入数据 库, 然后根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数, 最后根据测 试脚本的执行时间参数估算本次测试计划的执行时间, 由于采用自动化方法进行信息导 入、 执行时间估算, 保证了测试执行信息统计数据源的有效性, 所以提高了本次测试计划执 行时间估算的准确性和效率, 有利于本次测试计划的准确制定和高效执行, 从而克服了相 关技术中的测试计划执行时间的估算方法采用人工方法完成信息收集与录入, 并根据该信息 由人工进行测试计划执行时间的估算, 需要花费较长时间且容易出错, 造成对本次测试计划执 行时间估算的准确性和效率较低, 从而影响了本次测试计划的准确制定和高效执行的问题。
     优选地, 在上述估算方法中, 步骤 101 具体包括 : 收集执行信息 ; 检查执行信息是 否有效 ; 将有效的执行信息中的测试计划、 测试场景和测试脚本导入数据库。
     本实施例首先收集已完成测试计划的执行信息, 在检查执行信息是否有效之后, 将有效的执行信息中的测试计划、 测试场景和测试脚本导入数据库, 其中每个测试计划可 包含若干个测试场景, 每个测试场景可包含若干个测试用例脚本, 每个测试用例脚本可包 含若干个测试脚本文件。这样做, 使得仅当被导入数据库的执行信息有效时才被导入数据 库, 即保证了对测试计划执行时间进行估算的数据来源的有效性, 有利于提高估算准确度。
     上述测试计划的执行客户端负责自动导入历次已完成测试计划的执行信息, 通过 在脚本解释器执行完测试脚本后, 加入信息收集与导入模块实现测试脚本执行信息的搜 集。 其中执行信息包括所涉及的测试场景、 测试用例, 以及不同测试用例在不同测试场景下 的执行时间, 测试计划下不同测试场景的执行时间, 测试计划总的执行时间等信息。 客户端 在需要的时候可以同步数据库中的测试脚本执行时间信息。 执行客户端在执行完每个测试 执行计划后, 检测每个测试环境下的测试用例脚本的信息, 如果脚本信息合法, 则将其对应 的执行信息导入远程数据库。 数据库用于存储测试用例的自动化测试脚本基础信息及其所
     属测试模块和所属被测对象的基线, 以及从执行客户端自动导入的历次已完成测试计划、 测试场景、 测试脚本及执行情况。
     数据库由测试执行计划表和脚本执行表等基础表组成, 还可包括被测对象项目版 本表、 测试用例与脚本对应表、 脚本执行时间统计表、 测试环境表等其他扩展表。数据库及 其数据表是根据测试用例脚本的执行时间估算要求来建立的。其中, 测试执行计划表用来 记录执行客户端导入的每个测试计划, 包括测试计划编号 ( 或者导入批次 )、 测试计划名 称、 测试计划日志创建时间、 导入时间、 测试场景、 执行耗时、 测试计划内容备注等信息 ; 测 试脚本执行表用来记录每个测试脚本的详细执行情况, 包括脚本执行记录编号、 测试脚本 信息、 关联的测试用例脚本信息、 关联的测试计划信息、 测试计划中的测试场景信息、 执行 开始时间、 执行结束时间、 执行耗时、 执行结果等信息。
     图 2 示出了根据本发明第二实施例的数据表关系示意图, 如图 2 所示, 数据表之间 通过相关字段完成关联, 构成一个完整的测试执行情况的数据库。
     图 3 示出了根据本发明第二实施例的估算方法的流程图, 该方法包括以下步骤 :
     步骤 301 : 在准备上传测试计划的执行情况前, 首先要检查网络是否正常, 即数据 库服务是否正常, 若不正常, 则转至步骤结束 ; 步骤 302 : 收集测试计划的相关文件, 包括测试计划、 测试场景、 测试脚本 ( 测试用 例脚本 ) 等信息 ;
     步骤 303 : 检查整理测试计划的内容有效性检查, 即检查测试计划信息是否完整, 若无效, 则转至步骤结束 ;
     步骤 304 : 导入测试计划的基本信息 ;
     步骤 305 : 依次遍历每个测试场景, 是否还有测试场景未导入, 若已全部导入, 转 至步骤结束 ;
     步骤 306 : 导入测试场景的基本信息 ;
     步骤 307 : 依次遍历每个测试脚本 ( 测试用例脚本 ), 是否还有测试脚本未导入, 若 已全部导入, 则转至步骤结束 ;
     步骤 308 : 导入测试脚本的基本信息。
     优选地, 在上述估算方法中, 步骤 102 具体包括 : 从数据库收集测试计划、 测试场 景和测试脚本 ; 读取测试脚本的脚本执行时间参数。
     本实施例首先从数据库收集测试计划、 测试场景和测试脚本, 然后读取测试脚本 的脚本执行时间参数。由于每次执行完一次测试计划, 均将其相应的执行信息导入到数据 库中, 本实施例在需要估算本次测试计划执行时间时, 从数据库中收集历次已完成测试计 划的相关执行信息, 并从中读取脚本执行时间, 这样做, 保证了被读取的脚本执行时间的完 整性和统一性。
     优选地, 在上述估算方法中, 在步骤 101 之后还包括 : 接收用户对已导入的执行信 息是否有效的确认 ; 根据确认修改执行信息的有效性标记。
     本实施例首先接收用户对已导入的执行信息是否有效的确认, 并根据确认修改执 行信息的有效性标记, 比如将得到确认的执行信息标记为有效, 或者将原本有效的执行信 息的有效标记删除。本实施例支持用户对数据库中的历次执行信息进行处理, 包括对被导 入的执行信息的确认、 查看与修改, 以及对脚本执行时间的筛选与统计, 使得用户对测试执
     行信息的管理更加灵活简便, 剔除了由于测试脚本改动带来的影响, 保证了测试脚本执行 时间统计数据源的有效性。
     本实施例可采用具有人机交互界面的网页服务器来完成接收用户确认以及有效 标记, 在每个测试执行计划导入完成后, 自动通知用户查阅和修改本次测试计划的执行结 果, 即在客户端自动打开刚被导入的测试执行计划中每个测试用例脚本执行情况, 以供用 户进行确认操作, 并将得到用户确认的执行信息标记为有效。也可根据自动邮件通知中的 网页链接来查看和确认本次测试执行计划的执行情况。如果测试用例脚本发生变化, 脚本 管理人员也可通过脚本管理网页修改脚本改动之前的执行记录的有效性, 然后重新计算测 试用例脚本的各种执行时间参数。这样, 数据库中将出现一个测试脚本在一个或者多个测 试环境下执行多次的记录, 测试执行人员可以通过执行客户端实时更新或者新自动化脚本 版本发布获得最新的脚本执行时间信息。
     图 4 示出了根据本发明第三实施例的估算方法的信息交互示意图, 其中数据库驻 留于数据库服务器, 数据库服务器、 执行客户端、 网页服务器和用户计算机之间通过网络进 行信息交互。
     优选地, 在上述估算方法中, 从数据库收集测试计划、 测试场景和测试脚本具体包 括: 从数据库收集被标记为有效的测试计划 ; 收集测试计划下被标记为有效的测试场景 ; 收集测试场景下被标记为有效的测试脚本。 本实施例首先从数据库收集被标记为有效的测试计划, 然后收集测试计划下被标 记为有效的测试场景, 最后收集测试场景下被标记为有效的测试脚本, 以完成从数据库收 集测试计划、 测试场景和测试脚本。 本实施例仅收集被用户确认为有效的测试计划、 测试场 景和测试脚本信息, 保证了用于估算本次测试计划执行时间的数据来源的有效性, 有利于 提高估算的准确性。
     优选地, 在上述估算方法中, 步骤 103 具体包括 : 根据测试脚本的执行时间参数得 到测试脚本的脚本预估执行时间参数 ; 将同一测试场景下的测试脚本的脚本预估执行时间 参数进行累加得到同一测试场景的场景预估执行时间 ; 将与本次测试计划的测试计划下的 测试场景的场景预估执行时间进行累加得到本次测试计划的执行时间。
     本实施例在读取脚本执行时间参数之后, 根据该测试脚本的执行时间参数得到脚 本预估执行时间参数, 再将同一测试场景下的脚本预估执行时间参数累加得到场景预估执 行时间, 最后将与本次测试计划的测试计划下的测试场景的场景预估执行时间进行累加得 到本次测试计划的执行时间。 每个测试用例脚本均包含一个或者多个项目下执行时间的信 息: 预估执行时间、 最小执行时间、 最大执行时间、 平均执行时间。 这些时间参数可以用秒作 为单位。客户端在制定自动化测试执行计划时, 预估的总执行时间由每个测试场景的预估 执行时间累加得到, 而每个测试场景的预估执行时间由其下的测试用例脚本的预估执行时 间累加得到。本实施例将历次测试的执行信息作为统计数据源, 以估算得到本次测试计划 的执行时间, 使得对执行时间的估算更符合实际情况, 特别是对于反复、 规律出现的影响执 行时间长短的因素给予了充分的考虑。
     优选地, 在上述估算方法中, 根据测试脚本的执行时间参数得到测试脚本的脚本 预估执行时间具体包括 : 根据预定脚本执行时间阈值对测试脚本的执行时间参数进行过 滤; 根据过滤后的脚本执行时间计算测试脚本的执行时间参数的最小执行时间、 最大执行
     时间和平均执行时间 ; 根据预定算法对测试脚本的最小执行时间、 最大执行时间、 平均执行 时间以及历次执行时间进行计算, 得到测试脚本的脚本预估执行时间, 预定算法为以下之 一: 中值算法、 均值算法、 黄金分割算法、 八二法则。
     本实施例首先计算得到测试脚本的脚本预估执行时间, 然后由最小执行时间、 最 大执行时间、 平均执行时间以及历次执行时间计算得到脚本预估执行时间采用的算法可以 为: 中值算法、 均值算法、 黄金分割算法、 八二法则, 也可以是 S = (Min+Max+4*Avg)/6、 自有 的经验公式等。本实施例计算得到测试脚本的脚本预估执行时间的方法简单易行, 采用的 预定算法均符合统计学原理, 较好地满足了由历次执行信息的统计数据估算得到本次测试 计划执行时间的要求。
     图 5 示出了根据本发明第四实施例的估算方法的时间参数示意图, 如图 5 所示, 客 户端的每个测试计划在创建时必须提供测试环境, 每个测试环境下包含了若干个测试用例 脚本。 测试用例脚本可以是一个虚拟对象, 也可以是一个实体对象。 测试用例脚本必须有若 干个实际执行的测试脚本组成。每个测试计划、 测试场景、 测试脚本都有预估执行时间、 最 小执行时间、 最大执行时间、 平均执行时间等时间参数。这些时间参数可以用秒作为单位。 客户端在制定自动化测试执行计划时, 预估的总执行时间由每个测试场景的预估执行时间 累加得到, 而每个测试场景的预估执行时间由其下的测试用例脚本的预估执行时间累加得 到。
     图 6 示出了根据本发明第四实施例的估算方法的流程图, 该方法包括以下步骤 :
     步骤 602 : 检索数据库中的测试计划基本信息, 统计测试计划总数不为 0, 如果判 断结果为是, 则进入步骤 604 ; 否则, 转至步骤结束 ;
     步骤 604 : 收集测试计划的样本信息 ;
     步骤 606 : 检查测试计划记录的是否标记为有效 ( 统计时采用 ), 如果判断结果为 是, 则进入步骤 608 ; 否则, 转至步骤 607 ;
     步骤 607 : 跳过该测试计划的统计 ;
     步骤 608 : 收集有效测试计划下的测试场景 ;
     步骤 610 : 依次遍历每个测试计划下的每个测试场景, 检查测试场景记录的是否 标记为有效 ( 统计时采用 ), 如果判断结果为是, 则进入步骤 612 ; 否则, 转至步骤 611 ;
     步骤 611 : 跳过该测试场景的统计 ;
     步骤 612 : 收集有效测试场景下的测试脚本 ;
     步骤 614 : 依次遍历每个测试脚本 ( 测试用例脚本 ), 检查测试场景记录的是否标 记为有效 ( 统计时采用 ), 如果判断结果为是, 则进入步骤 616 ; 否则, 转至步骤 615 ;
     步骤 615 : 跳过该测试脚本的统计 ;
     步骤 616 : 读取有效测试脚本的执行时间信息 ;
     步骤 618 : 根据预置的脚本执行时间的最小最大限制, 过滤无效记录 ;
     步骤 620 : 利用 Min/Max/Avg 函数计算每个环境下测试脚本的最小、 最大、 平均执 行时间 ;
     步骤 622 : 根据指定算法计算每个环境下测试脚本的预估执行时间。这里的指定 算法可以选择但不限于中值算法、 均值算法、 S = (Min+Max+4*Avg)/6、 自有的经验公式、 黄 金分割点、 八二法则等各类算法 ;步骤 624 : 将统计出来的每个环境下测试脚本的执行时间参数更新到测试脚本执 行时间统计表中。
     优选地, 在上述估算方法中, 还包括 : 若数据库中不包括本次测试计划的测试脚 本, 计算包括测试脚本的测试场景下已知的测试脚本的脚本预估执行时间参数的算术平均 值; 设置算术平均值与本次测试计划中测试脚本数量的乘积为测试场景的场景预估执行时 间; 将本次测试计划的测试场景的场景预估执行时间进行累加得到本次测试计划的执行时 间。
     本实施例中的测试脚本为从未被执行过的新脚本, 无法在数据库中找到, 故在交 付使用时采用调试脚本时的预估执行时间参数, 具体而言, 对于无法读取到脚本预估执行 时间参数的, 设置当前场景预估执行时间=当前场景下已知脚本的预估执行时间参数的算 数平均值 × 脚本数量。本实施例中利用已知脚本的平均预估执行时间参数对新脚本的预 估执行时间进行估算, 进而完成对本次测试计划的执行时间的估算, 这样做符合统计学原 理, 较好地解决了新脚本预估执行时间估算的问题。
     优选地, 在上述估算方法中, 还包括 : 若数据库中不包括测试计划的测试场景, 计 算包括测试场景的测试计划下已知的测试场景的场景预估执行时间的算术平均值 ; 设置算 术平均值与本次测试计划中测试场景数量的乘积为本次测试计划的执行时间。 本实施例中的测试场景为从未被执行过的新场景, 无法在数据库中找到, 故在交 付使用时采用调试场景时的预估执行时间参数, 具体而言, 对于无法读取到测试场景预估 执行时间参数的, 设置本次测试计划的执行时间=本次测试计划下已知测试场景的预估执 行时间参数的算数平均值 × 场景数量。本实施例中利用已知场景的平均预估执行时间参 数对新场景的预估执行时间进行估算, 进而完成对本次测试计划的执行时间的估算, 这样 做符合统计学原理, 较好地解决了新场景预估执行时间估算的问题。
     图 7 示出了根据本发明第五实施例的估算装置的结构图, 该装置包括 :
     导入模块 10, 用于将已完成测试计划的执行信息导入数据库 ;
     统计模块 20, 用于根据数据库中的执行信息统计测试计划的测试脚本的执行时间 参数 ;
     计算模块 30, 用于根据测试脚本的执行时间参数估算本次测试计划的执行时间。
     本实施例首先采用导入模块 10 将已完成测试计划的执行信息导入数据库, 然后 采用统计模块 20 根据数据库中的执行信息统计测试脚本的执行时间参数, 最后采用计算 模块 30 根据测试脚本的执行时间参数估算本次测试计划的执行时间, 由于采用自动化方 法进行信息导入、 执行时间估算, 所以提高了本次测试计划执行时间估算的准确性和效率, 有利于本次测试计划的准确制定和高效执行, 从而克服了相关技术中的测试计划执行时间 的估算方法采用人工方法完成信息收集与录入, 并根据该信息由人工进行测试计划执行时 间的估算, 需要花费较长时间且容易出错, 造成对本次测试计划执行时间估算的准确性和 效率较低, 从而影响了本次测试计划的准确制定和高效执行的问题。
     优选地, 上述估算装置还包括 : 标记模块, 用于接收用户对已导入的执行信息是否 有效的确认, 并根据所述确认修改所述执行信息的有效性标记。
     本实施例采用标记模块接收用户对已导入的执行信息是否有效的确认, 并根据确 认修改执行信息的有效性标记, 比如将得到确认的执行信息标记为有效, 或者将原本有效
     的执行信息的有效标记删除。本实施例支持用户对数据库中的历次执行信息进行处理, 包 括对被导入的执行信息的确认、 查看与修改, 以及对脚本执行时间的筛选与统计, 使得用户 对测试执行信息的管理更加灵活简便, 即使测试脚本出现变化, 也可通过修改数据库相关 信息来保证存储的执行信息的有效性。
     本实施例可采用具有人机交互界面的网页服务器来完成接收用户确认以及有效 标记, 在每个测试执行计划导入完成后, 首先在客户端自动打开刚被导入的测试执行计划 中每个测试用例脚本执行情况, 以供用户进行确认操作, 并将得到用户确认的执行信息标 记为有效。 也可根据自动邮件通知中的网页链接来查看和确认本次测试执行计划的执行情 况。如果测试用例脚本发生变化, 脚本管理人员也可通过脚本管理网页修改脚本改动之前 的执行记录的有效性, 然后重新计算测试用例脚本的各种执行时间参数。
     从以上的描述中, 可以看出, 本发明上述的实施例提高了本次测试计划执行时间 估算的准确性和效率, 有利于本次测试计划的准确制定和高效执行。
     显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以用通用 的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多个计算装置所组成 的网络上, 可选地, 它们可以用计算装置可执行的程序代码来实现, 从而, 可以将它们存储 在存储装置中由计算装置来执行, 或者将它们分别制作成各个集成电路模块, 或者将它们 中的多个模块或步骤制作成单个集成电路模块来实现。这样, 本发明不限制于任何特定的 硬件和软件结合。 以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的任何修 改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。
    

测试计划执行时间的估算方法及装置.pdf_第1页
第1页 / 共16页
测试计划执行时间的估算方法及装置.pdf_第2页
第2页 / 共16页
测试计划执行时间的估算方法及装置.pdf_第3页
第3页 / 共16页
点击查看更多>>
资源描述

《测试计划执行时间的估算方法及装置.pdf》由会员分享,可在线阅读,更多相关《测试计划执行时间的估算方法及装置.pdf(16页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN101989228A43申请公布日20110323CN101989228ACN101989228A21申请号200910164067822申请日20090807G06F11/3620060171申请人中兴通讯股份有限公司地址518057广东省深圳市南山区科技南路55号72发明人陆新华74专利代理机构北京康信知识产权代理有限责任公司11240代理人余刚吴孟秋54发明名称测试计划执行时间的估算方法及装置57摘要本发明提供了一种测试计划执行时间的估算方法,包括以下步骤测试计划的执行客户端将已完成测试计划的执行信息导入数据库;根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数。

2、;根据测试脚本的执行时间参数估算本次测试计划的执行时间。本发明还提供了一种测试计划执行时间的估算装置,包括导入模块;统计模块;计算模块。本发明克服了相关技术中的测试计划执行时间的估算方法采用人工方法需要花费较长时间且容易出错,造成对本次测试计划执行时间估算的准确性和效率较低,从而影响了本次测试计划的准确制定和高效执行的问题,从而提高了本次测试计划执行时间估算的准确性和效率,有利于本次测试计划的准确制定和高效执行。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书8页附图5页CN101989228A1/2页21一种测试计划执行时间的估算方法,其特征在于,包括以下步。

3、骤测试计划的执行客户端将已完成测试计划的执行信息导入数据库;根据所述数据库中的所述执行信息统计所述测试计划的测试脚本的执行时间参数;根据所述测试脚本的执行时间参数估算本次测试计划的执行时间。2根据权利要求1所述的估算方法,其特征在于,将已完成测试计划的执行信息导入数据库具体包括收集所述执行信息;检查所述执行信息是否有效;将有效的所述执行信息中的测试计划、测试场景和测试脚本导入所述数据库。3根据权利要求2所述的估算方法,其特征在于,根据所述数据库中的所述执行信息统计测试脚本的执行时间参数具体包括从所述数据库收集所述测试计划、所述测试场景和所述测试脚本;读取所述测试脚本的执行时间参数。4根据权利要。

4、求3所述的估算方法,其特征在于,在测试计划的执行客户端将已完成测试计划的执行信息导入数据库之后还包括接收用户对已导入的所述执行信息是否有效的确认;根据所述确认修改所述执行信息的有效性标记。5根据权利要求4所述的估算方法,其特征在于,从所述数据库收集所述测试计划、所述测试场景和所述测试脚本具体包括从所述数据库收集被标记为有效的测试计划;收集所述测试计划下被标记为有效的测试场景;收集所述测试场景下被标记为有效的测试脚本。6根据权利要求3或5所述的估算方法,其特征在于,根据所述测试脚本的执行时间参数估算本次测试计划的执行时间具体包括根据所述测试脚本的执行时间参数得到所述测试脚本的脚本预估执行时间参数。

5、;将同一测试场景下的测试脚本的所述脚本预估执行时间参数进行累加得到所述同一测试场景的场景预估执行时间;将所述本次测试计划的测试场景的所述场景预估执行时间进行累加得到所述本次测试计划的执行时间。7根据权利要求6所述的估算方法,其特征在于,根据所述测试脚本的执行时间参数得到所述测试脚本的脚本预估执行时间参数具体包括根据预定脚本执行时间阈值对所述测试脚本的执行时间参数进行过滤;根据过滤后的所述脚本执行时间计算所述测试脚本的执行时间参数的最小执行时间、最大执行时间和平均执行时间;根据预定算法对所述测试脚本的最小执行时间、所述最大执行时间、所述平均执行时间以及历次执行时间进行计算,得到所述测试脚本的脚本。

6、预估执行时间,所述预定算法为以下之一中值算法、均值算法、黄金分割算法、八二法则。8根据权利要求2所述的估算方法,其特征在于,还包括若所述数据库中不包括所述本次测试计划的测试脚本,计算包括所述测试脚本的测试权利要求书CN101989228A2/2页3场景下已知的测试脚本的脚本预估执行时间参数的算术平均值;设置所述算术平均值与所述本次测试计划中所述测试脚本数量的乘积为所述测试场景的场景预估执行时间;将所述本次测试计划的测试场景的所述场景预估执行时间进行累加得到所述本次测试计划的执行时间。9根据权利要求2所述的估算方法,其特征在于,还包括若所述数据库中不包括所述本次测试计划的测试场景,计算包括所述测。

7、试场景的测试计划下已知的测试场景的场景预估执行时间的算术平均值;设置所述算术平均值与所述本次测试计划中所述测试场景数量的乘积为所述本次测试计划的执行时间。10一种测试计划执行时间的估算装置,其特征在于,包括导入模块,用于将已完成测试计划的执行信息导入数据库;统计模块,用于根据所述数据库中的所述执行信息统计所述测试计划的测试脚本的执行时间参数;计算模块,用于根据所述测试脚本的执行时间参数估算本次测试计划的执行时间。11根据权利要求10所述的估算装置,其特征在于,还包括标记模块,用于接收用户对已导入的所述执行信息是否有效的确认,并根据所述确认修改所述执行信息的有效性标记。权利要求书CN101989。

8、228A1/8页4测试计划执行时间的估算方法及装置技术领域0001本发明涉及自动化测试领域,具体而言,涉及一种测试计划执行时间的估算方法及装置。背景技术0002自动化测试是使用软件来进行自动控制测试的输入、执行、输出及其他操作,对实际输出结果和预期输出结果进行自动比较,并自动输出测试报告。自动化测试可执行一些手工测试较难进行或不可能进行的测试,可以更好地利用人力与设备资源,而且测试执行的结果一致性更好。0003随着自动化的深入,用户对自动化的细节需求越来越多,特别是对自动化测试过程的监控越来越关注。在自动化测试执行计划制定时,用户希望能够了解所涉及的测试场景、测试用例,以及不同测试用例在不同测。

9、试场景下的执行时间、测试计划下不同测试场景的执行时间、测试计划总的执行时间。0004相关技术提供了一种测试计划执行时间的估算方法,该方法中对历次测试执行信息的收集与录入、对本次测试计划执行时间的估算均由人工手动完成。0005发明人发现相关技术中的测试计划执行时间的估算方法采用人工方法完成信息收集与录入,并根据该信息由人工进行测试计划执行时间的估算,需要花费较长时间且容易出错,造成对本次测试计划执行时间估算的准确性和效率较低,从而影响了本次测试计划的准确制定和高效执行。发明内容0006本发明旨在提供一种测试计划执行时间的估算方法及装置,能够解决相关技术中的测试计划执行时间的估算方法采用人工方法完。

10、成信息收集与录入,并根据该信息由人工进行测试计划执行时间的估算,需要花费较长时间且容易出错,造成对本次测试计划执行时间估算的准确性和效率较低,从而影响了本次测试计划的准确制定和高效执行的问题。0007在本发明的实施例中,提供了一种测试计划执行时间的估算方法,包括以下步骤测试计划的执行客户端将已完成测试计划的执行信息导入数据库;根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数;根据测试脚本的执行时间参数估算本次测试计划的执行时间。0008优选地,在上述估算方法中,将已完成测试计划的执行信息导入数据库具体包括收集执行信息;检查执行信息是否有效;将有效的执行信息中的测试计划、测试场景和测试。

11、脚本导入数据库。0009优选地,在上述估算方法中,根据数据库中的执行信息统计测试脚本的执行时间参数具体包括从数据库收集测试计划、测试场景和测试脚本;读取测试脚本的脚本执行时间参数。0010优选地,在上述估算方法中,在测试计划的执行客户端将已完成测试计划的执行说明书CN101989228A2/8页5信息导入数据库之后还包括接收用户对已导入的执行信息是否有效的确认;根据确认修改执行信息的有效性标记。0011优选地,在上述估算方法中,从数据库收集测试计划、测试场景和测试脚本具体包括从数据库收集被标记为有效的测试计划;收集测试计划下被标记为有效的测试场景;收集测试场景下被标记为有效的测试脚本。0012。

12、优选地,在上述估算方法中,根据测试脚本的执行时间参数估算本次测试计划的执行时间具体包括根据测试脚本的执行时间参数得到测试脚本的脚本预估执行时间参数;将同一测试场景下的测试脚本的脚本预估执行时间参数进行累加得到同一测试场景的场景预估执行时间;将与本次测试计划的测试计划下的测试场景的场景预估执行时间进行累加得到本次测试计划的执行时间。0013优选地,在上述估算方法中,根据测试脚本的执行时间参数得到测试脚本的脚本预估执行时间具体包括根据预定脚本执行时间阈值对测试脚本的执行时间参数进行过滤;根据过滤后的脚本执行时间计算测试脚本的执行时间参数的最小执行时间、最大执行时间和平均执行时间;根据预定算法对测试。

13、脚本的最小执行时间、最大执行时间、平均执行时间以及历次执行时间进行计算,得到测试脚本的脚本预估执行时间,预定算法为以下之一中值算法、均值算法、黄金分割算法、八二法则。0014优选地,在上述估算方法中,还包括若数据库中不包括本次测试计划的测试脚本,计算包括测试脚本的测试场景下已知的测试脚本的脚本预估执行时间参数的算术平均值;设置算术平均值与本次测试计划中测试脚本数量的乘积为测试场景的场景预估执行时间;将本次测试计划的测试场景的场景预估执行时间进行累加得到本次测试计划的执行时间。0015优选地,在上述估算方法中,还包括若数据库中不包括测试计划的测试场景,计算包括测试场景的测试计划下已知的测试场景的。

14、场景预估执行时间的算术平均值;设置算术平均值与本次测试计划中测试场景数量的乘积为本次测试计划的执行时间。0016在本发明的实施例中,还提供了一种测试计划执行时间的估算装置,包括导入模块,用于将已完成测试计划的执行信息导入数据库;统计模块,用于根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数;计算模块,用于根据测试脚本的执行时间参数估算本次测试计划的执行时间。0017优选地,上述估算装置还包括标记模块,用于接收用户对已导入的执行信息是否有效的确认,并根据所述确认修改所述执行信息的有效性标记。0018上述实施例将已完成测试计划的执行信息自动导入数据库,并读取数据库中的执行信息,再根据该执。

15、行信息估算本次测试计划的执行时间,由于采用自动化方法进行信息导入、执行时间估算,所以提高了本次测试计划执行时间估算的准确性和效率,有利于本次测试计划的准确制定和高效执行,从而克服了相关技术中的测试计划执行时间的估算方法采用人工方法完成信息收集与录入,并根据该信息由人工进行测试计划执行时间的估算,需要花费较长时间且容易出错,造成对本次测试计划执行时间估算的准确性和效率较低,从而影响了本次测试计划的准确制定和高效执行的问题。说明书CN101989228A3/8页6附图说明0019此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对。

16、本发明的不当限定。在附图中0020图1示出了根据本发明第一实施例的估算方法的流程图;0021图2示出了根据本发明第二实施例的数据表关系示意图0022图3示出了根据本发明第二实施例的估算方法的流程图;0023图4示出了根据本发明第三实施例的估算方法的信息交互示意图;0024图5示出了根据本发明第四实施例的估算方法的时间参数示意图;0025图6示出了根据本发明第四实施例的估算方法的流程图;0026图7示出了根据本发明第五实施例的估算装置的结构图。具体实施方式0027下面将参考附图并结合实施例,来详细说明本发明。0028图1示出了根据本发明第一实施例的估算方法的流程图,该方法包括以下步骤0029步骤。

17、101,测试计划的执行客户端将已完成测试计划的执行信息导入数据库;0030步骤102,根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数;0031步骤103,根据测试脚本的执行时间参数估算本次测试计划的执行时间。0032本实施例首先由测试计划的执行客户端将已完成测试计划的执行信息导入数据库,然后根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数,最后根据测试脚本的执行时间参数估算本次测试计划的执行时间,由于采用自动化方法进行信息导入、执行时间估算,保证了测试执行信息统计数据源的有效性,所以提高了本次测试计划执行时间估算的准确性和效率,有利于本次测试计划的准确制定和高效执行,从而。

18、克服了相关技术中的测试计划执行时间的估算方法采用人工方法完成信息收集与录入,并根据该信息由人工进行测试计划执行时间的估算,需要花费较长时间且容易出错,造成对本次测试计划执行时间估算的准确性和效率较低,从而影响了本次测试计划的准确制定和高效执行的问题。0033优选地,在上述估算方法中,步骤101具体包括收集执行信息;检查执行信息是否有效;将有效的执行信息中的测试计划、测试场景和测试脚本导入数据库。0034本实施例首先收集已完成测试计划的执行信息,在检查执行信息是否有效之后,将有效的执行信息中的测试计划、测试场景和测试脚本导入数据库,其中每个测试计划可包含若干个测试场景,每个测试场景可包含若干个测。

19、试用例脚本,每个测试用例脚本可包含若干个测试脚本文件。这样做,使得仅当被导入数据库的执行信息有效时才被导入数据库,即保证了对测试计划执行时间进行估算的数据来源的有效性,有利于提高估算准确度。0035上述测试计划的执行客户端负责自动导入历次已完成测试计划的执行信息,通过在脚本解释器执行完测试脚本后,加入信息收集与导入模块实现测试脚本执行信息的搜集。其中执行信息包括所涉及的测试场景、测试用例,以及不同测试用例在不同测试场景下的执行时间,测试计划下不同测试场景的执行时间,测试计划总的执行时间等信息。客户端在需要的时候可以同步数据库中的测试脚本执行时间信息。执行客户端在执行完每个测试执行计划后,检测每。

20、个测试环境下的测试用例脚本的信息,如果脚本信息合法,则将其对应的执行信息导入远程数据库。数据库用于存储测试用例的自动化测试脚本基础信息及其所说明书CN101989228A4/8页7属测试模块和所属被测对象的基线,以及从执行客户端自动导入的历次已完成测试计划、测试场景、测试脚本及执行情况。0036数据库由测试执行计划表和脚本执行表等基础表组成,还可包括被测对象项目版本表、测试用例与脚本对应表、脚本执行时间统计表、测试环境表等其他扩展表。数据库及其数据表是根据测试用例脚本的执行时间估算要求来建立的。其中,测试执行计划表用来记录执行客户端导入的每个测试计划,包括测试计划编号或者导入批次、测试计划名称。

21、、测试计划日志创建时间、导入时间、测试场景、执行耗时、测试计划内容备注等信息;测试脚本执行表用来记录每个测试脚本的详细执行情况,包括脚本执行记录编号、测试脚本信息、关联的测试用例脚本信息、关联的测试计划信息、测试计划中的测试场景信息、执行开始时间、执行结束时间、执行耗时、执行结果等信息。0037图2示出了根据本发明第二实施例的数据表关系示意图,如图2所示,数据表之间通过相关字段完成关联,构成一个完整的测试执行情况的数据库。0038图3示出了根据本发明第二实施例的估算方法的流程图,该方法包括以下步骤0039步骤301在准备上传测试计划的执行情况前,首先要检查网络是否正常,即数据库服务是否正常,若。

22、不正常,则转至步骤结束;0040步骤302收集测试计划的相关文件,包括测试计划、测试场景、测试脚本测试用例脚本等信息;0041步骤303检查整理测试计划的内容有效性检查,即检查测试计划信息是否完整,若无效,则转至步骤结束;0042步骤304导入测试计划的基本信息;0043步骤305依次遍历每个测试场景,是否还有测试场景未导入,若已全部导入,转至步骤结束;0044步骤306导入测试场景的基本信息;0045步骤307依次遍历每个测试脚本测试用例脚本,是否还有测试脚本未导入,若已全部导入,则转至步骤结束;0046步骤308导入测试脚本的基本信息。0047优选地,在上述估算方法中,步骤102具体包括从。

23、数据库收集测试计划、测试场景和测试脚本;读取测试脚本的脚本执行时间参数。0048本实施例首先从数据库收集测试计划、测试场景和测试脚本,然后读取测试脚本的脚本执行时间参数。由于每次执行完一次测试计划,均将其相应的执行信息导入到数据库中,本实施例在需要估算本次测试计划执行时间时,从数据库中收集历次已完成测试计划的相关执行信息,并从中读取脚本执行时间,这样做,保证了被读取的脚本执行时间的完整性和统一性。0049优选地,在上述估算方法中,在步骤101之后还包括接收用户对已导入的执行信息是否有效的确认;根据确认修改执行信息的有效性标记。0050本实施例首先接收用户对已导入的执行信息是否有效的确认,并根据。

24、确认修改执行信息的有效性标记,比如将得到确认的执行信息标记为有效,或者将原本有效的执行信息的有效标记删除。本实施例支持用户对数据库中的历次执行信息进行处理,包括对被导入的执行信息的确认、查看与修改,以及对脚本执行时间的筛选与统计,使得用户对测试执说明书CN101989228A5/8页8行信息的管理更加灵活简便,剔除了由于测试脚本改动带来的影响,保证了测试脚本执行时间统计数据源的有效性。0051本实施例可采用具有人机交互界面的网页服务器来完成接收用户确认以及有效标记,在每个测试执行计划导入完成后,自动通知用户查阅和修改本次测试计划的执行结果,即在客户端自动打开刚被导入的测试执行计划中每个测试用例。

25、脚本执行情况,以供用户进行确认操作,并将得到用户确认的执行信息标记为有效。也可根据自动邮件通知中的网页链接来查看和确认本次测试执行计划的执行情况。如果测试用例脚本发生变化,脚本管理人员也可通过脚本管理网页修改脚本改动之前的执行记录的有效性,然后重新计算测试用例脚本的各种执行时间参数。这样,数据库中将出现一个测试脚本在一个或者多个测试环境下执行多次的记录,测试执行人员可以通过执行客户端实时更新或者新自动化脚本版本发布获得最新的脚本执行时间信息。0052图4示出了根据本发明第三实施例的估算方法的信息交互示意图,其中数据库驻留于数据库服务器,数据库服务器、执行客户端、网页服务器和用户计算机之间通过网。

26、络进行信息交互。0053优选地,在上述估算方法中,从数据库收集测试计划、测试场景和测试脚本具体包括从数据库收集被标记为有效的测试计划;收集测试计划下被标记为有效的测试场景;收集测试场景下被标记为有效的测试脚本。0054本实施例首先从数据库收集被标记为有效的测试计划,然后收集测试计划下被标记为有效的测试场景,最后收集测试场景下被标记为有效的测试脚本,以完成从数据库收集测试计划、测试场景和测试脚本。本实施例仅收集被用户确认为有效的测试计划、测试场景和测试脚本信息,保证了用于估算本次测试计划执行时间的数据来源的有效性,有利于提高估算的准确性。0055优选地,在上述估算方法中,步骤103具体包括根据测。

27、试脚本的执行时间参数得到测试脚本的脚本预估执行时间参数;将同一测试场景下的测试脚本的脚本预估执行时间参数进行累加得到同一测试场景的场景预估执行时间;将与本次测试计划的测试计划下的测试场景的场景预估执行时间进行累加得到本次测试计划的执行时间。0056本实施例在读取脚本执行时间参数之后,根据该测试脚本的执行时间参数得到脚本预估执行时间参数,再将同一测试场景下的脚本预估执行时间参数累加得到场景预估执行时间,最后将与本次测试计划的测试计划下的测试场景的场景预估执行时间进行累加得到本次测试计划的执行时间。每个测试用例脚本均包含一个或者多个项目下执行时间的信息预估执行时间、最小执行时间、最大执行时间、平均。

28、执行时间。这些时间参数可以用秒作为单位。客户端在制定自动化测试执行计划时,预估的总执行时间由每个测试场景的预估执行时间累加得到,而每个测试场景的预估执行时间由其下的测试用例脚本的预估执行时间累加得到。本实施例将历次测试的执行信息作为统计数据源,以估算得到本次测试计划的执行时间,使得对执行时间的估算更符合实际情况,特别是对于反复、规律出现的影响执行时间长短的因素给予了充分的考虑。0057优选地,在上述估算方法中,根据测试脚本的执行时间参数得到测试脚本的脚本预估执行时间具体包括根据预定脚本执行时间阈值对测试脚本的执行时间参数进行过滤;根据过滤后的脚本执行时间计算测试脚本的执行时间参数的最小执行时间。

29、、最大执行说明书CN101989228A6/8页9时间和平均执行时间;根据预定算法对测试脚本的最小执行时间、最大执行时间、平均执行时间以及历次执行时间进行计算,得到测试脚本的脚本预估执行时间,预定算法为以下之一中值算法、均值算法、黄金分割算法、八二法则。0058本实施例首先计算得到测试脚本的脚本预估执行时间,然后由最小执行时间、最大执行时间、平均执行时间以及历次执行时间计算得到脚本预估执行时间采用的算法可以为中值算法、均值算法、黄金分割算法、八二法则,也可以是SMINMAX4AVG/6、自有的经验公式等。本实施例计算得到测试脚本的脚本预估执行时间的方法简单易行,采用的预定算法均符合统计学原理,。

30、较好地满足了由历次执行信息的统计数据估算得到本次测试计划执行时间的要求。0059图5示出了根据本发明第四实施例的估算方法的时间参数示意图,如图5所示,客户端的每个测试计划在创建时必须提供测试环境,每个测试环境下包含了若干个测试用例脚本。测试用例脚本可以是一个虚拟对象,也可以是一个实体对象。测试用例脚本必须有若干个实际执行的测试脚本组成。每个测试计划、测试场景、测试脚本都有预估执行时间、最小执行时间、最大执行时间、平均执行时间等时间参数。这些时间参数可以用秒作为单位。客户端在制定自动化测试执行计划时,预估的总执行时间由每个测试场景的预估执行时间累加得到,而每个测试场景的预估执行时间由其下的测试用。

31、例脚本的预估执行时间累加得到。0060图6示出了根据本发明第四实施例的估算方法的流程图,该方法包括以下步骤0061步骤602检索数据库中的测试计划基本信息,统计测试计划总数不为0,如果判断结果为是,则进入步骤604;否则,转至步骤结束;0062步骤604收集测试计划的样本信息;0063步骤606检查测试计划记录的是否标记为有效统计时采用,如果判断结果为是,则进入步骤608;否则,转至步骤607;0064步骤607跳过该测试计划的统计;0065步骤608收集有效测试计划下的测试场景;0066步骤610依次遍历每个测试计划下的每个测试场景,检查测试场景记录的是否标记为有效统计时采用,如果判断结果为。

32、是,则进入步骤612;否则,转至步骤611;0067步骤611跳过该测试场景的统计;0068步骤612收集有效测试场景下的测试脚本;0069步骤614依次遍历每个测试脚本测试用例脚本,检查测试场景记录的是否标记为有效统计时采用,如果判断结果为是,则进入步骤616;否则,转至步骤615;0070步骤615跳过该测试脚本的统计;0071步骤616读取有效测试脚本的执行时间信息;0072步骤618根据预置的脚本执行时间的最小最大限制,过滤无效记录;0073步骤620利用MIN/MAX/AVG函数计算每个环境下测试脚本的最小、最大、平均执行时间;0074步骤622根据指定算法计算每个环境下测试脚本的预。

33、估执行时间。这里的指定算法可以选择但不限于中值算法、均值算法、SMINMAX4AVG/6、自有的经验公式、黄金分割点、八二法则等各类算法;说明书CN101989228A7/8页100075步骤624将统计出来的每个环境下测试脚本的执行时间参数更新到测试脚本执行时间统计表中。0076优选地,在上述估算方法中,还包括若数据库中不包括本次测试计划的测试脚本,计算包括测试脚本的测试场景下已知的测试脚本的脚本预估执行时间参数的算术平均值;设置算术平均值与本次测试计划中测试脚本数量的乘积为测试场景的场景预估执行时间;将本次测试计划的测试场景的场景预估执行时间进行累加得到本次测试计划的执行时间。0077本实。

34、施例中的测试脚本为从未被执行过的新脚本,无法在数据库中找到,故在交付使用时采用调试脚本时的预估执行时间参数,具体而言,对于无法读取到脚本预估执行时间参数的,设置当前场景预估执行时间当前场景下已知脚本的预估执行时间参数的算数平均值脚本数量。本实施例中利用已知脚本的平均预估执行时间参数对新脚本的预估执行时间进行估算,进而完成对本次测试计划的执行时间的估算,这样做符合统计学原理,较好地解决了新脚本预估执行时间估算的问题。0078优选地,在上述估算方法中,还包括若数据库中不包括测试计划的测试场景,计算包括测试场景的测试计划下已知的测试场景的场景预估执行时间的算术平均值;设置算术平均值与本次测试计划中测。

35、试场景数量的乘积为本次测试计划的执行时间。0079本实施例中的测试场景为从未被执行过的新场景,无法在数据库中找到,故在交付使用时采用调试场景时的预估执行时间参数,具体而言,对于无法读取到测试场景预估执行时间参数的,设置本次测试计划的执行时间本次测试计划下已知测试场景的预估执行时间参数的算数平均值场景数量。本实施例中利用已知场景的平均预估执行时间参数对新场景的预估执行时间进行估算,进而完成对本次测试计划的执行时间的估算,这样做符合统计学原理,较好地解决了新场景预估执行时间估算的问题。0080图7示出了根据本发明第五实施例的估算装置的结构图,该装置包括0081导入模块10,用于将已完成测试计划的执。

36、行信息导入数据库;0082统计模块20,用于根据数据库中的执行信息统计测试计划的测试脚本的执行时间参数;0083计算模块30,用于根据测试脚本的执行时间参数估算本次测试计划的执行时间。0084本实施例首先采用导入模块10将已完成测试计划的执行信息导入数据库,然后采用统计模块20根据数据库中的执行信息统计测试脚本的执行时间参数,最后采用计算模块30根据测试脚本的执行时间参数估算本次测试计划的执行时间,由于采用自动化方法进行信息导入、执行时间估算,所以提高了本次测试计划执行时间估算的准确性和效率,有利于本次测试计划的准确制定和高效执行,从而克服了相关技术中的测试计划执行时间的估算方法采用人工方法完。

37、成信息收集与录入,并根据该信息由人工进行测试计划执行时间的估算,需要花费较长时间且容易出错,造成对本次测试计划执行时间估算的准确性和效率较低,从而影响了本次测试计划的准确制定和高效执行的问题。0085优选地,上述估算装置还包括标记模块,用于接收用户对已导入的执行信息是否有效的确认,并根据所述确认修改所述执行信息的有效性标记。0086本实施例采用标记模块接收用户对已导入的执行信息是否有效的确认,并根据确认修改执行信息的有效性标记,比如将得到确认的执行信息标记为有效,或者将原本有效说明书CN101989228A8/8页11的执行信息的有效标记删除。本实施例支持用户对数据库中的历次执行信息进行处理,。

38、包括对被导入的执行信息的确认、查看与修改,以及对脚本执行时间的筛选与统计,使得用户对测试执行信息的管理更加灵活简便,即使测试脚本出现变化,也可通过修改数据库相关信息来保证存储的执行信息的有效性。0087本实施例可采用具有人机交互界面的网页服务器来完成接收用户确认以及有效标记,在每个测试执行计划导入完成后,首先在客户端自动打开刚被导入的测试执行计划中每个测试用例脚本执行情况,以供用户进行确认操作,并将得到用户确认的执行信息标记为有效。也可根据自动邮件通知中的网页链接来查看和确认本次测试执行计划的执行情况。如果测试用例脚本发生变化,脚本管理人员也可通过脚本管理网页修改脚本改动之前的执行记录的有效性。

39、,然后重新计算测试用例脚本的各种执行时间参数。0088从以上的描述中,可以看出,本发明上述的实施例提高了本次测试计划执行时间估算的准确性和效率,有利于本次测试计划的准确制定和高效执行。0089显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。0090以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。说明书CN101989228A1/5页12图1图2说明书附图CN101989228A2/5页13图3说明书附图CN101989228A3/5页14图4图5说明书附图CN101989228A4/5页15图6说明书附图CN101989228A5/5页16图7说明书附图。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1