什么是软件测试?

作者: 斜杠青年Cindy | 来源:发表于2018-07-09 14:22 被阅读16次

软件测试就是发现软件产品中的Bug,强调测试人员以逆向思维方式,不断思考开发人员可能存在的误区、不良习惯、系统的边界条件、异常输入和操作、系统弱点和漏洞等,更快地发现软件系统的问题。毕竟开发人员力求构造软件,以正向思维方式为主,所以测试人员从逆向思维出发,可以获得更高的测试效率。

软件测试是验证软件产品特性是否满足用户的需求,是以正向思维方式针对软件系统的所有功能点,逐个验证其正确性,这是传统工业的质检工作在软件业的自然延伸。

只有等待代码开发出来之后,通过执行程序,像用户那样操作软件发现问题,这就是“动态测试”。

静态测试就是在不运行软件系统时对软件或阶段性成果进行评审,包括需求评审、设计评审、代码扫描、代码评审等。

软件测试从“动态测试”延伸到“静态测试”,是从狭义的软件测试发展到广义的软件测试,也使“软件测试”不再停留在编程之后的某个阶段上,而是贯穿整个软件开发生命周期(Software Development Life Cycle,SDLC)的质量保证活动。有了广义软件测试的概念,在敏捷开发中,软件测试就能被解释为对软件产品质量的持续评估。在敏捷方法中,不仅提倡持续集成,而且提倡持续测试,持续集成实际上也是为了持续测试。

从国际标准对软件测试的定义来看,软件测试被看做是“验证(Verification)”和“有效性确认(Validation)”这两类活动构成的整体,缺一不可。如果只做到其中一项,测试是不完整的。

(1)“验证”是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性。验证过程提供证据表明软件相关产品与所有生命周期活动的要求相一致,即验证软件实现(即交付给客户的产品)是否达到了软件需求定义和设计目标。

(2)“有效性确认”是确认所开发的软件是否满足用户实际需求的活动。因为软件需求定义和设计可能就不对,上述一致性不能保证软件产品符合客户的实际需求,而且客户的需求也是在变化的,当需求定义是半年前确定的,这种变化的可能性就比较大。

软件测试是贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程,也是对软件产品质量持续的评估过程,其目的是尽快尽早地发现在软件产品(包括阶段性产品)中所存在的各种问题,尽最大可能地消除软件开发过程中所存在的产品质量风险。


相关文章

  • 软件测试基础(一)

    什么是软件测试? 软件测试到底需要学习什么? 了解软件测试的含义 软件测试遵守的准则 软件测试有哪些分类?分别是什...

  • 软件测试

    基础篇 软件测试历史 什么是软件测试 软件测试在整个开发过程中的地位 软件测试要素 软件测试类别 软件测试流程、软...

  • 软件测试基础理论知识

    关键词:测试基础理论1、软件测试的含义(概念)——什么是软件测试2、软件测试的目的(意义)——为什么要做软件测试3...

  • 10K起步的软件测试岗到底需要学什么?零基础进阶自动化测试需要哪

    软件测试的正确路线 1、软件测试基础: 对软件测试整理的测试流程有清晰的概念,了解软件测试到底是做什么的,软件测试...

  • 性能测试和压力测试

    性能测试和压力测试 什么是压力测试 软件压力测试和软件性能测试是不同的,区别在于测试的目的 软件压力测试是为了发现...

  • 什么是软件测试?

  • 什么是软件测试?

    软件测试就是发现软件产品中的Bug,强调测试人员以逆向思维方式,不断思考开发人员可能存在的误区、不良习惯、系统的边...

  • 什么是软件测试

    什么是软件测试? 为了发现软件产品中的各种缺陷,而对软件产品进行验证和确认的活动过程,此过程贯穿整个软件开发生命周...

  • 什么是软件测试

    软件测试定义 在软件应用程序或程序中发现错误,以使应用程序按照最终用户的要求运行的过程或方法称为软件测试。 描述一...

  • 什么是软件测试?

    大家好,我是十一,前段时间应大哥要求为侄女做工作规划,于是有了下面的对话,也就有了今天的文章。 十一:瑞瑞,你想做...

网友评论

    本文标题:什么是软件测试?

    本文链接:https://www.haomeiwen.com/subject/nrzzuftx.html