1. 测试应基于客户需求(简单来说就是一切都要遵循软件的需求来测试)

所有的测试工作都应该建立在满足客户需求的基础上,从客户角度来看,最严重的错误就是软件无法满足要求。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。

2. 测试要尽早进行

软件的错误存在于软件生命周期的各个阶段,因此应该尽早开展测试工作,把软件测试贯穿到软件生命周期的各个阶段中,这样测试人员能够尽早地发现和预防错误,降低错误修复的成本。尽早地开展测试工作有利于帮助测试人员了解软件产品的需求和设计,从而预测测试的难度和风险,制订出完善的计划和方案,提高测试的效率。

3. 穷尽测试是不可能的

由于时间和资源的限制,进行完全(各种输入和输出的全部组合)的测试是不可能的测试人员可以根据测试的风险和优先级等确定测试的关注点,从而控制测试的工作量,在测试成本、风险和收益之间求得平衡。

4. 遵循GoodEnough原则

GoodEnough原则是指测试的投入与产出要适当权衡,形成充分的质量评估过程,这个过程建立在测试花费的代价之上。测试不充分无法保证软件产品的质量,但测试投入过多会造成资源的浪费。随着测试资源投入的增加,测试的产出也是增加的,但当投入达到一定的比例后,测试的效果就不会明显增强了。因此在测试时要根据实际要求和产品质量考虑测试的投入,最好使测试投入与产出达到一个GoodEnough状态。

5. 测试缺陷要符合“二八”定理

缺陷的“二八”定理也称为Pareto原则、缺陷集群效应,一般情况下,软件80%缺陷会集中在20%模块中,缺陷并不是平均分布的。因此在测试时,要抓住主要矛盾,如果发现某些模块比其他模块具有更多的缺陷,则要投入更多的人力、精力重点测试这些模块以提高测试效率。

6. 避免缺陷免疫

我们都知道虫子的抗药性原理,即一种药物使用久了,虫子就会产生抗药性。而在软件测试中,缺陷也是会产生免疫性的。同样的测试用例被反复使用,发现缺陷的能力就会越来越差;测试人员对软件越熟悉越会忽略一些看起来比较小的问题,发现缺陷的能力也越差,这种现象被称为软件测试的“杀虫剂”现象。它主要是由于测试人员没有及时更新测试用例或者是对测试用例和测试对象过于熟悉,形成了思维定式。

要克服这种情况,就要不断对测试用例进行修改和评审,不断增加新的测试用例,同时,测试人员也要发散思维,不能只是为了完成测试任务而做一些输入和输出的对比。

7、质量第一

软件测试必须遵循“质量第一”的思想去开展工作,当时间和质量冲突时,时间要服从质量。

8、软件测试计划是软件测试的前提

9、第三方测试会更客观更有效

10、测试应该从小规模逐渐转向大规模

11、重视文档、妥善保存一切测试过程中的文档

12、必须彻底检查一一个测试结果

13、对测试错误结果一定要有一个确认的过程

14、对发现错误较多的程序段,应该进行更深的测试,‘一般来说,一段程序中,已发现的程序越多,其中存在的错误概率也就越大。

15、回归测试的关联性一定要引起充分注意,修改一个错误而引起更多错误出现的现象并不少见。

注意:编写测试用例是一项体力活动,其是将设计好的测试用例通过语言的形式表现出来;设计测试用例是一项脑力活动

技能提升

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….

