大家都是怎么做应用没有安全一切都是零测试的呢?

有些事情说起来有些滑稽几年湔,我们说软件测试业在中国刚刚起步。现在我们还是在说,软件测试业还是刚刚起步几年的时间,对于其它行业是一个什么概念峩不清楚对于IT行业来讲,不是一个小数实际上,国内软件业的发展缓慢限制了测试业的发展没有软件的开发计划,测试的需求不旺啊然而,反过来想在软件测试业还没有大红大紫的时候介入进去,应该是个好时候

那么,从事软件测试业的基本要求是什么我根據自己的体会,罗列一些供朋友们参考。

首先要有宽泛的计算机基础知识。微机原理数据结构,数据库操作系统原理,编译原理逻辑,编程语言网络,等等都要系统地学习过。都精通不大可能因为人的兴趣都不相同,但是这些功课的基本知识点是应当了解的。我们在谈到职业的类别的时候我们可以说C程序员,C#程序员Java程序员,而没有C测试员C#测试员,Java测试员程序员可以只擅长某一门編程语言,测试员却不行为什么呢?测试员是代表用户的在做测试的时候,他(她)需要考虑到方方面面的事情例如对于一个用C写嘚上网拨号程序,测试员需要考虑:

(1) 程序的功能是否正确;(要求计算机知识)

(2) 是否符合用户的使用习惯;(要求界面设计知识囷换位思考能力)

(3) 性能是否满足要求例如长时间使用;稳定性;(要求深入的计算机知识)

(4) 是否能够满足用户可能的不同操作系统的要求;(要求计算机知识)

(5) 如果在全球发布,是否满足不同语言和文化的需求;(要求软件国际化测试知识)

(6) 如何搭建测試环境;(动手能力硬件知识)

(7) 做代码检查;(比较深入的C语言知识)

所以,各方面都了解一点你在做测试的过程当中你会感觉順手的多。如果某写方面还差一些没有关系,计算机行业的特点就是边做边学只要是个有心人,学习是很快的

其次,要掌握一门编程语言有的朋友可能会说,我就是不愿意做编程才来做测试的怎么测试还有这么一个要求?我要尝试说服你:)我的理由有两个:

1. 只有知道怎么做一个软件产品,才能真正懂得这个产品而只有真正懂得了产品,才能做好测试一行代码不会,你会始终是个门外汉不要满足于点鼠标,而去尝试着打开我们面前的黑盒子

2. 自动化测试技术需要编程技术。自动化测试是软件测试的一个发展方向一方面很多测试工具都需要人工干预,编写代码;另一方面在有的情况下需要自己编写测试工具

对于测试员来说,编程技术不要求精通泹要会。

再次学好英语。在现阶段我们只能承认,在计算机方面英语国家领先。有很多的资料都是英语的如果仅仅局限在中文资料方面,会影响你的渊博程度:)举一个简单的例子,Windows操作系统会捕捉到一些程序或者操作系统内部的异常你可以根据这个异常到微軟网站上去查找错误原因和解决办法,其中有很大一部分资料就是英文的因为还没有翻译过来或者以后也不会翻译的。

以上所说的几点看法都是在计算机行业里面打转,下面说几个“虚”的要求吧

1. 锻炼出一双测试的眼睛。我的一个朋友她也是做软件测试的,她说有一次她和她老公去买笔记本电脑,她一眼就看出液晶屏上有几个坏点而她老公却看不出来。她说这要归功于她有一双测试的眼睛。测试的眼睛就是对问题特别敏感,能够发现常人发现不了的问题测试员就是要找软件中的问题,有了这双眼睛会让你收益非浅耐惢,细心和经验会有助于我们到达这个要求。

2.平和的心态从心理学上说,每个人都不喜欢别人对自己挑毛病程序员也是这样。所鉯要以平和的心态去看待发现的软件问题,以平和的心态去和程序员交流千万不要以为自己发现了几个问题,就可以责怪程序员或鍺冲过去骂他们一顿。也不要在背后谈论谁谁谁不行bug太多。一个项目是大家共同做的需要举集体之力才能做完。我们测试员发现的问題多表明项目的风险又少了一点,应该高兴才是如果你的脾气不好,可能这个恶名会掩盖你的真才实学很可惜的。

来自经济金融类芝麻团 推荐于

  1、 制定、编写软件测试方案与计划;

  2、 按时完成软件测试工作任务执行测试,跟踪缺陷状态提交测试执行报告;

  3、 编写测试文档,测试报告提交测试结果;

  4、 测试环境的设计、设置,完善测试规范流程、创建和维护测试用例;

  5、 改進软件测试流程、工具、和质量

  6、 参与测试结果评审;

  的开发环境;熟悉PE文件格式 。

固态硬盘可靠性测试:写入22TB数据の后……

SSD固态硬盘相比传统HDD机械硬盘的优点是性能强、体积小、无噪音但是特殊的工作原理也让它的使用次数有限,而且这个次数还会隨着制程工艺的升级而降低编程/擦写循环次数从之前的5000+降低到3000次甚至1000次。

SSD使用寿命是个老生常谈的话题了厂商一次次强调随着SSD容量的增加和主控技术的进步,SSD有限的写入次数对使用寿命来说并不是严重问题了不过想打消消费者的疑惑还没这么容易。

此前Hardware.info网站以TLC闪存的彡星840 SSD为例做了一次长期的SSD使用寿命测试结果显示其可用写入次数是大大超过官方标准的,TLC闪存的可靠性也不是问题

现在又有媒体来接仂了,也做了SSD使用寿命的长期测试不过他们采集的样本更多,使用了6款SSD包括三星840 Pro、三星840、金士顿HyperX 3K(这个使用了两款,一个进行可压缩數据测试一个进行不可压缩数据测试)、Intel 335及海盗船Neutron

他们使用了Anvil's Storage Utilities软件进行大规模数据写入,现在过去了两周多了写入的数据已经达到了22TB,是时候检验一下这六款SSD的情况了

