博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通过推理找到眼镜
阅读量:7174 次
发布时间:2019-06-29

本文共 701 字,大约阅读时间需要 2 分钟。

今天上午满屋子找了一个小时也找不到眼镜。这种不显眼的东西,如果戴上眼镜到处望或许能找到,但丢的就是眼镜啊……

这么找不是办法,于是我定下来进行推理。简单分析注意到,眼镜的失踪,分为今早用了眼镜和今早没用眼镜两种情况。如果今早用了,应该就放在我上午的活动范围内;如果今早没用,那就应该在昨晚放的位置。这好像是一句废话,然而只要分别从这两个方向出发,就能得到深入的结论。

回忆一下,今早没用的可能性更大,而没记错的话昨晚是放在床头柜上,但床头柜上并没有。从这个方向推理:经过一夜的时间,眼镜有可能由于偶然原因而偏离了原来的位置,而且此位置不易发现。至于“今早用了”这一情况,因为经历时间较短,偏离原位置的可能性不大,应该就在我活动过的位置。搜寻范围因此大大缩小,并且首要目标是床头柜一带。

事实上,几秒之后,我就在床头柜边上的缝隙中找到了眼镜,估计是被碰得掉落进去了。

可从软件测试的角度来看这个问题。单元测试只需测试一些单纯的条件,只要求代码覆盖度;而更大范围的软件测试则要测试和覆盖各种复合条件。看起来像是要覆盖N*N,乃至N*N*N...种情况,根本测不完,但是常常经过分析能发现,有的条件组合是不可能出现的或者出现的概率很低,这就大大缩小了测试范围。——如果我今早用了眼镜,那么眼镜不可能出现在我的活动范围外,而且偏离放置位置的概率较低如果我今早没用眼镜,那么眼镜肯定在我昨晚放置的位置,很可能是在床头柜且有可能偏离了放置位置,到了一个不易发现的位置(所以这么久找不到),但不大可能偏离太远,于是几秒后就在床头柜边上的缝隙找到了。

其实这个原理已经被软件测试理论界反复研究过了,本文只是提供脑洞。

转载地址:http://nudzm.baihongyu.com/

你可能感兴趣的文章
rpm,yum,权限
查看>>
tomcat应用转到weblogic上时的问题
查看>>
vSphere 5.5 vCenter迁移至分布式交换机
查看>>
第二次作业
查看>>
viewport ——视区概念
查看>>
拓扑规则翻译函数(转)
查看>>
数据结构--图的定义和存储结构
查看>>
linux常用命令
查看>>
Appium自动化测试1 - 安装部署
查看>>
Bzoj 1648: [Usaco2006 Dec]Cow Picnic 奶牛野餐 深搜,bitset
查看>>
C# For Bot Framework
查看>>
UVa294 Divisors
查看>>
洛谷P3406 海底高铁
查看>>
1、JUC--volatile 关键字-内存可见性
查看>>
管理Linux日志文件工具
查看>>
Windows下bat脚本判断端口是否可用
查看>>
oracle创建表
查看>>
解决 Eclipse build workspace 慢,validation javascript 更慢的问题
查看>>
jquery ajax验证用户名是否存在(后台spring mvc)
查看>>
solaris x86安装ORACLE 11.2.0.3软件时因SWAP不足报错: INFO: ld: fatal: mmap anon failed
查看>>