软件测试

2018-12-20 15:49:56

什么是软件测试:

        什么是软件测试:

        一般来说,软件测试是用来鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。

        在进行软件测试之前首先要针对需求进行评审,评审的目的有很多,比如针对对需求提出的功能有没有技术方面的难点,提出的需求开发的大致周期是多少,评审发现的问题及解决方案等等。在评审结束时由项目负责人编写测试计划,根据需求估算测试所需资源(人力,设备等)、所需时间、功能划分、如何合理安排分配等。当任务分配下来我们测试就要针对分配的需求提出测试点,在针对测试点写出用例方案,特别注意的是在写用例的时候要多考虑异常场景,毕竟这也是我们测试和开发的不同之处。用例设计完之后可根据情况进行交叉执行,执行时对每个用例记录测试结果,有bug的在测试管理工具中编写bug记录。追踪BUG,直到关闭BUG。当测试的BUG都解决时,根据软件上线的时间来决定进行回归测试和不完全回归测试,当没有重大BUG到达上线要求时,输出测试报告

 

软件测试的7大原则

测试尽早介入

    测试应尽早介入,在需求阶段就能找出需求与设计方面的bug,从而降低后期的研发、修复成本

完全测试是不可能

随着科技的发展以及用户需求,现在的软件测试规模越来越大,测试难度也有增加,变得相对复杂,所以想做到完全测试是不实际的。即使是有时候软件的规模和复杂度不那么大,但是要做完全测试也是不太实际的。只能说,软件测试人员会尽可能的根据风险以及优先级来决定进行集中测试和高强度测试,从而达到保证软件质量的目的。

测试只证实软件存在缺陷

这个很多人也许不理解,但是确实软件测试只能证实软件中存在bug,但这并不代表软件中不存在其他bug,软件测试人员只能降低软件存在bug的可能性和概率。测试人员只能证明软件中存在bug,但并不能证明软件中没有bug,或者说软件是完美的。只能说,软件测试人员找出软件中大部分bug,避免软件在上线后给用户带损失,给公司带来不必要的麻烦。

缺陷集群性(2/8原则)

          Pareto原则表明“80%的错误集中在20%的程序模块中。实际经验也证明了这一 点,通常情况下,大多数的缺陷只是存在测试对象的极小部分。缺陷并不是平均而是集 群分布的。因此,如果在一个地方发现了很多缺陷,那么通常在这个模块中可以发现更 多的缺陷。因此,测试过程中要充分注意错误集群现象,对发现错误较多的程序段或者 软件模块,应进行反复的深入的测试。

杀虫剂悖论

    软件测试一般都是刚开始测试的时候,bug一个接一个的提,慢慢随着测试进度的推进,发现的bug就会越来越少,到最后不能够发现bug。我为什么说不能发现bug,而不是说没有bug呢?因为即使测试人员也不能保证软件中完全不存在bug了,那为什么存在中明明不存在缺陷,而测试人员就是发现不了呢?这是因为测试人员对bug产生了免疫能力,就算是一个bug放在测试人员面前,测试人员也不一定能发现。这就像害虫对杀虫剂产生了免疫,杀不死一样的。

测试活动依赖于测试内容

    相信不少测试人员曾经在面试过程中都有遇到做软件测试什么最重要这样的问题,应该大多数人都知道对测试人员来说需求是最重要的,这对于公司来说就是业务。根据业务的不同,软件测试内部也分不同的行业。行业不同,测试活动的开展也不同:工具的选择、测试流程都不同。

没有bug就是好的谬论

没有bug,对软件测试人员来说是奢望。

  那没有bug的软件就是好的软件吗?我们要明确,判断一个软件的好或者不好,主要依据是用户需求,用户体验和是否实现了用户所要的结果在针对测试点写出用例方案,在写用例的时候要多考虑异常场景,毕竟这也是我们测试和开发的不同之处。

文章推荐

18513225162 028-86306808
华尚信合
TOP