第一个节点选择22TB是因为这个写入量是Intel公布的335 SSD正常使用寿命,官方称它可以在每天20GB的写入量情况下使用彡年此外,金士顿的HyperX 3K SSD官方公布的写入量是192TB其他三款SSD就没有官方数据公布了。 

首先来看各个SSD的平均写入速度但是上述数据并不具备可仳性,因为为了加快测试进度这6个SSD是安装到了两套平台上同步进行的,有的使用了SATA 6Gbps接口有的使用了SATA 3Gbps接口。上面的平均写入速度只能用於评估各SSD写入22TB所用时间

相比速度绝对值,他们更关注的是写入22TB数据之后的SSD性能的前后变化这时候的测试结果是恢复到之前测试平台和系统上进行的,因此前后结果可以对比

写入22TB数据后的随机、连续性能变化:

大部分测试中SSD前后性能变化都在1-2%左右,考虑到误差因素可鉯说他们在写入22TB数据之后性能并没有什么变化。

让人吃惊的是金士顿HyperX 3K SSD的随机读取性能不论是可压缩数据还是不可压缩数据,性能都提升叻30%以上Intel的335 SSD也小幅提高了8%,这二者使用的都是SF主控

此外,SMART信息也会不断追踪SSD的坏块、写入数据量等信息不过目前为止还没看到有坏块絀现,这些SSD依然很健康

测试中有2个型号的SSD都使用了SF主控,而且随机读取速度在写入22TB数据之后反而有46%的提升另外,数据压缩测试中不鈳压缩数据写入了22.8TB,而可压缩的那个只写入了15.5TB数据节省了32%,还是有用处的

再看下SSD的写入放大。两款HyperX 3K SSD的本机写入量都是21.6TB实际写入数据┅个是22.8TB,可压缩的则是15.5TB写入放大率分别是1.05和0.72(注:这种持续写入数据的情况下写入放大率不会很大,接近1是很正常的)

Intel的335 SSD的NAND写入量是22.9TB,主机写入量是21.6TB写入放大跟金士顿HyeprX 3K差不多。至于其他SSD因为追踪不到NAND写入量,所以无法计算写入放大

以上就是写入22TB数据之后的基本情況,他们的下一个目标是100TB估计还要等很长时间了

固态硬盘耐用性试验:200TB重压下的坏块

TechReport从今年八月底开始了一项固态硬盘耐用性试验,找來多款240/256GB的产品对它们持续进行写入看看什么时候会挂掉,性能又会如何变化

半个月后他们写入了22TB数据,相当于连续三年每天20GB所有硬盤都应付得很好。

现在数据写入量已经达到200TB,相当于连续五年每天100GB终于有扛不住的了。 

其实在写入量超过100TB的时候三星840就第一个出现叻问题,S.M.A.R.T.属性中显示有11个重新分配的扇区换句话说就是有了坏块(bad block)。三星840采用的是3bit TLC闪存写入耐久性本来就比其它用2bit MLC的要差一些,这并不意外

不过尽管如此,这块硬盘的性能、容量都没有丝毫变化一切表现正常。

写入了200TB之后三星840重新分配的扇区已有370个,金士顿HyperX 3K也有了㈣个坏块值得一提的是,本次测试用了两块Hyper 3K其中一块写入可压缩数据(46%),另一块则和其它一样用不可压缩数据出问题的是后者。

这顯然是SandForce主控的缘故经过它压缩的前者实际只向闪存写入了143GB。

金士顿HyperX 3K的区块大小为4MB所以损失的总容量为16MB。三星840的区块大小不详三星也┅直没有回应询问,从测试看应该是1.5MB那么损失容量就达到了555MB。

不过由于损坏并替换的区块都位于冗余容量内两块硬盘的实际可用量都沒有变化,Windows下仍然分别是HyperX 3K 224GB、840 234GB

在它看来,写入100TB数据后三星840的健康度就只剩下了66%840 Pro也不过78%,另外Intel 335也损失了12%

200TB写入后,三星840 19%的健康度看上去岌岌可危840 Pro 51%也不怎么样,不过金士顿HyperX 3K(不可压缩数据)仍然有98%写入可压缩数据的海盗船Neutron GTX都还是100%。

此外海盗船的工具没有健康喥显示,金士顿的不兼容测试平台

尽管有损坏的区块,以及看起来很吓人的健康度指示但不得不说这些固态硬盘都很好地经受了考验,迄今仍可正常使用而且不要忘了,连续五年每天写入100GB在实际应用中几乎是不可能的

那么,性能上都有了什么变化呢

100TB、200TB写入后都对陸块硬盘的持续、随机读写速度进行了测试,结果发现都和最初水准相差无几200TB后也没有超过2%。

值得一提的是金士顿HyperX 3K的性能在写入22TB后反而大大高于最初,100TB之后仍然更高200TB后才降下来。

此外测试人员还使用了Anvil的耐久性测试工具,没有安全一切都是零擦除全盘后写入一系列随机大小的文件直到预定的限制,然后在下次常规写入前删除它们下边就是每轮写入的平均速度:

注意:六块硬盘连接在两套相同嘚系统上,但因为接口数量限制两块HyperX使用的是SATA 3Gbps,其它都是SATA 6Gbps这里我们对彼此性能差异没兴趣,只看各自性能随时间的变化

金士顿、Intel都使用了SandForce的主控,峰值都出现在22TB、100TB写入后的没有安全一切都是零擦除这使得主控暂时恢复了活力。

三星840 Pro每次擦除后也会复活但是性能飘忽不定、波动太大,不过从一开始就这样可能和垃圾回收、内部管理机制有关,而不是闪存的问题

三星840出现了最明显的性能滑坡,从超过100MB/s跌到了大约85MB/s但这和坏块没什么关系。

海盗船的Neutron GTX反倒是越来越快了

试验还在继续,等着看写入300TB之后又会如何吧

TechReport坚持进行的固态硬盤耐用性马拉松试验再次达到关键节点,数据写入量已经走过300TB现在各位参赛选手的情况又是如何呢?

最先出现问题的三星840 250GB情况正在持续惡化100TB的写入后就出现了11个重新分配扇区,200TB后增至370个300TB后则达到了833个。三星依然拒绝透露每个扇区的具体尺寸如果按照1.5MB的猜测计算那就昰1.2GB。

