前言:软件测试人员的工作主要是检测软件系统中的存在的BUG,但并不是毫无逻辑的盲目抓瞎。学会运用测试思维去完成测试工作,会使你的工作事半功倍。
软件测试的前提假设
测试人员进行软件测试的基本假设是“有罪推断”。即:认为被测程序一定是有bug的,而且每个功能点的实现都存在bug,而且一定存在严重的bug。请牢记这个假设。
在实际工作中,一旦在日后的工作过程中产生了这样的认识:“这个功能很简单,肯定不会出现问题,就不再测试了。”或者“这个功能上一轮刚测试过,当时就没有问题,这一轮应该也不会有问题,就不用测试了。”等等诸如此类的意识,那么你就有90%的概率导致漏测,造成线上问题。
其原因也正是这个测试工作的基本前提假设。一旦被违背,就从开端导致了测试工作存在问题,所以真正出现问题的可能性也就很大了。
也正因为如此,我们是无法决定一个软件产品质量的好坏的,只有PM设计出产品需求,RD编码完成,我们才能够通过我们的工作,促进PM、RD改进他们的产品、系统,从而达到产品、系统的高质量。所以,我们才要参与需求评审和设计评审,大家一起努力,各个阶段由专业化的人员来保证阶段的质量,将问题尽量在前期发现。
04测试的内容一定是确定的
软件测试只能验证质量,那么所要验证的内容必然是确定的,或者说是概率确定的,否则也就无从验证了。因此,模糊不确定的需求我们无法验证,输出结果没有任何规律的程序设计我们也无法验证,这就是软件产品的可测性判断。也因此,我们进行需求评审和设计评审时是一定要保证这个基本点的。

05测试的目标不是没有bug
综上所述,进行软件测试的目标不是通过测试使得软件产品不存在bug(这是不可能达成的),而是我们根据确定的需求、确定的设计和确定的测试用例验证出的结果不存在bug。
同样的,测试人员的目标也不是在测试执行过程中去找bug,而是运用测试思维,使用一定的测试方法,尽可能早地在需求阶段、设计阶段将所有的bug找出来,真正测试执行阶段只是验证不存在用例所描述的那样的bug,而不是通过用例去发现bug。
测试人员的工作方法
通过前文的分析,我们可以总结出测试人员的工作方法是:
首先,对需求进行全面深入地分析,接着去分析评审程序设计,假定每个需求的功能点开发人员的实现都是存在问题的;
同时,也假定每一个程序设计的编码实现(无论是方式还是代码写作)都是存在问题的,
然后,根据这些假定设计测试用例,最后执行这些测试用例,验证程序不存在那些问题。
因此,测试人员的工作可以重点描述成:是一个运用测试的思维和各种测试理论及方法,将所测试的软件产品的每一个功能都改变成一组特定的输入和一组特定的输出一一确定对应的形式,形成测试用例,然后待开发人员提交测试后,在测试环境部署被测程序,根据测试用例进行主动测试的过程。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!