本节书摘来自华章计算机《 测试反模式:有效规避常见的92种测试陷阱》一书中的第1章,第1.3节,作者:(美) Donald G. Firesmith 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.3 什么是缺陷

系统缺陷(defect,非正式地称为bug)是系统或组件的瑕疵或弱点,可能会导致它以意想不到的、不想要的方式来表现或展现出意外的、不必要的特性。缺陷与以下内容相关但有所不同:

  • 错误 人为引起缺陷的错误(例如,编程错误或输入不正确的数据)
  • 故障 是在系统内部而不是从系统边界之外直接可见的不正确的条件(例如,系统存储不正确数据或者是处在不正确的模式或状态)
  • 失效 使系统明显不正确的表现或具有不正确的特性的事件或条件(即它的一个或多个表现或特性不同于利益相关者所合理预期的)

常见缺陷的例子包括以下瑕疵或弱点:

  • 缺陷可能会导致SUT违反明确的(或不明确)需求,包括:
    -- 功能性需求
    • 数据需求
    • 接口需求
    • 质量需求
    • 架构、设计、实施和配置约束
  • 当SUT符合不正确或不必要的需求时也可导致缺陷。
  • 缺陷可导致SUT:
    • 不能表现应该的行为
    • 遗漏应该具有的特性
    • 表现它不应该有的行为
    • 具有不该有的特性
  • 缺陷会导致SUT与架构或设计不一致。
  • 不正确或不恰当的架构、设计、实施、配置决策会导致缺陷。
  • 缺陷可以违反设计准则或编码标准。
  • 缺陷可以是安全或安保漏洞(例如,使用固有不安全的语言功能或未能验证输入数据)。

《 测试反模式:有效规避常见的92种测试陷阱》——1.3 什么是缺陷相关推荐

  1. 测试反模式冰激凌模式的不足_单元测试反模式,完整列表

    测试反模式冰激凌模式的不足 我前段时间写过有关OOP中的反模式的文章 . 现在该写单元测试反模式了,因为它们也存在,并且有很多. 我将尝试在列表中包括我知道的每个示例. 如果您认识其他任何人,请通过请 ...

  2. 五种 Ajax 反模式:避免常见的 Ajax 代码陷阱!

      developerWorks 中国  >  XML | Web development  > Ajax 和 XML: 五种 Ajax 反模式 避免常见的 Ajax 代码陷阱 文档选项 ...

  3. 测试驱动开发系列之五--测试的模式与反模式

    14.1喋喋不休的测试反模式 刚刚接触TDD或者刚开始写单元测试的人倾向于重复一些相同的错误.这些常见的但是会降低生产力的模式称作反模式"antipattern".可以通过应用四阶 ...

  4. 反模式:神仙大类和黄金大锤

    数学中有正数和负数 物理学有『物质』和『反物质』的存在 武侠小说中有九阳神功也有九阴真经 生活中有婚姻也有出轨 ...... 事物总是充满这种相互矛盾而统一的有趣现象. 对于GoF提出的23种设计模式 ...

  5. 设计模式杂谈——模式与反模式之争

    摘要:探究事物的反面性是一种哲学上的思考,物理学在"物质"之上提出并证实了"反物质"的存在,就像数学上有正数也有负数,武侠小说中有九阳神功也有九阴真经,生活中有 ...

  6. 规避软件架构风险之反模式

    在QCON大会上,Michael Nygard,以及 李伟专家都提到了一个概念,容错能力. 衡量软件架构最佳的一个很重要的因素就是看软件的容错能力.没有容错能力的软件,哪怕你QA都非常优秀,但一发生故 ...

  7. 重构是提高可测试性的主要手段 《设计模式》《代码重构》《从重构到模式》 《反模式》 重构时机 编写测试时候 修改BUG时候

    l重构是提高可测试性的主要手段 <设计模式><代码重构><从重构到模式> <反模式> 重构时机 编写测试时候 修改BUG时候

  8. 如何避免8种常见的敏捷反模式对你的团队造成伤害?

    作者:Søren Pedersen Agile是科技领域最流行的概念之一. 其理论于2001年首次被提出,它包含了几个框架,如eXtreme Programming.Crystal或Lean Soft ...

  9. [译] How to NOT React:React 中常见的反模式与陷阱

    原文地址:How to NOT React: Common Anti-Patterns and Gotchas in React 原文作者:NeONBRAND 译文出自:掘金翻译计划 本文永久链接:g ...

最新文章

  1. 【Luogu】P4462异或序列(莫队)
  2. System.Math.Min(System.Threading.Interlocked.Increment(i), i - 1)
  3. mybatis源码学习
  4. redis复制_Redis复制
  5. HTML5 文本语义元素
  6. 使用“/proc”系统调试多线程程序挂死的问题:
  7. 三相全控tc787触发电路_单相逆变三相交流电源怎么办?变频器的三相交
  8. 昨晚我把900W+数据,从17s优化到300ms
  9. 杭电计算机接口实验报告,杭电新闻
  10. MOSSE相关滤波目标跟踪论文
  11. 计算机ipv4地址修改方法,电脑ip地址的修改方法步骤图
  12. 恩智浦智能车竞赛电磁直立组国一之速墨二队2018回顾与总结
  13. 塑胶模具注塑常用哪些材质
  14. windows_帮助文档【.CHM电子书】打开显示空白解决办法
  15. U盘数据损坏了不要慌,这两种方法可以轻松找回数据
  16. AngularJS controller调用factory
  17. 老男孩教育50期学员
  18. hbase snappy 安装_hbase自带snappy压缩测试出错
  19. 认识一下身边的互联网---经典互联网书籍阅读总结
  20. 国产操作系统都有哪些功能?普通人能满足日常使用吗?

热门文章

  1. 对linuxptp软件移植到arm下遇到的问题进行记录
  2. count时结果 hive_hive的count(distinct id)测试--慎用
  3. linux时间 a x z,关于linux的命令一个莫名的想法,a到z有哪些命令
  4. Vivado 随笔(6) Timing Summary 相关讨论(一)
  5. IC/FPGA笔试题分析(五)
  6. 【FPGA】单端口RAM的设计(异步读、异步写)
  7. 【 C 】队列 简记
  8. 网络传输模型(概念)
  9. 数据标准化处理,data.mean和data.std
  10. mysql autocommit问题导致的gtid同步变慢