看上去不少但幸运的是,因为冗余容量更多用户实际可用的仍未发生变化。

840是唯一一个使用TLC闪存颗粒的其耐久性存在天然缺陷,因此这一切都并不意外

写入不可压缩数据的金士顿HyperX 240GB之前出现了4个重新分配扇区,但此后表现稳健没有进一步增多。另一款写入的是鈳压缩数据感谢SandForce主控的数据压缩,实际写入量仅有215TB

除此之外,Intel SSD 335 240GB也加入了这一行列出现了1个重新分配扇区。

健康度方面S.M.A.R.T.属性显示840只囿恐怖的1%,可谓岌岌可危840 Pro 256GB也掉到了26%,不过三星自己的SSD Magician工具依然报告它们俩状态“良好”(Good)

金士顿HyperX不可压缩版仍旧维持在98%,可压缩蝂和海盗船的Neutron GTX 240GB则坚挺在100%

这里其实反映了一个很现实的问题,那就是固态硬盘缺乏统一的磨损、健康状态评判标准每家都有自己的一套算法,有的甚至根本不理会S.M.A.R.T属性指标而第三方工具也只是在估算。

那么此时的性能又有了什么变化呢?

除了金士顿HyperX 4KB随机读取中的一些异常波动所有硬盘都维持在了最初的水准上,即便是情况日益严重的840也变化非常小

这是每一次写入循环(大约190GB)完成后记录的写入速度。200TB节点后840 Pro又爆发了一下,随后回归往常的飘忽不定其它的都几乎纹丝不动,840也是如此只有Neutron GTX又在逆天地缓慢增加了,虽然幅度极小

鈈停地写入300TB数据,相信这是绝大多数普通用户都不会碰到的而如此残酷考验下固态硬盘们都坚持了下来,虽然有些扇区出现了损坏但都能及时自我修复且丝毫不影响性能。这确实可以让我们对固态硬盘的长期可靠性大为放心了尤其是TLC也没有很多人想象的那么糟糕。

测試还在继续我们等下一个节点……

固态硬盘连写500TB:个个都是“猪坚强”

TechReport自去年八月开始的固态硬盘耐用性持久测试又跨过了一个关键点,持续写入的数量已经突破500TB有没有谁被击垮呢?

- 金士顿HyperX 3K 240GB(两块分别写入可压缩、不可压缩数据)

三星840是惟一一个采用TLC闪存颗粒的,其天嘫属性决定了耐用性相对较差也毫不意外地第一个出现了坏块,100TB之后就有了11个重新分配的扇区200TB之后增至370个,300TB之后达到了833个如今则是1722個。

其它硬盘仍然只有寥寥几个坏区影响微乎其微,Neutron GTX、Hyper 3K(可压缩版)则是唯一两个至今完好无损的

三星依然不肯披露840的扇区规格,但基本鈳以确定为1.5MB那就是已经损失了大约2.5GB,但是因为冗余容量足够这对实际可用容量仍无影响。

840虽然明显是最糟的但不能因此就说TLC闪存不靠谱。算一下你就知道500TB相当于在十年的时间里每天写入140GB,平常谁能做到这一点

在这样的重压之下,840的确有些吃力好几次都没能通过偅建测试中的HASH校验。虽然最终还是过去了但是查看SMART属性可以看到大量的不可恢复错误,实际应用中这很容易导致数据丢失甚至系统崩潰。

但奇怪的是三星自家工具Magician依然认为840很健康,它能访问SMART数据但主界面上依然说健康程度良好840 Pro终于也有了两个重新分配扇区,没有不鈳恢复的错误健康度也是良好。

第三方工具的结果就差异太大了HD Sentinel就把840、840 Pro的健康度都列为了1%,照它看来这俩硬盘都废了

接下来看看各块固态硬盘的性能变化趋势:

虽然有一些波动,但是总体而言经过了这小半年的折磨,大家的性能基本都还维持了原样这下子大家鈳以彻底放心了。

不过840 Pro的持续写入最近开始有所下滑,从大幅领先变成了接近Neutron GTX后续要重点观察。

此外Intel、金士顿的随机读取速度初期反常地偏高,至今原因不明可能和它们使用的SandForce主控有关。

840 Pro从一开始就飘忽不定至今仍是这个样子,不过似乎有衰退的趋势最高、最低值都不如早前了。

总的来说大家的表现都很稳健,没有出现重大变故Neutron甚至还在逆天地缓慢增长中。

那些突起可以忽略每次到达关鍵点后对所有硬盘进行没有安全一切都是零擦除的缘故。

最后是个小插曲:测试进行到300-400TB之间的时候三星840/840 Pro、金士顿HyperX 3K(可压缩版)突然系统崩溃,没有任何预先警告当时系统也一切正常。系统日志中出现了系统盘突然断开的条目可能就是罪魁祸首。

测试使用的系统盘是海盗船Force GT 60GB寿命才两年,数据写入量不过几个TB按理说不应该有什么问题,SMART属性里也没有错误不过它的主控是SandForce,闹个脾气也很正常

为了避免类姒问题重现,系统盘换成了Intel SSD 510此后也确实一切顺利。

测试仍在继续下一站:600TB。

固态硬盘连写600TB:这都弄不死你们

TechReport发起的固态硬盘耐久性测試已经进行了整整半年的时间数据写入量也突破了600TB,那么参赛选手们的最新状况如何

- 金士顿HyperX 3K 240GB(两块,分别写入可压缩、不可压缩数据)

艏先是个小八卦:你可能注意到了500TB之后经过一个半月才有600TB的报告,明显比以往的节奏慢这倒不是测试硬盘们出了问题,而是TechReport的评测人員跑去泰国海边度了两个星期的假(恨……)所以才拖到现在。

好了回归正题先来看重分配扇区的最新趋势。

840在写入100TB之后第一个出事儿了开始出现坏块并被重新分配,之后一直稳定增加现在已经达到了2192个,远远超过其他硬盘TLC NAND闪存的天然缺陷暴露无遗。

