软件测试 - 概述

什么是测试?

测试是评估系统或其组件的过程,目的是查找系统或其组件是否满足指定的要求.简而言之,测试正在执行一个系统,以便根据实际要求识别任何间隙,错误或缺少需求.

根据ANSI/IEEE 1059标准,测试可以是定义为 - 分析软件项以检测现有和所需条件(即缺陷/错误/错误)之间的差异并评估软件项的功能的过程.

谁测试?

这取决于项目的过程和相关的利益相关者.在IT行业中,大公司有一个团队负责根据给定的要求评估开发的软件.此外,开发人员还进行称为单元测试的测试.在大多数情况下,以下专业人员参与测试各自能力范围内的系统并减去;

  • 软件测试人员

  • 软件开发人员

  • 项目负责人/经理

  • 最终用户

不同公司根据其软件测试人员,软件质量保证工程师,QA分析师等经验和知识测试软件的人员有不同的名称.

无法在循环期间的任何时间测试软件.接下来的两节说明何时开始测试以及何时在SDLC期间结束测试.

何时开始测试?

提前开始测试可以减少返工的成本和时间,并生成交付给客户的无差错软件.但是,在软件开发生命周期(SDLC)中,测试可以从需求收集阶段开始,一直持续到软件部署.

它还取决于正在使用的开发模型.例如,在瀑布模型中,正式测试在测试阶段进行;但在增量模型中,测试在每次增量/迭代结束时执行,整个应用程序在最后进行测试.

测试在SDLC的每个阶段以不同的形式完成;

  • 在需求收集阶段,需求的分析和验证也被视为测试.

  • 在设计阶段审查设计以改进设计也被视为测试.

  • 开发人员在完成代码时执行的测试也被归类为测试.

何时停止测试?

很难确定何时停止测试,因为测试是一个永无止境的过程,没有人可以声称软件是100%经过测试的.以下几个方面应考虑停止测试过程 :

  • 测试截止日期

  • 完成测试用例执行

  • 完成功能和代码覆盖到某一点

  • 错误率低于某个水平且未发现高优先级错误

  • 管理层决策

验证&验证

对于大多数人来说,这两个术语非常混乱,他们可以互换使用.下表突出显示了验证和验证之间的差异.

Sr.No.验证验证
1验证解决了问题:"你正在构建它吗?"验证解决了这个问题:"你在建造正确的东西吗?"
2确保软件系统满足所有功能.确保功能符合预期的行为.
3首先进行验证,包括检查文档,代码等.验证后验证发生,主要涉及检查整个产品.
4由开发商完成.完成者测试者.
5它有静态活动,因为它包括收集评论,演练和检查以验证软件.它有动态活动,因为它包括根据要求执行软件.
6这是一个客观的过程,验证软件不需要主观决定.这是一个主观的过程,涉及软件运作良好的主观决定.