软件工程复习之软件测试

软件测试核心知识梳理
本文详细介绍了软件测试的五个关键阶段,包括错误类型、测试过程模型和各种测试技术,如黑盒和白盒测试。重点讨论了等价类划分、事务流测试和边值分析法等测试策略,以及测试用例设计的方法。同时,解释了软件测试的目的不仅在于发现错误,而且是保证软件质量和降低风险的过程。

软件测试保证软件过程质量和产品质量的基础。动态评估技术。

经历的阶段(5个 考点)测试与调试区别

  1. 认为软件测试和软件调试没什么区别
  2. 认为测试为了表明软件能正常工作
  3. 认为测试为了表明软件不能正常工作
  4. 测试是为了将已经察觉的错误风险降到一个可接受的程度
  5. 测试不仅仅是一种行为,而是一种理念。即测试是产生低风险软件的一种训练。

测试是主动发现缺陷,而调试是修复已经发现缺陷,所以顺序是测试 --> 调试。(考点)

三种软件测试技术:

  • 基于程序路径的白盒测试技术
  • 基于需求规约的事务流测试技术(黑盒)
  • 等价类划分技术

软件测试的对象?

软件=程序+文档,测试对象就是 程序+文档

软件测试目的?

尽可能多的发现软件当中存在的错误。证明“软件有问题”。

什么是软件测试?

按照特定规程发现软件错误的过程。使用人工或自动手段,运行或测定系统的过程。目的是检验软件是否符合规定的要求,清楚了解预期结果与实际结果之间的差异。
与调试区别:

  • 测试是从一个侧面证明程序员的“失败”,调试证明程序员“正确”
  • 测试以已知条件开始,使用预先定义的程序且有预知的结果。调试一般是以不可知的内部条件开始,结果是不可预见的。
  • 测试要有完备计划,并要进行测试设计,调试不受时间约束
  • 测试要由第三方小组独立完成。在不了解软件设计的条件下完成。调试必须由了解详细设计的程序员完成。
  • 不太常考区别:
    • 测试是一个发现在错误,改正错误,重新测试的过程。调试是一个推理的过程
    • 测试的执行是有规程的,调试的执行往往要求 程序员进行必要的推理
    • 大多数测试的执行和设计可由工具支持,调试时,程序员能利用的主要是调试器。

错误类型

  1. 功能错误,处理功能说明不完整或不确切,致命编程时对功能有误解而产生的错误
  2. 系统错误,与外部接口错误、子程序调用错误、参数使用错误等
  3. 过程错误,算术运算错误和逻辑运算错误
  4. 数据错误,数据结构、实体、属性错误
  5. 编程错误,语法错误、程序逻辑错误、编程书写错误。

测试过程模型?

  • 测试设计,需要建立三个模型
    环境模型:对程序运行环境的抽象
    对象模型:从测试角度对程序的抽象
    错误模型: 对程序中的错误及其分类的抽象
  • 测试执行
  • 测试结果比较

软件测试技术??

分为人工测试和机器测试。机器测试又分为:
黑盒测试:也称为功能测试,只关注接口
白盒测试:逻辑测试或称结构测试

路径测试技术?

一种白盒测试技术
依据程序的逻辑结构
采用控制流程图来表达被程序的模型
合理的选择一组穿过程序的路径来达到某种测量度量。

控制流程图?

表示的程序控制结构图形,基本元素,过程块、结点、判定。

注意:与程序流程图区别。
  • 过程块:没有被判定或被结点分开的语句。
  • 判定:程序点,控制流出现分叉
    结点:也是程序点,汇聚的点,控制流进行了结合。
  • 链:过程块、判定、节点之间具有特定语义的关系。即画带箭头的线
    • 路径:由链组成。包含一串指令或语句,其长度是由链的数目决定。对软件测试而言,从程序入口开始,在出口结束

测试策略???

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

guangod

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值