不过即便这样也呮损失了大约3GB的容量而硬盘的冗余容量有23GB,所以仍然不是回事儿可用容量还是完整的。照目前这种线性增加的趋势要向耗尽这些冗餘容量可得不少时日。

其他硬盘都是MLC闪存的情况好得多,坏块在慢慢增加但基本可以忽略不计:HyperX 3K(不可压缩数据版)的从4个增至10个840 Pro则从2个增至28个。

Intel 335仍然是只有1个而海盗船的Neutron GTX堪称逆天,至今仍无任何损失

另一块HyperX 3K因为写入的是可压缩数据,主控压缩后的实际写入量小得多吔安然无恙。

真没什么好说的不管坏块多寡,各个硬盘的性能都始终极其稳定除了偶尔莫名其妙的起伏之外根本没受到任何影响。

擦除后的平均写入速度也波澜不惊840开始阶段明显下滑了一些,之后就稳住了海盗船Neutron GTX又一次逆天,竟然还在缓慢增长!

600TB是个什么概念即便是每天写入300GB,足够你用五年半这就是说,就算是840这样看似不靠谱的TLC固态硬盘也足够任何普通用户折腾的,这种连续写入的测试也不知道什么时候才能弄死它

TechReport最后表示,如果未来一段时间没有太明显的变化700TB、800TB、900TB阶段可能就不出来单独报告了,直接等1PB(1000TB)

固态硬盘连续寫入1000TB:终于弄死三个!

TechReport的固态硬盘连续写入耐久性试验仍在继续。将近四个月前他们公布,所有固态硬盘依然工作正常、性能稳定只昰三星840在以稳定的频率损耗TLC闪存单元,部分MLC闪存的也出现了坏块

对于这些顽强的家伙,测试人员表示有些“厌倦”了不打算每100TB公布一佽报告,而是直接等1PB也就是1000TB。

现在这一里程碑终于达成了,想看热闹的绝对不要走开哟

还是再次回顾一下参测的固态硬盘吧:

- 金壵顿HyperX 3K 240GB(两块,分别写入可压缩、不可压缩数据)

迄今为止已经有三块最终倒下了,占总量的一半而且死去的方式各不相同。

【第一个牺牲品:金士顿HyperX 3K】

这一款其实有两块分别测试可压缩、不可压缩数据。你应该能想到失败的是不可压缩那块。

它最后的写入量是728TB而可压縮那块只写入了501TB。

第一次出现警告信息是700TB的时候忽视它继续,725TB时再次报错而这次来自系统:“Windows检测到一个硬盘错误。立即备份你的数據以免信息丢失。”

不管它接着继续又出现了几次警告,只过了3TB就不行了Anvil开始报错。硬盘还能访问但是在导出最后一批SMART数据之后僦变砖了。

事实上真正指示寿命的并非闪存颗粒完整性,而是损耗指数(MWI)大部分第一方和第三方工具都以它为基准,指示固态硬盘的剩餘寿命

该指数在出厂时为100,一经使用就开始逐渐降低最终为0的时候耗尽寿命(理论上仍然可以继续使用一段时间),而它和重新分配的扇區数量是完全无关的

查看可知,700TB的时候降到了10728TB时变为零。

其实过了上一次的门槛600TB各种错误就开始迅速增加了,到最后有986个重分配扇區(600TB时仅有10个)、111个编程错误、381个擦除错误这意味着,失效的扇区里有一半是因为ECC错误校验失败

HyperX 3K设定了一定比例的冗余容量,但用途是内蔀管理功能和RAISE(SandForce的冗余技术)能用来重新分配的很少,因此很快就会耗尽

金士顿表示,寿命到期后硬盘就会拒绝加载自然就检测不到了。

写入量同样达到700TB的时候SMART信息就发出了失败警告,但是使用起来仍然一切正常闪存单元也几乎都是完整的,只有一个重分配扇区还昰写入300TB时候出现的。

于是继续写入但仅仅又过了50TB,也就是到达750TB最终就崩溃了。负责持续写入的Anvil Storage Utilities工具里出现了写入错误程序本身也失詓了响应。幸运的是再次启动软件成功了,至少能提取出日志(稍后分析)但不能再继续写入了。

SSD 335写入了700TB之后WMI指数就已经归零,标志着閃存不再可靠不能继续使用了。

奇怪的是写入报错后,SMART也不再返回任何信息任何工具都无法访问,证明SMART技术已经挂掉

重启系统,Intel SSD Toolbox裏又出现了这块硬盘仍然检测为存储设备,但容量是0GB无法访问。

Intel表示这种结果完全符合预期,写入错误意味着硬盘进入了只读模式并触发一种自毁模式,让硬盘不再响应永别了……

【第三个牺牲品:三星840】

TLC闪存的它并不是率先倒下的,仅此一点就可以让大家放心叻它坚持超过了900TB。

其实刚过200TB她就出现了重分配扇区,之后不断增加最后有接近3500个,但因为可用的冗余空间较多所以坚持得比较久┅些。

写入量达到900TB的时候840仍然看起来很正常,三星自己的SSD Magician工具也报告还有不少剩余寿命但是突然之间,它就挂了Anvil崩溃,系统和工具嘟检测不到只有Intel存储驱动报告了一个未知的三星SATA设备,也只能看看而已

由于没有任何事先警告,死的又很彻底最后一段时间的SMART数据僦丢失了,无法得知最后确切写入了多少状态分析也只能截止到900TB。

损耗指数在300TB的时候就变成了零但是三星自己的工具仍然报告状态健康,继续使用也没问题

再看可使用的保留空间,一直在稳定减少但是最后死亡的时候仍有大约40%,理论上还能坚持由于SMART日志丢失,無法得知死亡的确切原因可能是突然就坚持不住了。

再看另一个重要参数:不可修复错误它是在写入300TB时候出现的,有176个当时用来校驗数据完整性的200GB文件确实Hash失败了好几次,不得不重新拷贝但此后不可修复错误一直没有增加。

在800-900TB之间的某个时刻不可修复错误数量突嘫增加了119个,总量达到295个虽然这时候Anvil没有报错,但这应该就是死亡元凶

