我们天天在做测试,测试主要的目的是什么?测试主要测试什么?测试在产品开发什么周期开始介入?不同阶段该进行什么样的测试?什么时候结束?测试和产品质量之间有什么关系?
就我个人的经验,站在黑盒测试角度,谈一谈上述问题:
1、测试的主要目的,,最直接的理解当然是发现系统中的bug.
产品转测试之后,测试人员开始进行用例测试,很多时候,我们都是以测试用例完成为目的,但实际上这个观念已经偏离了我们初衷,显然,我们的目的是发现问题,而不是完成测试用例.我们需要在测试过程中,需要经常和开发进行交流,加深对产品内部实现的理解,同时要不断完善修改现有的测试用例,增加新的测试用例,合并太小的用例,拆分太大用例,从而保证用例的质量.对于不能观察到资源,要向开发提交可测试性需求进行观测.测试完成用例,需要归档数据,后续通过自动化测试工具不断执行归档的信息,保证以前功能的持续可用.
2、测试的主要内容,当然是测试产品和客户需求的复合程度,产品的易用程度,产品的稳定程度.
谈到内容,大家自然想到用例执行,但是实际上,用例执行表象,最根本的内容是需求的符合程度,这个本质往往容易被大家忽略,验证需求的过程中,我们往往会涉及产品可测试性以及易用性这些比较隐藏的内在需求,就用例有其局限性,很难覆盖全面这些方面,所以这个时候,一个经验丰富的测试人员就显得尤为重要。另外,当通过用例发现问题的时候,修改起来需要对代码进行伤筋动骨的修改,那么就需要重新审视客户的原始需求,从而决定是否真正存在问题,或者对问题需求的影响程度,作出需要正确的修改结论,这条在项目紧的情况下显得尤为重要。
易用性的关注,必须贯穿于整个产品的需求分析、代码架构设计、代码实现、功能验收阶段,任何时候,测试人员需要站在客户的角度上关注功能易用性。
3、测试的介入时间,必须是产品开始需求分析为最佳时期.
其实前面已经提到,测试人员不能仅仅测试用例,需要从根本上把握客户需求,所以,必须要在产品需求分析阶段就的介入,对于一个全新的领域,多数的时候客户也不能够把握真正想要的东西,那么这个时候,经验丰富的测试人员可以借助于以前其他领域的经验,能够给客户以新的启迪,更或能够引导客户修改需求。
4、测试不同阶段方式,
最后谈一谈测试和产品质量的关系:
那么测试完成,bug都修正了,就是高质量了吗?答案是否定的,问题可能存在系统的任何地方,只要去测试,永远都可能有问题。高质量完美的产品永远都是设计和开发出来的,而不是测试出来的。测试只能改善现有系统的质量,而对于系统是否高质量优秀的,不能轻易下结论,那么最后说了半天,什么才是优秀高质量的系统,我的认为是,符合客户需求的、高效的、稳定的、可靠的、扩展性好的、易用的、易维护的,经过实践验证的且能得到客户认可的,才是算是。
版权声明:本文出自 bfstudy 的51Testing软件测试博客:http://www.51testing.com/?356351
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。