软件工程中的测试技术学习

软件工程中的测试技术学习
一、 概述

测试的目的是试图说明一个程序可以做我们期望它所做的工作和在投入使用之前发现程序的缺陷。
如图1.1把被测试系统看作一个黑盒子,这个系统接收来自输入集合Ⅰ的输入数据,在输出集合0中产生输出结果。一些输出结果可能是错误的,这些错误输出在集合0e中,这些结果是由于集合Ⅰe中的输入而产生的。在缺陷测试中,优先去发现在集合Ⅰe中的输入,因为这会暴露系统的问题。有效性测试需要正确的输入来进行测试,这些输入是来自Ⅰe之外的。

1.1 程序测试的输入-输出模型
如图1.2是一个“传统”测试过程的抽象模型,用在计划驱动的开发中。测试用例是对一个输入和特定环境下的期望的输出以及所测试的对象的一个描述,测试数据是为了测试系统而设计的输入。在一些情况下测试数据可以自动产生。但自动测试用例生成是不可能的,因为了解系统应该怎样执行的人必须对期待的测试结果给出定义。测试可以自动执行,预期的结果自动地和预测的结果相比较,所以在测试过程中不需要人来查找错误和异常。

1.2 软件测试过程模型
一个商业软件系统要经过3个阶段的测试:
1.开发测试,即在开发中进行系统测试来发现故障和缺陷。在测试过程中很可能设计系统设计师和程序员。
2.发布测试,即一个测试小组对一个系统的完整版本进行测试,然后发布给用户。发布测试的目的是审查系统是否满足系统信息持有者的要求。
3.用户测试,及系统的用户在他们自己的环境中测试这个系统。
在实践中,测试过程通常既包含手工测试也包含自动测试。在手工测试中,测试人员用一些测试数据来执行程序,然后将结果和预期结果进行比较并报告给程序开发人员有差异的地方。在自动测试中,测试是通过一个程序去执行的,该测试程序会一遍遍地执行正在开发的系统。这个过程通常比人工测试速度快&#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值