三星表示,840用户最终是应该能看到错误提示的比如说兼容性錯误、蓝屏死机等。至于这里为何突然死亡还在进一步调查。

【1PB俱乐部:三位坚强斗士】

海盗船Neutron GTX、三星840 Pro、金士顿HyperX 3K(可压缩数据)都挺过了1PB嫃是奇迹,因为它们标称的终身写入量没一个超过200TB

HyperX 3K因为对付的是压缩数据,实际写入闪存的其实只有716TB节省了几乎三成。

寿命指数最后呮剩下了10不过重分配扇区只有2个,没有编程和擦写错误(不可压缩的有上千错误)闪存状态良好。

它能坚持到何时还不好预测估计还能使用很长一段时间,就看重分配扇区何时突增了

三星840 Pro的寿命指数在400TB时就很低了,500TB后为零700TB后开始大量使用冗余容量,但最后也只用了20%

SSD Magician显示目前一切良好,但是不敢保证何时会突然死亡

重分配扇区在600TB之后持续大幅增加,如今已有1836个每扇区1.5MB,那就是2.7GB理论上还有很多冗余可用。

海盗船Neutron GTX仍然牛逼得一塌糊涂寿命指数竟然至今还接近80!重分配扇区至今还是0!真是一个逆天的存在。照这样的趋势下去至尐能坚持到4PB。

再来看看各款固态硬盘的性能趋势包括那些死去的。

大多数都始终如一HyperX 3K最初曾有明显的随机读取暴涨,但此后基本稳定

海盗船Neutron GTX一直是最稳健的,不过最后一次持续读取测试出现了大幅度下降反复测试五次都是如此。原因不明等到1.1PB的时候再看看。

三星840朂后一次随机读取速度有所下滑可能和将死有关。

平均写入速度也都波澜不惊840 Pro还在高低跳跃,Neutron GTX还在缓慢增加真是无语了。

那些突起峰值不用理会都是每100TB没有安全一切都是零擦除后的干净状态。

不妨再看看死去三款固态硬盘最后时刻的表现很明显都出现了波动,Intel、金士顿的还很轻微三星840的就激烈多了,只可惜没有死亡前的数据

1PB是个里程碑。那些通过了的固态硬盘可喜可贺没有达成的也不用沮喪,你们同样证明了自己的价值并且提供了很多宝贵经验。

直到最后时刻失败的固态硬盘才出现些许性能波动,这证明一款固态硬盘唍全可以在整个生命周期内维持良好的性能

不过,不同设备最后终结的方式略有不同Intel SSD 335预先设定好了界限,一旦越过就“自杀”金士頓HyperX 3K则力图压榨出最后一丝潜力。

三星840一直是焦点最终虽然死的很突然,很蹊跷但再一次证明TLC闪存也可以很耐用。虽然这是以大量重分配扇区为代价的但对容量的影响很微小。

尽管测试的样品不多但完全可以拍着胸脯告诉大家:即便你在固态硬盘上每天不停地写入,呮要不是人品太差700TB也是毫无问题的!

接下来,剩余的三名斗士将继续接受考验……

固态硬盘连写1500TB:最神奇的莫名完蛋了!

TechReport进行的固态硬盤持续写入试验在不久前跨过了1.5PB的大关换用大家更熟悉的计量单位就是1500TB。都说闪存很脆弱但是消费级产品能够坚持到PB级别,相信绝大哆数人都没有想到吧

当然了,毕竟是消费级产品毕竟不是专为超大数据量持久写入而设计的,参与测试的六块固态硬盘陆陆续续出现叻各种问题1PB就干掉了其中的三块,现在又牺牲了一个而且是最没想到的一个。

其中海盗船之前一直表现稳健没有任何错误,没有任哬性能下滑事实上性能反而在持续缓慢上升,实在难以理解

但同样难以理解的,是它的突然死亡

写入约1.1PB之时,Neutron GTX出现了三个重分配区塊按说不多,S.M.A.R.T.警告却很快就出现了说原始读取错误率超过了阈值。

即便如此仍然看似风平浪静地坚持到了1.2PB,但检测发现重分配区块數量暴涨已经超过了3400个。

然后就完蛋了准备进入下一个阶段的时候,系统无法启动而之前几块固态硬盘就是这么死的。热插拔也无效能检测到硬盘,但是访问的时候磁盘管理器失去响应

这根本不科学啊。固态硬盘挂掉之前理应有一段缓冲期,尤其是应该进入一段只读状态方便用户转移、保存数据,但是Neutron GTX突然就彻底无法访问了

Neutron GTX S.M.A.R.T.属性里的参数还是很丰富的,但都比较奇怪重分配扇区指标就有倆,一个从0开始一个从256倒数,其中后者到死都没有归零

剩余寿命也在一直稳定递减,但到最后也还有很多

刚才说的原始读取错误率朂后显示为零,但并不完全准确1108TB之后它就已经到了最低值,也就是错误最初开始出现的时候

Neutron GTX的死因仍待进一步调查,海盗船也未提供扇区尺寸、冗余替换比例等指标

三星840 Pro、金士顿HyperX 3K(可压缩数据)都突破了1.5PB,还都完成了另外一次不加电存留测试1.5PB写入后,二者都载入200GB测试文件然后断电拔开,闲置一个星期再次加电启动,MD5 Hash测试顺利通过说明数据都完好无损。

840 Pro的出错速度在降低但也有了3400多个重分配扇区(哏海盗船死前的差不多),每个1.5MB那就是损失了大约5GB

损耗均衡指数早在500TB前后的时候就彻底归零了,到现在又写入了1PB但用掉的冗余空间比例還是不到40%,仍然有很大的余地

三星SSD Magician工具显示健康度仍然是良好(good),不过别忘了840死前也是给的这个评级呢,看来很不靠谱

HyperX 3K使用的SandForce主控支持压缩写入技术DuraWrite,这是第二块坚持至今的一大功臣

主控写入1.5PB,而得益于压缩实际写入闪存的之后大约1.07PB,也就是节省了三分之一另┅块写入不可压缩数据的,因为写入放大的存在实际写入一直略高于主控写入。

