什么是测试?
测试是评估系统或其组件的过程,目的是查找系统或其组件是否满足指定的要求.简而言之,测试正在执行一个系统,以便根据实际要求识别任何间隙,错误或缺少需求.
根据ANSI/IEEE 1059标准,测试可以是定义为 - 分析软件项以检测现有和所需条件(即缺陷/错误/错误)之间的差异并评估软件项的功能的过程.
谁测试?
这取决于项目的过程和相关的利益相关者.在IT行业中,大公司有一个团队负责根据给定的要求评估开发的软件.此外,开发人员还进行称为单元测试的测试.在大多数情况下,以下专业人员参与测试各自能力范围内的系统并减去;
软件测试人员
软件开发人员
项目负责人/经理
最终用户
不同公司根据其软件测试人员,软件质量保证工程师,QA分析师等经验和知识测试软件的人员有不同的名称.
无法在循环期间的任何时间测试软件.接下来的两节说明何时开始测试以及何时在SDLC期间结束测试.
何时开始测试?
提前开始测试可以减少返工的成本和时间,并生成交付给客户的无差错软件.但是,在软件开发生命周期(SDLC)中,测试可以从需求收集阶段开始,一直持续到软件部署.
它还取决于正在使用的开发模型.例如,在瀑布模型中,正式测试在测试阶段进行;但在增量模型中,测试在每次增量/迭代结束时执行,整个应用程序在最后进行测试.
测试在SDLC的每个阶段以不同的形式完成;
在需求收集阶段,需求的分析和验证也被视为测试.
在设计阶段审查设计以改进设计也被视为测试.
开发人员在完成代码时执行的测试也被归类为测试.
何时停止测试?
很难确定何时停止测试,因为测试是一个永无止境的过程,没有人可以声称软件是100%经过测试的.以下几个方面应考虑停止测试过程 :
测试截止日期
完成测试用例执行
完成功能和代码覆盖到某一点
错误率低于某个水平且未发现高优先级错误
管理层决策
验证&验证
对于大多数人来说,这两个术语非常混乱,他们可以互换使用.下表突出显示了验证和验证之间的差异.
Sr.No. | 验证 | 验证 |
---|---|---|
1 | 验证解决了问题:"你正在构建它吗?" | 验证解决了这个问题:"你在建造正确的东西吗?" |
2 | 确保软件系统满足所有功能. | 确保功能符合预期的行为. |
3 | 首先进行验证,包括检查文档,代码等. | 验证后验证发生,主要涉及检查整个产品. |
4 | 由开发商完成. | 完成者测试者. |
5 | 它有静态活动,因为它包括收集评论,演练和检查以验证软件. | 它有动态活动,因为它包括根据要求执行软件. |
6 | 这是一个客观的过程,验证软件不需要主观决定. | 这是一个主观的过程,涉及软件运作良好的主观决定. |