【温故知新系列】软件测试原则的7个基本原则相关推荐

  1. 软件测试原则的6个基本原则

    文章目录 1.测试应基于客户需求 2.测试要尽早进行 3.穷尽测试是不可能的 4.遵循GoodEnough原则 5.测试缺陷要符合"二八"定理 6.避免缺陷免疫   软件测试经过几 ...

  2. 软件测试系列---软件测试基础

    软件测试系列--软件测试基础 1.什么是软件测试? **软件测试是一个过程,包含了若干活动,运行软件进行测试只是活动之一**进行软件测试可以人工方式也可以借助于工具**进行软件测试可以运行软件也可以不 ...

  3. 大家一起学面向对象设计模式系列Chapter 02 软件设计的基本原则

    我们为什么要使用设计模式呢?有人可能会说为了设计出"高内聚低耦合"的软件."高内聚低耦合"的软件实际上也就是本文所说的具有可维护性和可复用性的软件. 这篇文章主 ...

  4. 软件测试常见概念(软件生命周期、软件开发模型、软件质量模型、软件缺陷管理、软件测试概述、软件测试分类、软件测试与软件开发、软件测试原则、黑盒测试方法、白盒测试方法、性能测试)

    文章目录 1. 软件概述 1.1 软件生命周期 1.2 软件开发模型 1.2.1 瀑布模型 1.2.2 快速原型模型 1.2.3 迭代模型(增量模型或演化模型) 1.2.4 螺旋模型 1.2.5 敏捷 ...

  5. Learn-设计模式系列-①七大原则

    设计模式 文章目录 设计模式 @[toc] 七大原则之-: 单一职责 接口隔离原则 依赖倒转原则 例子: 改善后: 补充:依赖关系传递的三种方式和应用案例 里氏替换原则 开闭原则 例子 迪米特法则 合 ...

  6. 软件测试-七项测试的基本原则

    过去 50 年来,人们提出了一些测试原则,并为所有测试提供了通用的指南 原则 1 测试说明缺陷的存在,而不能说明缺陷不存在 测试可以证明存在缺陷,但不能证明不存在缺陷.测试降低了软件中存在未发现缺陷的 ...

  7. (六)温故知新系列之RXJS——RXJS操作符基础(转化类)

    前言 合并类操作符把多个数据流汇合为⼀个数据 流,但是汇合之前数据是怎样,在汇合之后还是那样:过滤类操作符可以 筛选掉⼀些数据,其中回压控制的过滤类操作符还可以改变数据传递给下 游的时间,但是数据本⾝ ...

  8. 测试理论系列——软件测试分类

    软件测试分类图示 一.按测试阶段划分 1.单元测试( Unit Testing) 又称模块测试,针对软件设计中的最小单位-程序模块,进行正确性检查的测试工作. 单元测试需要从程序内部结构出发设计测试用 ...

  9. 测试理论系列——软件测试模型

    测试模型包含: V模型 W(双V)模型 H模型 V模型 V模型是最具有代表意义的测试模型,最早是由Paul Rook在20世纪80年代后期提出,由英国国家计算机中心 文献中发布,旨在改进软件开发的效率 ...

最新文章

  1. Goodbye 2020,Welcome 2021 | 沉淀 2021
  2. mysql环境搭载后老出错_使用Docker在window10下搭建SWOFT开发环境,mysql连接错误
  3. 你知道生气有多可怕吗?“气死人”是有科学依据的
  4. 基本BASH SHELL脚本命令——Linux系统管理命令-检测程序、检测磁盘空间
  5. 正面刚谷歌苹果,diss了BAT及友商,商汤科技说自己是一只“黑羊”
  6. MySQL-5.6.x二进制版本安装记录
  7. 微信小程序入门1-小程序代码构成json
  8. linux 常用命令 -- 系统管理工具包: 监视邮件的使用情况
  9. 如何让测试RFC2544更便捷——RFC2544测试实操
  10. 基于Android 平台简易即时通讯的研究与设计
  11. 罗永浩是个挺能折腾的人
  12. 微信公众号推送天气教程,自动定时推送【Java版】开发者和小白详细教程
  13. 6-ipv6基础知识之-有状态和无状态自动配置
  14. 前端构建工具_构建工具
  15. 2016.2.10-2.24 中关村图书大厦实习--图书管理系统;
  16. linux服務器重啟後自動啟動java項目的腳本配置
  17. C语言实现科学计算器
  18. 根据编号规则生成规则编号
  19. 放弃51单片机直接学32是因为51难找工作?
  20. fix feeds/telephony/net/freeswitch/Makefile

热门文章

  1. Python “今日新闻”一个小程序,拿走就能用!
  2. 基于机器学习的人民日报和微博等与疫情有关话题数据两极情感分析
  3. 架构师之路18年精选100篇
  4. 某人的手机卡被猫吞后
  5. 计算机专业数字逻辑考试题,数字逻辑试卷及答案.doc
  6. Java代码实现n的阶乘
  7. 交换机如何进行交换?三种交换机交换方式介绍
  8. 派生类构造函数的执行顺序
  9. java 枚举的学习和使用
  10. -Dmaven.multiModuleProjectDirectory system property is not set