软件测试综述
- 软件测试的原则
1、完全测试是不可能的
原因:
1)输入量太大
2)输出结果太多
3)软件执行路径太多
4)软件说明书是主观的。可以说从旁观者来看是缺陷的
2、软件测试是有风险的行为
软件测试员要学会的关键思想:如何把数量巨大的可能测试减少到可以控制的范围,以及如何针对风险做出明智的抉择,那些测试重要,哪些测试不重要
3、测试无法显示潜伏的软件缺陷
任何情况下都不能保证软件缺陷没有了。唯一的方法就是继续测试,可能还会找到更多
4、找到的软件缺陷越多说明软件缺陷越多
原因:
1)程序员的心情不好
2)程序员往往犯同样的额错误:一个程序员重视容易犯下自己容易犯的错误
3)某些软件缺陷实乃冰山一角:软件 的设计体系常常会出出现基本问题
5、杀虫剂怪事
软件测试越多,其对软件测试的免疫力越强
为了克服杀虫剂怪事,软件测试员必须不断编写新的测试程序,对程序的不同部分进行测试,以找出更多的缺陷。
6、并非所有的软件缺陷都要修复
原因;
1)没有足够的时间
2)不算真正的软件缺陷
很多情况下理解错误和、测试错误或者说明书变更会把可能的软件缺陷当作新功能来对待
3)修复的风险大
软件本身是脆弱的,难以理清头绪,修复一个软件缺陷可能导致其他软件缺陷出现
4)不值得修复
不常出现的软件缺陷和在不常用功能中出现的软件缺陷是可以放过的,可以躲过和用户有办法预防或避免的软件缺陷通常不用修复。
7、难以说清的软件缺陷
遵守软件缺陷定义规则
不能说没有发现软件软件缺陷。
尚未发现或未观察到的软件缺陷只能说是潜在缺陷
8、产品说明书从没有最终版本
产品说明书的改变可能导致计划测试的功能会增加、经过测试并报告软件缺陷的功能可能发射管变化甚至被删除。
9、软件测试员在产品小组中不受欢迎
应对办法
10、软件测试是一项讲究条理的技术专业