什么是软件测试?软件测试的目的

如题所述

软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。

软件测试主要工作内容是验证(verification)和确认(validation ),下面分别给出其概念:
  验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing)
  1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;
  2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;
  3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。
  确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Do it right)
  1.静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性;
  2.动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。
  软件测试的对象不仅仅是程序测试,软件测试应该包括整个软件开发期问各个阶段所产生的文档,如需求规格说明、概要设计文档、详细设计文档,当然软件测试的主要对象还是源程序。
程序测试的过程具有破坏性
人类的活动具有高度的目的性,建立适当的目标具有重要的心理作用。如果我们的目的是要证明程序中没有错误,那我们就会不自觉地朝这个方向去做;也就是说,我们会倾向于挑选那些使程序出错的可能性较小的测试数据。另一方面,如果我们的目标是要证明程序中有错,那就会选择一些易于发现程序所含错误的测试数据。而后一种态度会比前者给程序增添更多的价值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-01-02

01 软件测试是什么及为什么很重要

第2个回答  2020-01-09