软件测试小结(一)——基本概念

软件测试定义

软件测试就是手工或通过使用工具自动地运行被测软件系统或静态检查被测软件系统,其目的在于验证被测软件系统是否满足需求,或弄清实际输出于预期输出之间的差异。
软件测试永远是围绕需求所展开的。

软件开发的四个步骤

  1. 定义需求(委托方)
  2. 分析需求(双方)
  3. 实现需求(开发方)
  4. 校验需求(测试人员)

通常,在软件开发生命周期中,应该尽早介入测试工作。目前普遍流行在分析需求阶段介入。

软件测试的四个步骤

  1. 计划:根据文档(需求规格说明、概要设计文档或详细设计文档)和项目计划制定测试计划。
  2. 设计:设计测试用例和测试方法。
  3. 实施:根据测试用例配置测试环境、设计驱动模块,最后运行测试,检验结果,寻找缺陷。
  4. 评估:评估测试工作的质量、评估被测软件系统的质量。

手工动态测试的基本步骤

  1. 提供被测对象
  2. 准备相关预期(即各种文档)
  3. 设计测试用例
  4. 搭建测试环境
  5. 运行测试用例
  6. 检验执行结果
  7. 记录执行过程
  8. 报告发现缺陷
  9. 执行回归测试

手工静态测试的基本步骤

  1. 提供被测对象
  2. 准备相关预期
  3. 审阅代码、文档
  4. 报告发现缺陷

可以看到静态测试相较于动态测试步骤更少,看上去更容易实施,但是静态测试对技术人员要求更高,在后文中会详细讨论。

测试用例

由于实际的软件测试要在质量、成本和时间三者之间均衡考虑,实际软件测试往往是基于风险最低、效率最高分而治之的原则来设计的。因而,就需要有测试用例的出现。
测试用例就是指能代表需求的小的测试单元,它描述用户的预期输出,描述系统的实际执行结果。主要包括三个部分:输入、输出和测试环境。

软件测试模型

软件测试模型主要有瀑布模型、V模型、W模型和H模型四种。

瀑布模型

瀑布模型
传统瀑布模型仅仅把测试过程作为在需求分析、概要设计、详细设计、编码之后的一个阶段,这种划分通常会导致缺陷发现的较晚从而导致修复成本高。

V模型

V模型

V模型改进了传统瀑布模型的缺点,在开发阶段一侧,先从定义业务需求开始,然后把需求转换为软件规格,再转换到概要设计和详细设计中,最后进行编码成为程序代码。在测试执行阶段一侧,先进行单元测试,然后是集成测试,系统测试,最后是验收测试,这些测试形成了软件测试的不同层次(级别),并与开发过程的相应阶段相对应。

W模型

W模型
W模型由两个“V”重叠而成。其中一个“V”表示开发过程,包括需求分析、概要设计、详细设计、编码实现、模块集成、系统构建、系统安装等阶段。另一个“V”表示测试过程,包括需求测试、概要设计测试、详细设计测试、单元测试、集成测试、系统测试以及验收测试等活动。软件测试的各项测试活动与开发过程的各个阶段相对应。
这是目前广泛应用的软件测试模型,指出软件测试在需求分析阶段就应该介入。

扫描二维码关注公众号,回复: 10502502 查看本文章

H模型

H模型
H模型强调把测试分为测试准备和测试执行两个不同的阶段,只要由于其他流程的进展引发了测试就绪点的到位,这时候,只要测试准备不能完成,测试执行活动就可以或者需要开展,在H模型当中,强调测试是一个完全独立的模型,所以可以和其他的流程交叉地进行,也便于我们尽早的执行测试。

软件测试是不完备的

软件测试是不完备的、有风险的。软件测试只能找出软件中的缺陷,不能保证软件中完全没有缺陷。一个好的软件测试过程是发现了迄今为止没有发现的缺陷。

测试方法评价标准

测试方法设计目标应当是在最短时间内以最少的人力,有利于发现最多的,以及最严重的缺陷。因此,因此方法评价标准有以下五条:

  1. 精确的:测试针对性要强(测试用例数量要少)
  2. 完备的:测试覆盖要全面、无漏洞(覆盖需求、覆盖风险)
  3. 无冗余:测试用例所关联的需求和风险应当有区别
  4. 简单的:测试方法应当简单易实施
  5. 易于调试:缺陷定位难度小
发布了6 篇原创文章 · 获赞 0 · 访问量 87

猜你喜欢

转载自blog.csdn.net/qq_33584870/article/details/105325691