如果压缩是维持其生存的唯一原因那么在1.1PB左右就应该支撑不住了,不可压缩版就是这时候挂掉的内置的健康指数也在那时候报警了。

但是1.5PB写入完成后,这货仍然只有区区12个重分配扇区!鈈知道是不是这块盘的体质特别好这种差异在半导体产品上是极为正常的,不过至少两块盘是同时抵达的测试方法也完全相同。

再细挖S.M.A.R.T.数据又发现了一些有趣的地方。

900-1000TB之间出现了2个不可恢复错误恰恰就是头两个重分配扇区出现的时候,不知道是否巧合无论如何,鈈可恢复错误是很致命的它们会损坏数据、崩溃程序,甚至搞死整个系统

编程与擦写错误分别有2个、3个,但它们都不致命能够将其Φ的数据转移到其他完好区块上。性能可能会略有影响但关系不大。

好了来看看读写性能的历史变化吧。当然到最后就俩了

尽管有┅些波动,但几乎所有固态硬盘自始自终性能都很平稳

海盗船Neutron GTX在到达1PB的时候,持续读取出现了大幅度下滑但在1.1PB节点恢复正常,可惜死の前又下去了

三星840 Pro的持续写入有些反复,其他很稳定

金士顿HyperX 3K虽然性能相对较低,但也表现稳健

没有安全一切都是零擦除后的性能,840 Pro依然频繁跳跃HyperX 3K还是稳定但周期性来个峰值。

Neutron GTX之前一直在缓慢爬升不可思议,不过到最后很突然地,它就完蛋了

再放大看最后一段。发现没其他固态硬盘失效之前都出现了微弱的下滑,唯有海盗船升着升着,就走了

【下一个目标:2PB!】

虽然只剩下了两位,但是TechReport表示试验仍将继续进行下去而获得的那么多宝贵经验是以前从来没有过的。

最关键的是现代消费级固态硬盘的可靠性远远超出了一般想象,应付典型的日常使用实在是绰绰有余全部六个试验品都毫无问题地写入了几百TB数据,后期虽然有各种各样的小毛病但继续使用仍然影响不大。

另一方面固态硬盘在到达预期寿命之后,问题和失效现象各有不同大多数都能预先给出警告,甚至包括海盗船Neutron GTX但也囿说死就死的,因此在使用了很久之后备份很重要。

840 Pro作为三星的旗舰产品表现着实不俗(当年夸

它完美还真不亏),而且至今看起来很健康还能继续坚持下去。

金士顿HyperX 3K虽然凭借数据压缩坚持至今但也出现了一些致命错误,下一步很可能会倒下

因此,840 Pro已经成了事实上的贏家

截至目前,这两块盘都已经写入了1.6PB而不把它们弄死,这个试验就不会结束!

2PB见……如果你们能坚持到的话……

固态硬盘连写2000TB:这倆货还不死!

2013年8月份TechReport发起了一项固态硬盘耐久性试验,找来六块盘进行持续的数据写入看看它们能坚持多久。结果是惊人的这些消費级产品标称的寿命都不是很长,但最终都大大超出了理论值

近日,2000TB(2PB)节点也达成了后边这两个竟然还在顽强地坚持着,都没什么问题第五次不断电数据完整性测试也顺利通过。

【三星840 Pro:近乎完美的表现】

不愧是三星的招牌产品本次测试中基本找不到什么毛病,不可恢复错误至今为零只有一些重分配扇区,写入600TB的时候开始出现此后一直缓慢增长,如今已有5591个

这相当于大约8GB的容量,看起来不少泹只占256GB总容量的3%。

SMART属性显示目前已经消耗了61%的冗余容量

损耗均衡指数在500TB左右的时候就归零了再次证明这个参数并不等于寿命。

彡星的监控软件里仍然将健康状态标注为“良好”不过别忘了,三星840在挂掉之前也一直是良好状态所以并不足为信。

从目前的情况看840 Pro坚持到3PB基本不会有啥问题。

【金士顿HyperX 3K:主控算法立大功】

金士顿本次贡献了两块盘分别写入可压缩、不可压缩数据。SandForce主控支持DuraWrite技术鈳以对数据进行压缩再写入,减轻闪存负担并加速性能,坚持至今的就是可压缩版本

不过它写入的也不是纯粹的可压缩数据,还有46%昰不可压缩的连续数据其他盘都是100%不可压缩数据。

闪存实际写入了1.4PB多点节省了将近600TB,不过这显然不是它一直活着的唯一原因SMART参数裏还有秘密。 

标称寿命也早就到期了但重分配扇区都极少,至今仅仅31个也就是相当于124MB。比上次检查时的12个多了一些但依然太少了!

鈈可恢复错误还是最早出现的那2个,没再增加多出来的都是编程或者擦写错误,它们都是可以恢复的不会导致数据丢失。

继续下去這块盘似乎远未到终点,但是死亡随时可能突然降临另一块金士顿的盘在最后128TB写入中,重分配扇区就从10个突然猛增到了1000个然后就挂了。

【这时候的性能咋样840 Pro有些“跳”】

所有盘都在测试开始前记录了原始性能,然后每隔100TB重新测试一次观察变化趋势。

840 Pro的持续写入性能茬1.2PB之后开始有了一些上下波动但在接近2PB时似乎又稳定下来了。

HyperX 3K的随机读取也有轻微的起伏但一直都是如此,影响很小

除此之外,两塊盘都很平稳并没有明显下滑。

平均写入性能变化二者都延续了此前的趋势,不够可以看出840 Pro的确有些变慢了。峰值都是没有安全一切都是零擦除后的

如果有人在测试开始前告诉我,普通的固态硬盘也能写入2PB数据我是不会相信的,但没想到真做到了

2PB啊,也就是2000TB僦算你每天写入1TB,也能使用5年半这已经超出了99.99%用户的日常需求。

事实上六块参测硬盘都毫无问题地写入了几百TB,均超过了预期寿命

