软件功能性测试的21种故障模型(1-7)
测试的目标是要发现错误,因此在编写测试用例的时候也要遵循这个目标,尽量在软件的最薄弱环节多编写测试用例。虽然测试时有很多单个输入变量、多个输入变量的组合,但优秀的软件测试人员不会依靠运气,他们有着丰富的经验和直觉,可以从中找到哪些是需要进行测试的,哪些不需要测试,哪些操作可能会引起软件失效。把这些测试人员的经验和直觉尽量归纳和固化,就形成了一些故障模型。故障模型指明了故障是如何以及为什么会在软件执行时引起软件失效。在测试过程中,我们可以按照这些故障模型所提供的缺陷类型和寻找该类缺陷的方法找到尽量多的缺陷。
-----------------------------------------------------------------------------------------------------------------------------------------
1 输入非法数据
1.1缺陷产生原因
开发人员通常用以下3种技术来处理非法输入:
Ø 防止不正确的输入进入被测软件。过滤掉不正确的输入,只允许合法输入通过界面。
Ø 输入了不正确的数据后,软件提示错误信息,拒绝不正确的输入。
Ø 允许不正确的输入进入系统并进行处理,软件失效时调用异常处理程序,显示一些错误信息。
可见开发人员除了编写主要的功能代码外,还必须编写对非法输入的检查代码,这些代码经常被遗忘,或者编写完这部分代码后,开发人员很少认真检查,导致处理非法输入经常出错。
1.2如何发现这类问题
进行测试时从输入值的属性出发,一般考虑以下三点:
Ø 输入类型:键入无效的类型常会产生错误信息。
Ø 输入长度:对于字符型,键入太多的字符常会引出错误信息。
Ø 边界值:输入边界值或超过边界值的数据。
1.3测试方法小结
Ø 应用场合:GUI的输入。
Ø 测试方法:分别从输入数据的类型、长度、边界值等方面进行考虑。
Ø 测试信息检查:
l 错误信息和错误要一致。
l 错误信息的内容为空,用户不知道为什么出错。
l