在实施测试活动时,测试工程师需遵循软件测试的基本原则。经过软件工程、软件测试理论几十年的发展与总结,概括出7条软件测试基本原则。

一、 测试证明软件存在缺陷
无论何种测试活动,其目的都是为了证明软件存在缺陷。通过测试活动可以减少软件中存在未被发现缺陷的可能性,降低漏测风险,但即使通过测试未能发现任何缺陷,亦不能证明被测对象不存在缺陷。

在实际工作中,开发人员在测试工程师不能发现缺陷后,经常会说被测对象已经没有任何问题了,这种观点是极其错误的。

二、 不可能执行穷尽测试
软件是运行在硬件基础上的逻辑实体,在复杂多变的环境中,任何运行环境发生变化都可能导致缺陷的产生,除了小型系统,利用穷举法进行测试是不可能的。

通过风险分析、被测对象测试点优先级分析、软件质量模型及不同测试方法的运用来确定测试关注点,从而替代穷尽测试,提高测试覆盖率。

三、 测试应尽早启动、尽早介入
防患于未然,缺陷越早发现,修复的成本越低。为了尽早发现缺陷,在软件系统生产生命周期中,测试(评审)活动应尽早介入。通常情况下从项目立项开始,每个阶段都进行评审活动。

四、缺陷存在群集现象
引用经济学中的二八原则,一个软件系统的核心业务及功能往往只占系统的20%左右,但这20%模块的缺陷数量可能占了整个系统的80%左右。测试过程中人力、时间、资源分配比例应根据系统业务功能的优先级匹配,并在测试活动结束后,根据缺陷分布情况再进行调整。

在实际测试过程中,不可均分测试资源,需考虑测试投入及风险控制,可使用基于风险或操作剖面的测试策略重点测试。

五、 杀虫剂悖论
害虫经过几轮药物毒杀后,其后代将产生抗体,杀虫剂不再有效。同样的道理,测试用例经过多次迭代测试后,将不能再发现缺陷。

为了解决“杀虫剂悖论”,测试用例需定期评审、及时调整,可根据软件质量特性结合被测对象的业务场景,设计新的测试用例来测试,从而发现更多潜在的缺陷。

六、 不同的测试活动依赖于不同的测试背景
不同的测试背景、测试目标,需开展不同的测试活动。例如,电子商务业务系统与金融证券产品的测试方法可能不一样,安全性测试与兼容测试性测试方法不一样。针对不同的测试背景,采用恰当高效的测试活动,是实施有效测试活动的一个重要环节。

七、不存在缺陷的谬论
当被测对象无法满足用户需求时,即使该系统无任何缺陷,也不能称为高质量的软件。不能满足用户期望的系统即是无用系统。系统无用时,发现与修改缺陷是毫无意义的。实施测试活动时,一定要考虑用户背景。

一部时尚酷炫的手机操作对于老年人而言可能显得费解,即使功能无任何问题,但解决不了老年人的易学易用性问题。

在实施测试活动时,测试工程师需要时刻关注测试目的及所需遵循的原则,利用测试目的及原则指导测试计划、方案及执行过程,从而提高测试效率。

