别人问问题的帖子,随便打了一些,说说自己的看法。
原帖:http://bbs.51testing.com/thread-475716-1-1.html
1.测试过程中怎样才能提高缺陷发现率,使测试的问题尽量在第一、二轮发现,降低每轮层出不穷的bug数?
缺陷发现率,更多的要了解程序和业务,换句话说,你是否了解开发的软件和开发的人。如果有单元测试、集成测试等,到测试人员手里,大部分的问题应该都解决了的,但是现在很少能做到,更多的是开发人员做完了就给测试,前期缺少甚至没有文档,开发人员的水平也高低不同,责任心更是天差地别。
在这样的条件下,测试人员能做的,只能保证自己的部分,比如更多的研究已有的文档,更细致的了解需求,收集曾经有过的问题,等等。
提高缺陷发现率,更多的不在测试这里,是一个整体流程才能更好的保证。测试人员不保证软件质量,那是QA的事情,测试的责任在发现程序存在的缺陷。
其实大部分情况下,软件开发完,质量就固定了,测试只是在到处漏水的桶上,告诉做桶的哪里有洞,到处打打补丁而已。
2.怎样才算一轮测试结束,可以达到测试结束标准?
一轮测试结束和测试结束是两回事的吧。通常有用例,把用例执行一遍,就可以说一轮测试完毕了;没有测试用例,把各个模块测试一遍也算一轮。
测试结束标准看公司的规定。比如没有致命的缺陷,剩下的缺陷不影响软件功能等等,看公司的标准。没有标准的,测试和开发扯扯皮,通常在进度的压力下,手松松有问题的软件也就那么过去了。反正大部分的软件,有问题也大多能对付过去。实在不行,客户的压力比测试有效很多,测试通常没有很大的权力去控制软件的走向。
3.对于对于比较隐蔽的缺陷,怎样才能尽早发现?
还是第一个的问题一样,既然隐藏,那么就需要了解需求和软件。没有发现就不不知道,发现了也就没什么隐藏一说了。其实感觉隐藏的缺陷更多的是测试人员自己爽一下,说看看,这么曲折的问题I find it。测试人员都觉得隐藏的问题,客户发现的几率会更小的。
隐藏的问题,通常测试用例等方法不很有效,用探索性这样的测试方法,对付这样的问题应该更有效率。