24 WHEN CAN WE STOP TESTING?
24 WHEN CAN WE STOP TESTING?
2015-09-25
THERE IS NO simple way of deciding when a system is completely tested. Most authors agree that there is no single criterion we can use in order to decide that we have fi nished the job. Here are some variants of opinion.
24.1 Five Criteria for Completion of Testing
According to Lee Copeland, there are five elementary criteria which, together, are usually used for decided when you can stop testing. 109 These are when:
- We have achieved the coverage aims we defined in the strategy
- The number defects discovered is lower than the boundary value we defi ned
- The cost of detecting more defects is larger than the estimated loss arising from remaining defects.
- The project team draws the collective conclusion that the product is ready to be released.
- The decision maker gives the order to go to production.
There is a multitude of weaknesses in these criteria when taken one at a time:
- The aim of reaching a certain level of coverage may run the risk of driving the testers towards writing fewer or inferior test cases, simply in order to manage running everything.
- Not discovering any more defects may be down to us not testing in the right way, or the best testers being on holiday, but it does not necessarily mean that there are no more defects.
- The cost being more than the benefi t of more test cases is a highly subjective evaluation which the tester is certainly not qualifi ed to make: this is more a business issue.
- The consensus of the team may be a relatively better measure since, here, we discuss matters with developers, testers and people familiar with the operation together.
- The last criterion is a deadline which is decided outside the testers’ domain, and actually has nothing to do with how well we have tested, but rather builds on a pure business judgement that we have to release the product by a certain date.
24.2 Good-Enough Quality
James Bach describes an approach he calls Good-Enough Quality, which he summarises with the following four points which must all be fulfilled:
- It has enough benefits
- It has no critical problems
- The benefits suffi ciently outweigh the drawbacks
- In the situation at hand, with all things considered, further testing and improvements would do more harm than good.
To arrive at the above, we can explain each part in a little more detail. Ask the following questions:
- Which specific advantages does our product have? How great is the likelihood that one of our target customers will make use of a particular advantage? How important is each advantage? Which parts are critical? Are all advantages good enough for our target customers when taken together?
- What potential problems does our product have? How great is the likelihood that one of our target customers will be exposed to a particular problem? How damaging can each problem be? What problems are wholly unacceptable? Are all problems, when considered together, too many for our target customers to be satisfied?
- Does the product have enough advantages so that the drawbacks that happen to arise are few enough? How good does the product have to be in order to be accepted by the customers?
- In what ways could we improve the product? What would this mean for our costs? Is there the possibility of delivering now, and then delivering improvements later? Precisely what advantages would
24 WHEN CAN WE STOP TESTING?的更多相关文章
- software quality assurance 常见问题收录
1. What is Quality? Quality means, “meeting requirements.” ..Whether or not the product or service d ...
- GoLang中 json、map、struct 之间的相互转化
1. golang 中 json 转 struct <1. 使用 json.Unmarshal 时,结构体的每一项必须是导出项(import field).也就是说结构体的 key 对应的首字母 ...
- Ethical Hacking - NETWORK PENETRATION TESTING(24)
Detecting suspicious activities using Wireshark You can use make the MAC address of the router to st ...
- 24个很赞的 Node.js 免费教程和在线指南
JavaScript 最初是用来创建动态网站效果的的前端语言.而如今,这门脚本语言也可以用作后端开发,用于搭建 Web 服务器,开发接口,甚至创建博客.在下面这个列表中包括24个 Node.js 教程 ...
- Google Code Jam 2010 Round 1C Problem B. Load Testing
https://code.google.com/codejam/contest/619102/dashboard#s=p1&a=1 Problem Now that you have won ...
- Unit Testing a zend-mvc application
Unit Testing a zend-mvc application A solid unit test suite is essential for ongoing development in ...
- [译]36 Days of Web Testing(五)
Day 23 禁用CSS Disable CSS 为什么 ? CSS,层叠样式表,是用来定义web页面布局和显示的机制.通过修改CSS样式,可以改变整个页面的外观. 但是有一些人,因为之前的选择或者 ...
- [React Testing] The Redux Store - Multiple Actions
When using Redux, we can test that our application state changes are working by testing that dispatc ...
- 24个JavaScript初学者最佳实践
这里面说到的一个就是使用循环新建一个字符串时,用到了join(),这个比较高效,常常会随着push(); 绑定某个动作时,可以把要执行的绑定内容定义为一个函数,然后再执行.这样做的好处有很多.第一是可 ...
随机推荐
- Java里面类型转换总结
1.String 转 int int i = Integer.valueOf(my_str).intValue(); int i = Integer.parseInt(str); 2.String 转 ...
- 数据库插入数据返回当前自增主键ID值的方法
当我们插入一条数据的时候,我们很多时候都想立刻获取当前插入的主键值返回以做它用.我们通常的做法有如下几种: 1. 先 select max(id) +1 ,然后将+1后的值作为主键插入数据库: 2. ...
- PHP判断{函数/类/方法/属性}是否存在
1.php判断系统函数或自己写的函数是否存在 bool function_exists ( string $function_name ) 判断函数是否已经定义,例如: if(function_exi ...
- Mac下的 /private 是个什么目录?
Mac下的 /private 是个什么目录? 学习了:https://www.zhihu.com/question/19582264/answer/125522314 有图有真想
- 淘宝网前端开发面试题(二)--JS 面试题
所有答案仅供参考,不负责答案对错(^_^) 1.js 是什么,js 和 html 的开发如何结合? js是javascript的缩写,是一种基于对象的.事件驱动的脚本语言.它一共由三个部分组成:分别是 ...
- <The Art of Readable Code> 笔记一
第1章 代码应易理解 (Code should be easy to understand) 基本原则:好的代码,能够减少 “别人” 理解它的时间. “别人” 不仅指的是 “其它人”,也可能是 “以 ...
- 六个前端开发工程师必备的Web设计模式/模块资源
Yahoo的设计模式库 Yahoo的设计模式库包含了很多可以帮助开发设计人员解决遇到的问题的资源,包括开发中常常需要处理的导航,互动效果及其布局网格等大家常用的组件和模块 响应式设计模式库 这个响应式 ...
- Android_三种菜单介绍
Android的菜单分为三种类型:选项菜单(Option Menu).上下文菜单(Context Menu).子菜单(Sub Menu) 一.选项菜单 当用户单击设备上的菜单按钮(Menu),触发事件 ...
- The application is in break mode
在安装使用Visual Studio 2017后,当代码出现异常的时候,它没有调到代码出错的地方,显示了下图.. 解决办法:打开 Debug——>Options——>,勾上 Use Man ...
- [MSP430]入门之中的一个 总体认识
这是由TI公司推出的一款比較单片机, 相对stm32来说简单些, 由于它是16位的, 所以我们在学习中可能也会像51一样, 直接操纵寄存器. TI设计这款单片机的初衷是, 让它用于低功耗的嵌入式设 ...