软件测试遵循的基本原则相关推荐

  1. 软件设计应该遵循的基本原则有哪些?

    1.1)高内聚.低耦合 一个软件系统要有一个稳定的架构,不会随着需要的改变在发生巨大的变动.因此,高内聚.低耦合是一个软件系统设计中必须遵循的基本原则. 所谓高内聚,是指一个软件模块内各个元素彼此结合 ...

  2. 10kv电压互感器型号_10kv电流互感器的一次电流选择应遵循的基本原则

    奥科远电器点击左上角奥科远电器加关注10kV电流互感器的额定一次电流载选择时,应遵循的基本原则总结如下: 1.10kV电流互感器一次电流应满足负荷的要求,并应在标准值中选取. 其标准值为10,12.5 ...

  3. 计算机主机故障检测原则,1.计算机故障处理应遵循的基本原则有哪些? 爱问知识人...

    计算机故障处理应遵循的基本原则有: 1. 先软件后硬件的原则 先软件后硬件原则指的就是,当您的电脑发生故障时,应该先从软件和操作系统上来分析原因,排除软件方面的原因后,再开始检查硬件的故障.一定不要一 ...

  4. 网络安全等级保护制度遵循的基本原则

    2004年9月15日,由公安部与其他单位联合下发<关于信息安全等级保护工作的实施意见>(66号文件),明确信息安全等级保护的核心是对信息安全分等级.按标准进行建设.管理和监督.信息安全等级 ...

  5. 信息安全系统所需要遵循的基本原则有哪些?

    随着时代的发展,网络技术逐渐深入到我们的生活之中,很多数据都会存放在网络上,这些数据的安全存储关系到的方面有很多.尤其是对于企业来说正确的进行信息安全存储是十分重要的,所以大多数企业都会选择应用信息安 ...

  6. P15 - 信息系统测试 之 应遵循的八大基本原则

    [软考-软件设计师-历年真题-2013年上半年上午基础知识] 在设计测试用例时,应遵循(35)原则. (35)A.仅确定测试用例的输入数据,无需考虑输出结果 B.只需检验程是否执行应有的功能,不需要考 ...

  7. 软件测试部分习题答案

    一. 单选题(共35题,每题1份) ( B)方法根据输出对输入的依赖关系设计测试用例 A.路径测试 B.因果图 C.边界值分析 D.等价类 下面哪项工作是制定进度计划的基础( B) A.网路图 B.工 ...

  8. 第二章软件测试基础知识

    2.1  软件测试发展历程  软件测试伴随着软件的产生而产生.早期软件开发过程中,软件规模小,复杂程度低,软件开发过程相当混乱无序,软件测试含义也比较窄,等同于"调试".此时软件测 ...

  9. 软件测试,软件测试练习题

    第1章 软件测试基础 答案私聊学习是自己的事情 一.填空题 1.软件从"出生"到"消亡"的过程称为________. 2.早期的线性开发模型称为________ ...

最新文章

  1. SAP HANA:持续创新十周年
  2. 《WinForm开发系列之控件篇》Item33 NotifyIcon(暂无)
  3. Asp.Net Core 2.1+的视图缓存(响应缓存)
  4. centos vsftp mysql_CentOS6.4 实现基于mysql的vsftpd
  5. 【BMC_patrol常见问题汇总】Console License生成
  6. 1951-2021年至今全国气象数据(逐日、逐月、逐年)
  7. iTunes 12.7降级
  8. ESP8266在局域网和互联网下的使用
  9. 第三方支付分类方式综述
  10. java实现京东云第三方登录
  11. Unity3d资源反编译. AssetBundle格式简析+简单应用+爬坑
  12. 机器学习入门 - Google的机器学习速成课程
  13. invalidate()和postInvalidate() 的区别及使用
  14. Rabin Karp 算法详解及Python实现
  15. Chapter1.3:控制系统的仿真介绍
  16. android 12 源码编译与虚拟机调试
  17. 从阿里安全峰会看它如何为安全奠基石
  18. 谷粒商城 (二十八) --------- 仓储服务 API 仓库管理
  19. JAVA CRC16校验
  20. Failed to start LSB: Bring up/down networking 终极解决方法

热门文章

  1. 今年上半年消费市场趋势_您今年需要了解的8种趋势
  2. 报错Field Mapper in xxx.xxxServiceImpl required a bean of type ‘dao.xxxMapper‘ that could not be found
  3. lombok常用注解
  4. 【其他】神舟精盾K470-i3 D3更换支持5GHz的双频无线网卡
  5. 为老年人熟悉智能手机的APP
  6. 怎样批量修改图片名称,一键处理
  7. 我分析了b站10万条弹幕,发现了歪嘴战神的终极奥义!(文末重磅福利)
  8. ZooKeeper知识点整理
  9. 无线调试——免除数据线的干扰
  10. 信息过剩而注意力稀缺的时代需要的是专注