来自知乎的转载之--测试

作者:知乎用户

链接:https://www.zhihu.com/question/24345678/answer/56087737
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

其实测试工作不一定只能通过软件工程进行理解,实际上,现实生活里我们都没有逃脱测试的魔爪,咱们就通过“陪老婆/女友逛商场”这个示例,比较一下几种测试方法之间的区别~~

黑盒测试:老婆从商场的某一个入口进入,你在商场外面等待,这时候商城对你来说就像一个不透明的黑盒子,你并不知道商场内发生了什么,你也不去关心里面发生什么,你只知道如果一切运转正常,结果是老婆带着一堆商品从某一个出口(可以与入口相同)出来。这是原定正常的情况,这时候我们就不需要管商场里面发生了什么,只需要知道老婆进去转了一圈,你的这月工资报销了,一切正常,这就OK了。否则,在多次逛商场(多次黑盒测试)过程中,频繁发生无法达到正常结果的情况,例如老婆与人发生争执、老婆带的钱不够、老婆有选择困难需要与你协商等情况的发生,这就需要相关人员(你)通过别的检测手段进到商场(黑盒)里进行检查解决了。

白盒测试:老婆从商场的某一个入口进入,你随着陪同进入商场,全程陪伴,这时商场对你来说是个白盒子,就是透明的,你可以看到他内部的全部细节。这时你要观察老婆购物的每个细节,了解其走过的每一步,发生的每个小情况,随时准备应对支付、拎包、与人对骂、按摩揉腿(我。。。已经写不下去了。。。)等突发事件,记录整个期间出现错误需要修正的问题(当然,整个过程你也不免出现走神情况,例如偷看别的美女,错过老婆喜欢某种商品的信号,结果可能就是重测。。。也就是再逛一遍),最后结果是,你抱着一堆商品陪着老婆从某一个出口出来,这月工资还是报销了。

单元测试:老婆进入商场后,专门盯着某一个专卖店,查看其是否有新品、是否有活动,一天去三次,一周去三天,一月去三周,各级别VIP全办齐,面对任何一个店员都可以刷脸,达到对该专卖店了如指掌,对店铺的任何细节都确保万无一失之后,再转向下一个专卖店……

压力测试:响应打折号召,原本互不认识的老婆们瞬间组成联盟,组团进入商场进行大量扫货,每天进行,天天坚持,持续一段时间,看商场是否顶得住,观察这种压力下商场是否会出现断货、服务员暴走、刷卡机宕机等问题。

性能测试:这个概念比较广,包括整个商场的运转稳定性,如能否做到每天开业、24小时开业、服务员被大妈折磨后的情绪控制能力等;商场安全性,保安能否保护顾客安全、防火防盗措施、小三专用逃生通道(例如程序里的特殊值、边界值处理)等。

因此,其实软件测试并不是什么新鲜的概念,我们在现实生活中,一直在对各大商场进行“集成测试”,大量的商场被老婆团们以各种苛刻的测试手段所淘汰。因此,各位都是伟大的测试人员,并且,这项测试是永久存在的,永不宕机的,不要幻想产品终版发布的那天到来。

共勉。

--------------------------------------------------------

2015.9.20补充吸收@Jasin Yip的建议,提一下回归测

每当店铺根据顾客需求(bug记录)上线了新品(修改bug)之后,老婆们需要到该店铺,进行全方位从新检查是否出现新的购物机会,并体验该店铺全部功能是否正常,如刷卡。。。不放过任何一丝消费的机会。。。

2015.10.12补充@Julia Jo 冒烟测试(Smoke Testing):

经过我认真阅读(你信吗)冒烟测试的概念,我脑中浮现出如下画面。当我跟随老婆进入商场后,发现有几处新装修或新开张的店面,我与老婆立刻呈现出截然相反的面部表情,欢喜与惊恐,接下来进入店面(不可能出现无视路过的情况。。。),由于对这个新店面所知较少,所以没有既定计划,只是根据店面应该提供的服务(软件功能),进行随意闲逛、随意询问店员、挑选商品、疯狂砍价(如果具备此服务~)、完成支付(在劫难逃啊)等行为,整个过程并无特殊针对性,只是围绕店面应该存在的服务随意体验(测试),这好像是女生逛街的基本模式吧~如果发现哪里不合心意(无意中发现bug,即冒烟),基本上会立刻失去兴趣,呈斜眼撅嘴状(停止测试),等待再次装修后再来闲逛~

UAT测试:版本1. 老婆对长期坚守的某个商场非常有信心,因此就对家人、朋友、同事、陌生人一致推荐此处,于是各路被忽悠组队而来的“某某”观光团进入商场进行购物(测试),并表达购物感言(反馈)。版本2. 换个角色~你的男/女友,对你完成长期测试(我也不知道都要测试什么--)后,感觉这段感情可以上线运行了,于是就将男/女友带到家中,由家人进行测试审核(感觉有点跑题。。。),然后家人群体表达测试结果~

总之:不同的测试方法有不同的侧重点,虽然名称差别很大,也许实际上只是细微的形式上的差异。然而如同陪老婆逛街一样,虽然各种形式差别不大,并且结果都是一样(当月工资报销~),但是当我们对这些事情(我真的指的是测试。。。)从事过大量的重复体验之后,会发现,就是这一点点细微的差异,在面对不同的测试需求时却是那么的恰如其分。

