一种软件测试的方法及装置制造方法及图纸

技术编号:2821039 阅读:252 留言:0更新日期:2012-04-11 18:40
一种软件测试的方法,其特征在于,包括: 建立界面元素库和动作元素库,所述界面元素库存储被测软件的界面元素,所述动作元素库存储用于操作所述界面元素的动作参数,所述动作参数包括动作名称和动作执行脚本; 按照预定义的测试逻辑,从所述界面元素库和动作元素库中提取所述测试逻辑所需的界面元素和动作元素,生成测试用例; 将测试用例转换为自动化测试脚本,解析执行所述自动化测试脚本,在被测软件上完成相应操作。

【技术实现步骤摘要】

本专利技术涉及测试领域,特别是涉及一种软件测试的方法及装置
技术介绍
软件测试是软件开发过程的重要组成部分,是在软件在投入运行前, 对软件的需求分析、设计规格说明和编码的最终复审,是软件质量保证 的关键步骤。可以看出,软件测试是为了发现软件中存在的错误而执行 测试脚本的过程。软件测试的主要内容是验证和确认,验证是保证软件 可以执行预期的测试流程,确认是为了证实在一个给定的外部环境中软 件逻辑的正确性,保证软件可以以正确的方式执行测试脚本。现有技术在对软件进行测试的过程中,测试脚本通常根据测试用例由测试工具(例如Robot或WinRunner )进行录制,录制过程为启动 功能测试工具,选择录制功能,依照测试用例逐步地操作被测试的软件, 测试工具可以以脚本语言的形式记录操作过程。当录制完成之后,软件 开发人员可以对录制的脚本进行适当修改,如增加上下文验证、思考时 间等,然后执行所述测试脚本,可以在被测软件上模拟已经记录的键盘 或鼠标操作。但是该软件测试的方法也存在不可避免的缺点,即是在录制测试脚 本时需要软件开发人员预先操作相应的被测软件,并在录制测试脚本 后,手工进行相应的修改和编辑才能执行所述测试脚本,以完成软件测 试的任务,这种手工编写测试脚本对软件进行测试的方法,使得软件测 试的效率极其低下。总之,目前需要本领域技术人员迫切解决的一个技术问题就是如 何能够提出 一种软件测试的方法,用以解决在软件测试过程中需要手工 编写测试脚本使得软件测试效率低下的问题。
技术实现思路
本专利技术所要解决的技术问题是提供一种软件测试的方法,用以提高 软件测试效率。本专利技术的另一个目的是将上述构思应用于具体的应用环境中,提供 一种软件测试的装置,从而保证该方法的实现和应用。为解决上述技术问题,本专利技术实施例提供了一种软件测试方法,包括建立界面元素库和动作元素库,所述界面元素库存储被测软件的界 面元素,所述动作元素库存储用于操作所述界面元素的动作参数,所述 动作参数包括动作名称和动作执行脚本;按照预定义的测试逻辑,从所述界面元素库和动作元素库中提取所 述测试逻辑所需的界面元素和动作元素,生成测试用例;将测试用例转换为自动化测试脚本,解析执行所述自动化测试脚 本,在被测软件上完成相应操作。优选的,所述测试逻辑包括多条测试子逻辑,所述生成测试用例包括根据所述界面元素和动作元素生成测试用例模板; 在所述测试用例模板中,分别定义各个测试子逻辑所要求的测试输入数据和预期输出结果;组合所述测试输入数据和预期输出结果形成测试用例。优选的,所述测试用例模板以二维输入表格的形式通过界面展示。优选的,所述界面元素和动作元素为被测软件一窗口中的界面元素和动作元素。优选的,所述界面元素包括界面元素的名称、类型和标识。优选的,所述界面元素为控件,所述界面元素的名称为控件名称, 所述界面元素的标识为所述控件在工具语言中的定义。优选的,所述将测试用例转换为测试脚本包括读取所述测试用例中的界面元素名称、动作名称、测试输入数据和 预期输出结果; 素库中匹配,获得相应的界面元素标识和动作执行脚本;将所述界面元素名称和标识组合成映射文件;将所述界面元素名称、动作执行脚本、测试输入数据和预期输出结果组合生成中间脚本;通过所述映射文件置换所述中间脚本中的界面元素,动态得到自动 化测试脚本。本专利技术实施例还提供了一种软件测试装置,包括 建立模块,用于建立界面元素库和动作元素库,所述界面元素库存 储被测软件的界面元素,所述动作元素库存储用于操作所述界面元素的 动作参数,所述动作参数包括动作名称和动作执行脚本;提取模块,用于按照预定义的测试逻辑,从所述界面元素库和动作 元素库中提取所述测试逻辑所需的界面元素和动作元素;生成测试用例模块,用于依据所述界面元素和动作元素生成测试用例;转换测试脚本模块,用于将所述测试用例转换为自动化测试脚本; 解析执行模块,用于解析执行所述自动化测试脚本,在被测软件上 完成相应操作。优选的,所述生成测试用例模块包括生成模板子模块,用于根据所述界面元素和动作元素生成测试用例 模板;定义子模块,用于在所述测试用例模板中,分别定义各个测试子逻 辑所要求的测试输入数据和预期输出结果;组合子模块,用于组合所述测试输入数据和预期输出结果形成测试 用例。优选的,所述界面元素包括界面元素的名称、类型和标识。 优选的,所述界面元素为控件,所述界面元素的名称为控件名称, 所述界面元素的标识为所述控件在工具语言中的定义。 优选的,所述转换测试脚本模块包括读取子模块,用于读取所述测试用例中的界面元素名称、动作名称、测试输入数据和预期输出结果;元素库和动作元素库中匹配,获得相应的界面元素标识和动作l丸行脚 本;生成映射文件子模块,用于将所述界面元素名称和标识组合成映射 文件;生成中间脚本子模块,用于将所述界面元素名称、动作执行脚本、 测试输入数据和预期输出结果组合生成中间脚本;生成测试脚本子模块,用于通过所述映射文件置换所述中间脚本中 的界面元素,动态得到自动化测试脚本。本专利技术通过建立界面元素库和动作元素库,所述界面元素库存储被 测软件的界面元素,所述动作元素库存储用于操作所述界面元素的动作 参数,并按照预定义的测试逻辑,从所述界面元素库和动作元素库中提 取相应的界面元素和动作元素,生成测试用例,然后将测试用例转换为 自动化测试脚本,最后解析执行所述自动化测试脚本,在被测软件上完 成相应操作,使得软件开发人员不需要手工编辑测试脚本,可以在被测 软件上模拟键盘输入、鼠标点击等实际操作,大大提高了软件的测试效 率,也节约了软件开发的大量资源。附图说明图1是本专利技术的一种软件测试的方法实施例1的流程图; 图2是本专利技术的一种软件测试的方法实施例2的流程图; 图3是本专利技术的一个具体例子中一个界面元素库的示意图; 图4 (a)和图4(b)是本专利技术的一个具体例子中动作元素库的示 意图5是本专利技术的一个具体例子中一个测试用例模板的示意图; 图6是本专利技术的一个具体例子中 一个测试用例的示意图; 图7是本专利技术的一个具体例子中一个映射文件的示意图;图8是本专利技术的 一 个具体例子中将测试用例转换为中间脚本时的界面示意图9是本专利技术的一个具体例子中一个中间脚本的示意图10是本专利技术的一个具体例子中执行中间脚本的界面示意图11是本专利技术的一个具体例子中自动化测试脚本的示意图12是本专利技术的 一 种软件测试的装置实施例的结构框图13是本专利技术的一种软件测试的装置优选实施例的结构框图14是应用图13所示的优选实施例进行软件测试的流程图。具体实施例方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合 附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术可用于众多通用或专用的计算系统环境或配置中。例如个 人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处 理器系统、包括以上任何系统或设备的分布式计算环境等等。本专利技术可以在由计算机执行的计算机可执行指令的 一般上下文中 描述,例如程序模块。 一般地,程序模块包括执行特定任务或实现特定 抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分 布式计算环境中实践本专利技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务本文档来自技高网...

【技术保护点】
一种软件测试的方法,其特征在于,包括: 建立界面元素库和动作元素库,所述界面元素库存储被测软件的界面元素,所述动作元素库存储用于操作所述界面元素的动作参数,所述动作参数包括动作名称和动作执行脚本; 按照预定义的测试逻辑,从所述界面元素库和动作元素库中提取所述测试逻辑所需的界面元素和动作元素,生成测试用例; 将测试用例转换为自动化测试脚本,解析执行所述自动化测试脚本,在被测软件上完成相应操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:黄尔谦关荣华邓润祥肖钢陈洪
申请(专利权)人:金蝶软件中国有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1