为什么要使用测试工具?
程序的测试是一项枯燥、重复的劳动,每当程序发布一个新的版本后,首先要跟踪缺陷日志,对上一个版本中的BUG进行测试、参看是否已经修正。其次还要对没有问题的功能重新测试一遍,检查是否由于程序的改动而引发了新的BUG。对于大型项目来讲,版本更新相当频繁,每当更新一个版本后就重新进行测试是一项相当繁重的任务,有时甚至当一个版本的测试用例还没有遍历完,新的一个版本就发布了,为了避免这种情况的发生,我们可以借助测试工具来帮助我们消除这些重复性的劳动。除此之外,测试工具具有更高的稳定性、精确性,不会遗漏掉任何一个测试用例,而且可以大量的节省测试的时间。
测试工具的分类
根据不同阶段的测试,对应有不同的测试方法以及测试工具。基本的测试工具包括:测试设计工具、静态分析工具、单元测试工具、功能测试工具、性能测试工具和测试过程管理。下面我来简单介绍一下各种测试工具之间的差别以及应用场景。
测试设计工具
此种工具的作用主要是用于测试用例的设计。它又具体分为两类。
- 基于代码的测试用例设计工具
- 基于需求说明的测试用例设计工具
基于代码的测试工具要求读入程序源文件,对其中的代码结构进行分析,之后产生测试输入数据进行测试。此种工具的缺点是由于工具要对程序代码进行分析,因此往往一种工具只能对应一种或一类特定的语言。
基于需求说明的测试用例设计工具要求首先把需求说明转化成工具所能理解的格式,之后由工具对转化后的需求说明进行分析,生成测试用例。说生成测试用例的质量直接取决与需求功能说明书的质量。
静态分析工具
静态分析工具也是对程序代码本身进行测试,它通过检查代码对程序的数据流和控制流信息进行分析,找出系统缺陷,同时可以检查出代码中命名不规范的地方。它主要具有两个功能:程序的复杂性和规范性。
单元测试工具
单元测试工具主要通过模拟程序的输入和预期结果进行比对,来提高程序的质量,它一般在一个单元的开发完成之后,由开发者自行对模块尽心单元测试。他是提高软件质量的基石。
功能测试
在本篇开头中说提到的情况往往发生在功能测试这个阶段,由于版本的发布而对新旧功能进行重新审查的过程叫做回归测试。功能测试自动化工具是回归测试所主要用到的工具,通过它的脚本录制和回放功能可以大大减轻测试人员的工作量,此外它还具有可编程行和检验功能,使得测试起来更加灵活。典型的功能测试自动化工具有:Rational Robot也是我下面要研究的一款工具。功能测试自动化工具的使用主要步骤包括:准备录制、进行录制、编辑测试脚本、调试脚本、回归测试中运行、分析结果、报告问题。
性能测试工具
简单说来性能测试工具就是为了模拟软件实际工作中所可能产生的高并发、不稳定的网络带宽、有限的服务器资源等环境。性能测试也叫做压力测试或容量测试。它的测试内容主要包括:系统的相应时间、事务处理速度以及和时间敏感的需求。
测试过程管理工具
它贯穿了真个软件测试过程,包括制定测试计划、测试用例设计、测试执行、缺陷跟踪等。它管理整个测试过程中所产生的文档、数据统计、版本信息等。此类管理工具一般采用WEB系统,因为它易于访问修改,便于团队之间的沟通协作。
补充说明
借助这些测试工具不仅可以提高我们的测试效率,而且能够更加有效的组织管理整个软件的测试流程。但是不要以为能够熟练使用这些测试用例就是软件测试的全部,过渡的依赖工具会使我们忽略了除技术以外我们仍然需要做的工作。只有通过不断的经验积累,学习软件测试过程的管理和改进,提高自身技术素养才能真正成为一个软件测试工程师,说到底工具只是辅助。当然就我目前的情况看来还没有使用一款测试工具,今天只是对测试工具的分类有个大体的了解,日后会慢慢熟悉一些工具的具体使用。
浙公网安备 33010602011771号