第三部分:测试开发
输入:被测软件、基于测试需求的测试设计
输出:测试过程和测试用例
目标:
1、创建可以重用的测试过程和测试用例
2、维护测试过程、测试用例与相关测试需求的一一对应。
测试开发的问题:
1、测试开发很乱,与测试需求或测试策略没有对应性
2、测试过程不可重复或不可重用
3、测试过程被作为一个编程任务来执行,导致脚本太长,不能满足软件移植性的要求。
错误处理
当测试过程发生错误时,有几种解决办法:
1、跳转到别的测试过程
2、调用一个能够清除错误的过程
3、退出过程,启动另一个
4、退出过程和应用程序,重新启动启动Windows,在失败的地方重新开始测试
测试开发的步骤
1、设立开发环境
SQA Suite
连接到SQA存储库
启动SQA Baisc或VB
被测软件
等等
2、录制和回放原型过程
原型过程指出所有未知窗口控制,使得他们都能象标准窗口那样动作或者没有特别的动作,把他们都划归为Generic类型。通过这个过程,SQA Robot就知道该怎样处理应用中的特殊控制。
1、把recording option 中的Define Unknown Object as Type Generic选项设置为off
2、使用的过程标识符要可以被覆盖,或者能被删掉。因为这只是个原型,用来教SQA Robot 录制的过程
3、录制测试过程和测试用例
1、录制模块测试过程和与测试需求最低层对应的测试用例;
2、录制初始化过程;
3、录制导航过程,把前面的过程串起来;
4、测试和调试测试过程
5、修改测试过程(可选)
6、建立外部数据集合
如果测试过程是用来循环一套输入和输出数据,就需要建立数据集合。
7、重复测试和调试测试过程,回到4
第四部分:测试执行
测试执行的问题
1、自动化测试没有有效的利用,使得手工测试太多。
2、测试结果的捕获没有系统性,而且没有查看或调查
3、缺陷报告必须用手工加入缺陷跟踪系统
错误分类
1、测试用例失败
正常错误
2、脚本命令失败
当测试过程不能不能执行录制过程中的某个功能时,回产生这种错误,如鼠标单击按钮或选择菜单项等。它也能指示是缺陷还是测试过程的设计问题。
3、致命错误
导致测试停止,这种情况最好重起Windows。
具体步骤:
1、建立测试系统
2、准备测试过程
3、运行初始化过程
4、执行测试
5、从终止的测试恢复
6、验证预期结果
7、调查突发结果
8、记录缺陷日记
第五部分:测试评估
测试评估的目标
1、量化测试进程
2、生成缺陷和测试覆盖率的总结报告
测试评估的问题
1、没有把测试覆盖率作为报告测试进程的根据,使得不知测试是否结束;
2、没有做缺陷评估,缺陷评估是量度软件可行性的重要指标;
3、不使用专门的软件工具进行数据输入任务和相应的评估活动,使得这些任务变得繁重累人。
测试覆盖率
评估测试完成多少的标准
缺陷评估
评估软件质量的重要指标,通常评估模型假设缺陷的发现是呈泊松分布的;严格的缺陷评估要考察在测试过程中发现缺陷的间隔时间长短。评估要估计软件当前的可靠性并预测随着测试的继续进行,软件可靠性会怎样提高。
SQA Suite 提供四种形式进行缺陷评估:
1、缺陷分布报告可以生成缺陷数量与缺陷属性的函数。如测试需求和状态。
2、缺陷趋势报告可以看出缺陷增长和减少的趋势;
3、缺陷年龄报告展示一个缺陷处于某种状态的时间长短
4、测试结果进度报告展示测试过程在被测应用的几个版本中的执行结果以及测试周期。
具体步骤
1、回顾测试日记
2、评估测试需求的覆盖率
3、分析缺陷
4、决定是否达到完成测试的标准,没有满足标准时
1、再测试
2、降低标准
3、确定软件的一个满足标准的子集,看是否可以发布。