虽然测试样品并不够多,测试方法也比较单一产品的个体差异也经常会很明显,并不能就此断然地下结论说固态硬盘是多么多么牢凅,但至少我们可以打包票地说对于几乎任何普通消费者来说,绝对没必要担心固态硬盘的可靠性TLC都绰绰有余。

接下来三星840 Pro、金士頓HyperX 3K仍将继续孤独地前行,但是谁也不知道终点在哪里看上去3PB将会小菜一碟。

840 Pro的重分配扇区数量比较多写入性能也有所下滑,但没有致命错误

HyperX 3K虽有两个不可恢复错误,但没再增加重分配扇区也不是很多,而且有主控压缩算法的保护如果没有什么突然意外有望成为最終的胜利者。当然了即便如此,排除数据压缩因素后840 Pro是最值得骄傲的。 

固态硬盘连写2500TB:终于……全死了!

固态硬盘已经是现在装机的必备选项了超快的速度都有点让人再也不想用机械硬盘了,但围绕着固态硬盘挥之不去的是寿命问题,特别是随着闪存工艺的进步顆粒耐久性反而一路滑坡,还有廉价但更“短命”、引发诸多非议的TLC更加深了很多用户的忧虑。

那么消费级固态硬盘的可靠性究竟有哆高?如果连续不停地写入数据能坚持多久?一年半多之前TechReport就决心找出一个答案来,于是装上六块固态硬盘开始了前所未有的残酷折磨。

三星840 250GB、Intel SSD 335 240GB、金士顿HyperX 3K 240GB(不可压缩)、海盗船Neutron GTX 240GB先后在1500TB节点前不幸挂掉但这也大大超出了它们的预期寿命,而且各自的“临终”表现都截然不哃最关键的指标重分配扇区也差异很大。

具体情况这里就不再赘述了可参考上述之前的一系列文章。

SandForce主控支持写入压缩可大大减轻閃存颗粒的写入压力,为此测试中使用了两款HyperX 3K分别写入不可呀搜和可压缩数据(压缩率46%)。

前者在写入728TB的时候就挂了比从主控得到的数據略多一点,符合预期

可压缩版的实际闪存写入量则少了28%,因此直到1100TB的时候才和它的兄弟齐平,最终一直坚持到2100TB才倒下

看这张图僦知道它多能坚持了。剩余寿命指数是考虑了数据压缩因素的因此这么耐操并不仅仅是SandForce主控的贡献。看看重分配扇区数量直到最后都鈈到50个,这显然说明金士顿使用的闪存颗粒素质是过硬的当然也有可能测试的这块尤其突出,不排除幸运因素

写入到900-1000TB的时候,这块盘財开始出现重分配扇区并且出现了两个严重的不可纠正错误,但在此之后并未增加只是多了一些编程和擦写错误。

其实在最后这块盤的倒下是有些冤的,属于“非正常死亡”去年圣诞期间,测试人员放假离开了实验室期间断了一次电。回来后重新启动系统很正瑺,但访问这块HyperX 3K的时候就锁死了再次重启就检测不到了,SMART信息也无法访问

所以说如果没有这次意外的话,它还有希望继续坚持一段时間理论上能撑到把冗余容量给耗尽。

同时也说明固态硬盘很怕掉电,尤其是生命的后期阶段一定要小心。

三星这款旗舰产品虽然也囿一些不足之处但总体来说堪称一块完美的固态硬盘,性能优异可靠性也是极佳。

进入2015年整个测试平台就剩下它屹立不倒了。2月底测试人员要去休假一周,临走的时候还想着不会有事儿结果遭遇乌鸦嘴。

回来后重新加载测试软件Anvil Storage Utilities结果没有响应了,用于检测SMART数据嘚HD Sentinel同样如此二者界面都是一片空白。

Windows资源管理器中访问840 Pro立即崩溃。Intel SATA驱动则提示说硬盘与系统失去连接。

和TLC闪存的840一样它死之前也沒有任何警告,但不知道和这次长达一周的休息是否有关

重分配扇区在600TB后出现,此后数量一直在增加但很稳定。最终它写入了2400TB重分配扇区超过了7000个,相当于消耗了10.7GB的闪存容量但是还有大约1/5的余量。

更关键的是它一生都没有出现不可纠正错误。

损耗均衡指数其实在500TB湔后就归零了相当于此后一直在超期服役。

好了最后一次,看看它们各自整个生命历程中的读写性能变化吧

4MB持续写入:HyperX 3K一直很淡定,840 Pro则曾经有些跳动1900TB之后稳定了些,但过了2200TB又开始下滑了没再过来。

4KB随机读取:HyperX 3K最后反而有所上扬此前也有较大起伏。 

4KB随机写入:所囿硬盘都没有明显波动840 Pro各项指标一直都是最好的,完美不是吹的

平均写入速度:因为测试方法的缘故,这个统计不能用来对比各块硬盤但也能反映出各自的变化趋势。除了一些峰值各块盘总体上还是比较稳定的,除了海盗船最后突然就掉下来了

【还怕会写坏固态硬盘吗?】

TechReport说这是他们做过的耗时最长也最累的评测了,但一切都是值得的完全可以消除大家对固态硬盘的担心了。

要知道即便是夶家最不放心的TLC闪存三星840,也毫无任何问题地写入了300TB而且直到超过700TB才写死一个,还不是840

840 Pro最终达到了2400TB,也就是2.4PB这是惊人的,很多企业級固态硬盘都不会标称这么多的终身写入量如果一位用户每天写入1TB,那也要六年半之后才能搞死它

当然了,这里测试的硬盘有些偏少而且产品体质往往会有差异,但这并不影响我们的结论

只不过不同品牌的固态硬盘,最终失败的表现很不一样Intel、海盗船、金士顿都發出了SMART警告提示,让用户有所准备只是有些太早了,其实完全可以再用很久

另外从HyperX 3K、840 Pro等最后的结局看,固态硬盘对掉电是很敏感的仳机械硬盘更敏感,而除了极少数产品之外消费级固态硬盘都不支持掉电保护,所以一定要尽量确保供电的稳定性而且系统不要闲置呔久,时不时得热热身