反正这些测试方式不是强硬规定出来的,而是刚好这种测试能够测出当前存在的问题,所以需要进行某个方式的测试。所以,深入了解不同测试方式的侧重点,然后在适当的时候选择最合适的测试方式,最终发现隐藏的问题,这,才是核心价值。哪怕你用在教科书中没有的方式也是可以的,比如自己写测试脚本等。

就这样吧,看我写的多认真(完全没看出来),给个赞再走啊~

原文地址:https://www.cnblogs.com/ForceBaker/p/8598312.html

时间: 2024-10-27 15:24:35

来自知乎的转载之--测试的相关文章

smack api 转载未测试

===============================================================主动发送信息给某个用户------------------------------------XMPPConnection.DEBUG_ENABLED = true;//设置服务器地址XMPPConnection conn = new XMPPConnection("127.0.0.1"); conn.connect();//输入账号和密码登陆conn.logi

[转载]聊聊测试管理

转载自"山丘的测试之道" : 聊聊测试管理(管事篇)   管理:管人+管事. 说到管理,其实就是团队,没有团队,就谈不上管理.个人理解,对个人而言,更多应该是计划,而非管理.做管理的时间并不长,或者说很短,可能很多地方理解的有问题.写这篇文章也是为了能更多的与大家交流,也是记录下在目前这个阶段我的理解.(本文均以在创业型公司工作为背景),全篇分为管事篇跟管人篇. 管事篇 一.测试的工作流程. 关于这个点,其实网络上一搜一大堆,大体都差不多,需求分析,测试计划,设计测试用例,评审用例,执

转载 素性测试

原文地址https://www.douban.com/note/271270932/ 对一个数是n否为素数的判断可以从2到根号n依次去除n,如果n能被其中一个整除则说明n不是素数,否则n是素数.还可以用厄拉多塞筛法,采用构造素数表的方式,从2起,依次列出后续数字,如果某个数是前面数字的倍数,则从表中删除,即删掉所有素数的倍数,最后得到的表就是一个全是素数的表.用于程序实现的话,可以设置一个栈,初始时栈内只有一个元素2,令从3起依次累加,并判断如果i不是栈内任何一个数的倍数,则令i进栈,否则继续循

[转载]压力测试工具siege的用法

压力测试工具siege 原文:http://blog.csdn.net/qingye2008/article/details/34500949 Siege是Linux下的一个web系统的压力测试工具,支持多链接,支持get和post请求,可以对web系统进行多并发下持续请求的压力测试. 安装 Siege 01 02 03 04 #wget http://www.joedog.org/pub/siege/siege-latest.tar.gz #tar -xzvf siege-latest.tar

[转载] 外包测试管理与实践--计划篇

本文围绕这一主题,主要从外包测试服务提供商的角度,探讨外包测试项目的管理方法及实践经验.为了便于读者阅读和理解,笔者将分计划.组织.领导.控制四个篇章来展开论述.   外包测试管理之计划篇 灵活选择外包测试服务的方式及合同类型 实施外包测试首先要确定采取什么样的形式.目前外包测试服务提供商(以下简称“外包公司”)提供的服务方式主要包括“现场测试”和“外部测试”.“现场测试”是指外包公司派遣测试人员到发包方的公司现场工作,开展测试业务.而“外部测试”是指在外包公司将发包方的单子(相关待测产品)拿回

转载:无线测试

本文来源于:http://myeyeofjava.iteye.com/blog/2191124 无线测试是软件测试的一个分支,是针对于无线设备的一种质量保证的活动,例如:Android&IOS手机,Google眼镜,苹果汽车,无线路由等质量保证测试均属于无线测试范畴. 我国从2008年起,第一部智能手机进入中国,开始掀起无线技术的浪潮,突出代表的事件为,Nokia的破产,Kodak的倒台,于此异军突起的互联网产品为,Android智能手机,以Google为代表的无线技术革命,以及Iphone智能

Ubuntu - 硬盘分区、格式化、自动挂载配置(纯属转载 但是测试可行)

运行环境 | Enviroment Ubuntu 10.10 一.硬盘分区 | Hard disk add new partition 1.显示硬盘及所属分区情况.在终端窗口中输入如下命令: sudo fdisk -lu 显示当前的硬盘及所属分区的情况.如下图所示:系统提示:DIsk /dev/sdb doesn't contain a valid partition table. 2.对硬盘进行分区.在终端窗口中输入如下命令: sudo fdisk /dev/sdb 如下图所示:在Comman

Web测试Selenium:如何选取元素

Web测试工具Selenium:如何选取元素 2009-02-17 23:23 by 敏捷的水, 5372 阅读, 22 评论, 收藏, 编辑 selenium是一个非常棒的Web测试工具,他对Ajax支持非常好,本人强烈推荐. 测试里很重要的一部,就是定位页面的元素,selenium提供如下强大的定位元素的方法. id=id name=name dom=javascriptExpression xpath=xpathExpression link=textPattern css=cssSele

Chromimu与JS交互的测试

http://blog.csdn.net/grassdragon/article/details/51659798 Chromimu与JS交互的测试 2016-06-13 18:30 55人阅读 评论(0) 收藏 举报  分类: Chrome 版权声明:本文为博主原创文章,未经博主允许不得转载. 测试一 为解决ExecuteJavascript无法得到返回值的问题,尝试采用JS Dialog和OnJsDialog的方法. 测试结果:可以采用此法传递Js的结果值. JS alter('abc');