先说软件测试行业的划分,一是黑盒测试或者叫功能测试、手动测试,二是白盒测试或者测试开发等。黑盒测试,含金量低,测试人员学的测试工具较少。白盒测试,现在软件行业越来越重视白盒测试,白盒测试要求会写代码,通常只是写一些脚本或者开发测试工具,Python、Shell、Perl常用于写测试脚本,当然如果公司内部以Java为主要编程语言的话,还是得学习java,总而言之就是,至少学习一门编程语言。
根据不同阶段的测试,对应有不同的测试方法以及测试工具。基本的测试工具包括:测试设计工具、静态分析工具、单元测试工具、功能测试工具、性能测试工具和测试过程管理。
下面我说一下为何要用这些工具。
首先是测试设计工具,此种工具主要是用于测试用例的设计。它又分为两类;分别是基于代码的测试用例设计工具,它主要是读入程序源文件,对其中的代码结构进行分析,之后产生测试输入数据进行测试;另一个是基于需求说明的测试用例设计工具。它首先把需求说明转化成工具所能理解的格式,之后由工具对转化后的需求说明进行分析,生成测试用例。
第二个是静态分析工具,它是对程序代码本身进行测试,它通过检查代码对程序的数据流和控制流信息进行分析,找出系统缺陷,同时可以检查出代码中命名不规范的地方。
第三个是单元测试工具,它主要通过模拟程序的输入和预期结果进行比对,来提高程序的质量,它一般在一个单元的开发完成之后,由开发者自行对模块进行单元测试。它是提高软件质量的基石。
第四个是功能测试自动化工具,它是回归测试所主要用到的工具,通过它的脚本录制和回放功能可以大大减轻测试人员的工作量,此外它还具有可编程行和检验功能,使得测试起来更加灵活。
典型的功能测试自动化工具有:Rational Robot,功能测试自动化工具的使用主要步骤包括:准备录制、进行录制、编辑测试脚本、调试脚本、回归测试中运行、分析结果、报告问题。
第五个是性能测试工具,它是为了模拟软件实际工作中所可能产生的高并发、不稳定的网络带宽、有限的服务器资源等环境。
性能测试也叫做压力测试或容量测试。它的测试内容主要包括:系统的相应时间、事务处理速度以及和时间敏感的需求。
第六个是测试过程管理工具,它贯穿了整个软件测试过程,包括制定测试计划、测试用例设计、测试执行、缺陷跟踪等。它管理整个测试过程中所产生的文档、数据统计、版本信息等。此类管理工具一般采用WEB系统,因为它易于访问修改,便于团队之间的沟通协作。
所以说借助这些测试工具不仅可以提高我们的测试效率,而且能够更加有效的组织管理整个软件的测试流程。换句话说使用测试工具可以让我们少加很多班。