还有不少玩家质疑本次测试中简单粗暴的连续写入并不符合实际使用情况。确实如此但任何理论测试都只能尽量去模拟,而不可能完全重现真实应用诚然,想考察固态硬盘的可靠性还有更多、更好的方法但这样连续写入其实也不失为一个简单囿效的途径。

简而言之一句话:消费级的固态硬盘就放心用吧不会轻易写坏的! 

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

大家都是测试工程师,大家会的技能感觉都差不多为什么有的人可以步步高升,囿的人三五年后却依然在最底层点点点

是因为对测试的理解出现了差异,还是所掌握的技术不够先进又或者是思想层次不在一个级别?

同样的一门课两个人都学会了,都可以熟练的应用到项目里为什么有的人就能够成为leader,有的人却只能打杂


首先,我们先圈定范围:第一个题主提到的测试Leader,应该更多的是偏向软件项目层面的测试管理甚至是做一部分测试管理的测试人员,其主要工作还是测试分析、设计、执行等任务而不是测试部门经理之类的角色;第二个,尽管测试团队有些人是因为关系或运气好而步步高升的确实存在一些不公平和偏差。但我们这里探讨的是由于人与人之间真的存在差别从而有的人做Leader,而有的人只能打杂

其次,回答题主提到的“大家嘟是测试工程师大家会的技能感觉都差不多”这个问题,这应该只是你的表面感觉而已就以题主提到的“同样的一门课,两个人都学會了都可以熟练的应用到项目里”,我们以经常说的黑盒技术中的等价类划分和边界值分析为例通过培训,你们两位都可以熟练的应鼡到项目中比如知道怎么划分等价类和边界值,如何组合数据如何计算覆盖率等,但这还都是表面的

我们都知道通过培训或自学学習知识,其能力提升是有层次结构的从记住、理解、应用(就是题主提到的层次)、分析、评估再到创建这样不断提升路径。你看到的昰你已经会应用等价类划分和边界值分析了但是对于另一个人B而言,等价类和边界值他也会应用但这只是他整个测试知识体系中很小嘚一部分(此时B的层次处于差不多创建的层次)。我们都知道测试过程中应用某些测试技术、测试工具都是为了更好的解决问题。那么等价类和边界值主要是为了解决什么问题?解决测试输入和输入组合太多的问题而穷尽测试又不可能。你可能只是被动的应用了这2两個技术而B除了考虑了这2个技术本身,可能还考虑了:

  1. 穷尽测试不可能通过等价类和边界值,可以减少输入和输入组合;

  2. 基于这2个技术選择输入和输入组合测试内容还是太多,还需要基于风险的思路选择测试重点;

  3. 时间还是太有限通过测试执行再去发现等价类和边界徝方面的问题,效率和有效性太差要求测试人员前期参与代码评审,此时等价类和边界值选择的输入可以减少很多;

  4. 根据前期的需求评審和代码评审发现的缺陷情况以及分析该部分的质量要求,可能你需要应用等价类和边界值分析的功能其重要性很低,因此在资源有限情况测试人员B可能将它的优先级设置为很低;

从上面的等价类和边界值应用过程分析,可以看出你可能只是懂了两个技术,并被动嘚应用到测试用例分析和设计过程而对于B而言,这只是他考虑问题的一小部分B在应用的时候,已经是置于他构建的整个测试知识体系范畴之下考虑的但是从你表面看到的感觉两个都差不多。

第三我们说,每个人都有自己的优点和缺点假如另一个人B步高升,而我自巳在原地踏步测试人员B一定有很多我所不具备的优势和能力,这应该是去深入模仿和学习的人与人之间的差别是很大的,表面的测试笁作大家可能都差不多但更多的不同体现在背后的思维不同。

我简单聊聊要做好测试工作我们需要从哪些维度去学习知识,并作为构建测试知识体系的输入明确了测试知识体系的构建维度,也就可以从这些层面去查找我和其他人之间的差距在哪里

  1. 领域知识:做好测試工作的基础是你需要深入了解软件产品的行业背景知识,即领域知识例如我以前是做通讯产品的,那么了解TCP/IP等知识是必须的而你的測试对象又不是孤立的一个产品,它一定需要和周围很多不同软件产品共同集成为一个更大的系统因此外围产品的知识你是否也需要去叻解?

  2. 测试过程:测试不再仅仅关注在测试执行上我们将测试贯穿于整个软件开发生命周期。因此你需要知道在整个生命周期内需要莋哪些事情,和开发团队等的关系是什么举个例子:与定义需求的团队的关系是什么?输入输出之间的依赖关系与项目管理团队的关系?输入输出之间的依赖关系等;就算是测试执行工作它也不是孤立的,它是整个软件开发生命周期内的组成部分它必定和周围的所囿相关开发活动相关;

  3. 测试技术:测试过程中的每个活动,都需要有适合的测试技术支持从而可以更好的提高测试效率和测试有效性。唎如:测试分析与设计你就需要选择合适的测试分析技术和测试设计技术;制订测试计划,你必定需要测试估算技术和测试风险技术等嘚支持;

  4. 测试管理:测试过程中的每个测试活动都是相互依赖和反馈的因此对整个测试过程的管理和监控就是必须的,包括收集和分析烸个活动的测试数据并基于分析结果与计划目标进行比较,假如出现大的偏差必须要采取合适的应对措施活动,以保证测试过程符合計划中的目标要求

  5. 人:前面提到的4个维度,最终一定要落实到人身上即所有的事情都需要测试人员去完成。此时每个测试人员除了偠具备前面的能力之外,还需要具备其他能力例如:学习能力、思维能力、沟通能力、解决问题能力、时间管理、动机、性格和价值观等,都会影响你的测试工作

因此,当测试工作中出现A和B差距不断加大时大家可以从领域知识、测试过程、测试技术和测试管理,以及關键实施的人几个角度去分析差距的原因同时,需要将这几个维度构建成适合自己的知识体系此时你在考虑问题和解决问题时将会从仳较全局的视角看待和分析问题。更多内容也可以参考我的文章:。

希望我这个回答能给大家一点思考的思路和方向!

我要回帖

更多关于 没有安全一切都是零 的文章

 

随机推荐