Good Good Study, Day Day Up (*^__^*)

发布新日志

  • 贴个笑话

    2008-03-26 14:22:52

    今天是我的生日,女友早早的打来电话说晚上要到家里去为我祝贺生日,还要带给我惊喜!听了这个好消息!我今天工作起来是格外买力,一下跑了十几个客户!回到公司。都下午三点了,到食堂一看,只剩下可怜巴巴的一菜一汤了,肉炒三豆(肉炒黄豆、青豆、豌豆)和萝卜汤。没办法,跑了一上午客户,肚子早就咕咕的叫了,只好要了一大盘肉炒三豆和一大盆萝卜汤,吃了起来!没想到临下班了,我的肚子里就像一台越野吉普的发动机!--开始了剧烈的活塞运动!刹那间,一股股气体来势争先恐后的从我的体内冲了出来!我赶紧冲到没人的地方,肚子开始还是不好意思的轻声吟唱,但马上就变成了连珠炮似的噗噗做响!肚子好涨呀!而正在这时,女友却打来电话,说她已经到家了,叫我赶紧回家。唉!没办法只好回家去了,希望她不会看见我这幅狼狈样呀!……

      在回家的路上我刻意努力的放了很多的屁。快到家了,肚子好受了很多,我觉得应该不会再出什么问题了。远远就看到了在门边等着我的女友,她看起来有点兴奋。她大叫着说,“亲爱的,今晚,我为你准备了一份非常奇妙的、一定会让你大吃一惊的礼物。”

      还没进门,女友就用一块布把我的眼睛紧紧蒙了起来,说是要给我一个惊喜!还领着我坐到位于餐桌前头的椅子里,并且让我发誓不会偷看。突然,我感到又想放屁了。恰恰就在这时,女友的手机响了。这可救了我的命了!我找借口说嫌乱让她到另一间屋子里去接电话!她却非让我不能揭开蒙着眼睛的布,还让我发誓!之后才跑去另一间屋子里接电话。她一离开,我就抓紧时机,把全身的重量都移到一条腿上,把屁放了出来。这个屁放得不仅声音很大,而且气味就象是腐臭的鸡蛋散发出的臭味。我几乎不能呼吸,因此我摸到椅垫,使劲的向四周扇着,妄图扇掉这难闻的气味。

      就在我刚感觉好一点的时候,另一个屁又来了。我又抬起腿开始放!它听起来就象是柴油发动机快速转动的声音,而且这一次气味更难闻了。为了不让自己窒息,我用胳膊挥舞着椅垫扇了起来,希望气味会尽快散掉。

      又是在一切将要恢复正常的时候,另一个屁又迫不及待的冲来了。于是我站起来,弯下腰,把屁股向后上方撅了起来!把它放了出来。这个屁放得真正称得上是一流,连身后的报纸都被吹散到了地下..........

      我侧耳倾听另一间屋子里女友交谈的声音,因为要遵守不偷看的诺言,我也不敢打开眼罩,只能在漆黑中不断放着屁,为了赶快把肚子中的气体全部排出,又不使屋里变得更臭!我解开了裤腰带,把内裤和长裤褪到了小腹以下,把屁股露了出来,并摸索着打开了身后阳台的门,几乎是将整个屁股都伸到阳台上,开始疯狂的放起屁来……,啊!好受多了!之后,我又手舞足蹈的用椅垫满屋乱扇,祈祷这股恶臭能赶快散去……,就这样,在接下来的十几分钟以内,我一边不断的放着屁,一边不断的扇着椅垫,终于,当我听到她在电话里说再见的时候,屋里的空气和我的肚子都已经好多了!我迅速的系上裤子,整理了一下头发,开始优雅地、微笑着等着我亲爱的她来带给我惊喜。

      当她走近的时候,我脸上带着满足地微笑,一付温存的样子。女友首先为她打了这么长时间的电话向我道了歉,然后问我有没有偷偷掀开过布。在我向她保证没有偷看之后,女友移走了遮在我眼睛上的布,并对我说道,“意外吧!我的女友今天非让我带她们来看看你,她们说你在照片上很有风度,人长的很帅!喏!你看,坐在桌前的这五位都是我单位里的好姐妹,而站在阳台上的那六位是我上学时最要好的朋友!”

      这时,我才极为震惊和恐惧的发现,有一大堆女孩正围坐在我对面的餐桌边,而身后的阳台上则站着另一堆,她们都是来参加这个令我感到非常意外的生日宴会的。现在,她们每个人脸上都带着一种无法言表的表情看着我,就像发现了火星人………………

  • 系统测试的基本方法

    2008-03-26 14:21:00

    软件测试基础

        计算机软件是基于计算机系统的一个重要组成部分,软件开发完毕后应与系统中其它成分集成在一起,此时需要进行一系列系统集成和确认测试。对这些测试的详细讨论已超出软件工程的范围,这些测试也不可能仅由软件开发人员完成。在系统测试之前,软件工程师应完成下列工作:
      (1) 为测试软件系统的输入信息设计出错处理通路;
      (2) 设计测试用例,模拟错误数据和软件界面可能发生的错误,记录测试结果,为系统测试提供经验和帮助;
      (3) 参与系统测试的规划和设计,保证软件测试的合理性。

      系统测试应该由若干个不同测试组成,目的是充分运行系统,验证系统各部件是否都能政党工作并完成所赋予的任务。下面简单讨论几类系统测试。

    1、恢复测试

      恢复测试主要检查系统的容错能力。当系统出错时,能否在指定时间间隔内修正错误并重新启动系统。恢复测试首先要采用各种办法强迫系统失败,然后验证系统是否能尽快恢复。对于自动恢复需验证重新初始化(reinitialization)、检查点(checkpointing mechanisms)、数据恢复(data recovery)和重新启动 (restart)等机制的正确性;对于人工干预的恢复系统,还需估测平均修复时间,确定其是否在可接受的范围内。

    2、安全测试

      安全测试检查系统对非法侵入的防范能力。安全测试期间,测试人员假扮非法入侵者,采用各种办法试图突破防线。例如,①想方设法截取或破译口令;②专门定做软件破坏系统的保护机制;③故意导致系统失败,企图趁恢复之机非法进入;④试图通过浏览非保密数据,推导所需信息,等等。理论上讲,只要有足够的时间和资源,没有不可进入的系统。因此系统安全设计的准则是,使非法侵入的代价超过被保护信息的价值。此时非法侵入者已无利可图。

    3、强度测试

      强度测试检查程序对异常情况的抵抗能力。强度测试总是迫使系统在异常的资源配置下运行。例如,①当中断的正常频率为每秒一至两个时,运行每秒产生十个中断的测试用例;②定量地增长数据输入率,检查输入子功能的反映能力;③运行需要最大存储空间(或其他资源)的测试用例;④运行可能导致虚存操作系统崩溃或磁盘数据剧烈抖动的测试用例,等等。

    4、 性能测试

      对于那些实时和嵌入式系统,软件部分即使满足功能要求,也未必能够满足性能要求,虽然从单元测试起,每一测试步骤都包含性能测试,但只有当系统真正集成之后,在真实环境中才能全面、可靠地测试运行性能系统性能测试是为了完成这一任务。性能测试有时与强度测试相结合,经常需要其他软硬件的配套支持。


  • 手机常识

    2008-03-26 14:11:48

    3、识别号查看手机真伪

    如何知道你的手机不是水货,是正品手机呢?其实这并不难,几乎所有的手机厂商都在手机程序中设计了ID的查询程序,用户只需输入一些特定的字符便能查看手机身份(ID)。

    爱立信ERICSSON

    依次输入:“(即:右*左*左*左*)”,手机显示:“aaaaabbbbPRGccccccccc”。其中aaaaaa便为出产日期(YY/MM/DD)。

    诺基亚NOKIA

    依次输入:“*#0000#”,手机会出现“Vxx.xx.dd-mm-yyNxx-x”信息。Vxx.xx为软件版本,dd-mm-yy为生产日期(日-月-年),Vxx.xx为手机型号(如3310为NHM-5)。输入:“*#06#”则显示手机ID号。

    三星SAMSUNG

    依次输入:“*#9999#”,手机便显示一串字符。其中,S———1999年;T———2000年;A———一月;B———二月……以此类推。此外,由于科健手机多为三星OEM产品,因此该品牌手机同样适用于此方法。

    松下Panasonic

    GD90/92在开机后,手机在搜寻网络的时候,输入“*#9999#”,会出现一串资料。包括手机型号、软件版本和手机生产日期。

    摩托罗拉MOTOROLA

    按下“*#06#”,可查MSN(在手机标签上)内容。显示:aaabccdddd

    aaa为型号代码。(例:A74———CD920/928;A84———L2000)。

    b为产地代码。(2———英国;6———天津;G———美国;R———德国)。

    cc为日期代码。前一个c为年份(X———97;Y———98;Z———99;A———2000),后一个“c”为月份(A、B———1;C、D———2;E、F———3……)。

    dddd为产品序列号。

    4、手机配件也要防假

    我们知道,手机配件的假往往影响整部手机的质量,特别是手机电池,我们更应该注意。消费者可以通过以下几个方面鉴别电池的真伪:

    ① 注意电池外壳或包装上的产品标识应使用规范的文字说明,该电池名称、商标或牌号、型号规格、标准电压、额定容量、电源的正负极以及警示标志或说明、生产企业名称或缩写及出厂编号、执行标准。

    ② 注意电池标贴采用二次印制技术,在一定的光线下,从侧面看,明显感觉到条形码部分的颜色比其余部分更黑,标贴表面白色处用金属物轻划,有类似铅笔划过的痕迹。

    ③ 注意电池外壳采用特殊材料制成,非常坚固,不易损坏,一般手段不能打开电池,外观整齐,没有多余毛刺,外表面有一定的粗糙度并手感舒适,内表面手感光滑,灯泡下能看到细密的纵向划痕。

    ④ 注意电池电极与手机电池片宽度相同,电池充电电极片间的隔离材料与外壳材料相同,但并非一体;电池电极下方相应位置标有“+”“-”标记,五金触片光亮、无锈斑。

    ⑤ 注意电池推入手机时应手感舒适,上下自如,电池锁按压部分卡位适当、牢固,并与手机结合紧密。就目前电池的使用范围来讲,锂电池以其良好的性能得以广泛应用。

    5、到专卖店选购

    在这里我提醒消费者购买手机应选择正规、有信誉的商店或专卖店,选择知名度高和有明确售后服务承诺的品牌,并注意索取购货凭证,凭证上应写清产品的品牌及规格型号等,以备发生争议时向有关部门提供证据。

    三、学会使用IMEI码

    其实除了上面介绍的方法,还有一种相当通用的方法,那就是IMEI码,所谓IMEI,就是INTERNATIONAL MOBILE EQUIPMENT IDENTITY(简称IMEI)。中文译做"国际移动设备身分码",它的最大功能是用来协助辨别手机身份的真伪。

    1、发挥身份识别功能

    所谓树大有枯枝,市面上有不良商店或收买佬会利用手机产地来骗人,以抬高或压低手机价格,事关手机是不是原装货会直接影响手机的身价。

    有时收买佬拿着你的手机,按几下就说你的手机不是原装机,不值钱。但你买机的时候销售员又大声说绝对正货,还多收贵你一些钱。这个时候IMEI就往往可以拆穿究竟哪个在骗着你,发挥身分识别功能。

    IMEI包含手机型号核准码同出厂序号,同型号手机核准号码一定一样,但出厂序号就永远不会一样。如果见到两台同型号手机核准号码不一样,又或者见到两部手机出厂序号一样,各位PHONE迷就要打醒十二分精神啦,事关其中一部肯定是假的。各位手机迷千万不要搞错呀!

    IMEI大解构IMEI由15个数目字组成,手机按「*#06#」就会弹出来,格式系123456-78-901234-5。

    123456=TYPE APPROVAL CODE,即设备型号核准号码。

    78=FINAL ASSEMBLY CODE,即最后装配号码。

    901234=SERIAL NUMBER,即出厂序号。

    5=SPARE NUMBER,即备用号码。

    以下就用诺记8850,摩记V3688+,爱记GF768同大家示范。

    Nokia 8850按下「*#06#」后,屏幕出现448901-30-233588-9,其中448901代表手机核准型号系8850,30代表最后装配地是韩国,233588代表手机出厂序号,9代表备用号码。

    Motorola V3688+按下「*#06#」后,屏幕出现448835-80-545659-6,448835代表手机核准型号系V3688+,80代表最后装配地是中国,545659代表手机出厂序号,6代表备用号码。

    ERICSSON GF788按下「*#06#」后,屏幕出现490514-51-636354-0,490514代表手机核准型号系GF788,51代表最后装配地是瑞典,636354代表手机出厂序号,0代表备用号码。

    手机产地大解码最后装配号码,是指手机厂完成最后一道生产工序,每一间厂都有不同的特别代号。虽然这个代号不可以直接等同于手机是哪一个国家制造代号,但在好多人心目中都没有分别,将完成最后工序地方等同于手机产地,现就简单介绍一些大手机生产商常见产地。

    2、IMEI详解

    由于IMEI码也可以反映出该手机在厂家的"档案"和"身份证号",所以IMEI码除了贴在手机主板背面上,在手机ROM中也有备分。我们购机时,可通过"*#06#"指令调出内存中的IMEI码,看其显示是否与背贴上的IMEI码一致来辨别手机真伪、判断手机产地和甚至具体的产地。IMEI一般是一串15位的数字,当然现在也有例外:如爱立信T18SC手机内存的IMEI码比标贴上的加了2位数字,飞利浦828C手机内存的IMEI码比标贴码中插入了2位数字。下面以常见的15位IMEI码来介绍如何识别它,其格式是如下:6(TYPE APPROVAL CODE)-2(FINAL ASSEMBLY CODE)-6(SERIAL NUMBER)-1(SPARE NUMBER),也就是123456-78-901234-5。

    ①.TAC:为设备型号核准号码,代表了手机的型号。各个手机品牌如诺基亚、爱立信或阿尔卡特,只要是同一型号的手机,TAC码一定是一样的,比如说笔者所见的几款阿尔卡特OT301的TAC码就都是332157。现在有不法商贩从广东那里买来旧机拆了机芯装换个壳子当新机卖,我们可以从TAC的差别中寻到其蛛丝马迹,只要你知道该型号手机的正确TAC编码一比较就知道了,因为旧机的型号一般都比较老了不会和现在比较流行的型号一样。

    ②.FAC:为最后装配号码,代表了手机最后完成装配时是在什么地方,也就是最后装配的工厂在哪个国家或地区,一般不会具体的到哪个厂家,所以这并不是哪个国家制造的代号。不过,我们一般都将最后装配工序完成的工厂所在地当作手机产地,因此,FAC码也可以认为是手机产地的代号。现在各大手机厂商在国内都有自己的生产基地,生产中低档型号是没有问题的,所以你如果在国内买到这些品牌在国外的生产基地生产出来的中低档产品,那么这时候你就要当心一点了。因为国内还没有什么品牌的某款产品出现销售情况俏销至国内来不及生产要进口的状况。为防万一最好将将入网证放在验钞机下进行验证,如果入网证上显示出红色的"CMII"的图案和一个不是很清晰的数字,则为正规入网证,否则可以肯定的判定为是水货的。

    ③.SEN:为出厂序列号,代表了手机在手机的在工厂的编号。和其它产品的出厂序号一样,是为厂家的内部管理服务的,对我们一般用户并无多大意义。但是同一个牌子且同一型号的SN是不可能一样的,如果你发现有二支手机的SN是一模一样的话,那么其中一个至少有一个是假货了。

    ④.SPN:为备用号码,一般这个数字是零,当然也不都是,笔者的阿尔卡特OT301就是"4",而像爱立信T18SC、T28SC以近的机型在IMEI码最后还加上了两位版本号码,这其实也是正常的,只要前面三个号码没问题这个就可以不管它了。

    现学现用的感觉是什么样的,你马上就会知道了,下面我们以阿尔卡特的OT301、NOKIA的3210和摩爱立信T18sc为例介绍如何具体识别IMEI。准备工作:在待机画面下键入"*#06#",将显示的数字按6-2-6-1的规律记下。

    OT301:IMEI为332157-70-056146-4,"332157"代表这款手机核准型号是OT301;"70"代表最后在苏州装配完成,也就是产地在苏州;"056146"是出厂序列号;"4",备用号码,具体含义不详。

    NOKIA 3210:IMEI为449206-60-360983-7,"449206" 代表这款手机核准型号是3210;"60"代表最后在东莞装配完成,也就是产地在东莞;"360983"是手机的出厂序号;"7",备用号码(又一个非零的代表)。

    爱立信T18sc:IMEI为520027-19-012435-8-05,"520027"代表该手机核准型号是T18sc;"19"代表最后装配地是英国,也就是产地在英国;;"012435"是该手机的出厂序号;"""代表备用号码;"05"为版本代码。

    IMEI的重要性如此明显,当然妨碍了不法商人造假获利,所以现在出现了修改IMEI的设备,而且成本相当低才5元左右。因此,为了安全起见,我强烈建议不要去手机市场上购买二手手机,在购买新手机的时候不要贪图一点点小便宜,正如上文所说的,你可以去正规有实力的商家购买虽然可能贵了几十块,但换来的维修服务保障是远不止这点钱的。最后祝各位都能用上正品手机。

    品牌 数值及代表地区
    诺基亚 48、60、62、80、81、92、93-中国;
    06、07、08、20-法国;
    19、40、41、44-英国;
    10-芬兰;
    18-新加坡;
    30-韩国;
    67、68-美国;
    10,70(改版):芬兰;
    20:德国;
    30:韩国;
    40:北京;
    60:东莞;

    摩托罗拉 07、08-德国;
    18-新加坡;
    40、41-苏格兰;
    44-英国;
    48-香港、东南亚改装机;
    67-美国;
    80、81、92、93-中国;
    68-美洲。

    07,08:德国;
    17:马来西亚(杭州);
    18:新加坡;
    40,41:苏格兰;
    44:英国;
    47:香港,东南亚改装机;
    48:大陆改装机;
    67:美国;
    68,美洲生产线;
    80,81,82:天津;
    92,93:杭州东信

    爱立信 19-英国;
    51-瑞典;
    61-香港;
    62-中国。
    19:英国;
    42:爱沙尼亚;
    51:瑞典(南京);
    61:香港;
    62:北京;
    71:马来西亚

    西门子 37:上海;
    51:德国

    松下 62:北京

    三星 89、90、92:韩国

    飞利浦 69:深圳

    通常来讲,IMEI都可以有效发挥身份证功能,但手机迷都知道IMEI可以用电脑改,使IMEI码发挥不了正常功能。所以,为保障自己利益,还是到信誉良好的大公司,或自己相熟的手机店购买。

    事实上,以上我提到的所有招数都适用于目前流行的手机,只是有些适用于其他品牌。也可以几招并用,就算商家多么奸,在你的"第三只眼"之下,障眼法也会原形毕露,你可以从容的挑选你的"最爱"手机。

     

     

     

     

     

     

     

     

     

     

     

     


    *#06# 呵呵,这个不用说了吧,地球人都知道
        *#0000# 查看软件版本
        *#2820# 查看蓝牙地址,一般人用不上,我也不知道怎么用
        *#92702689# 可以查看通话时间,我的E61是以娱乐为主,两个月通话6分钟,你的呢?
        *#7780# 恢复出厂设置,会清除手机里所有数据,使用前要记得备份啊
        *#7370# 软格机,说是格机其实也是恢复出厂设置,跟上面的基本一样

        以下是E61可用的快捷操作

        任意数字键+#可以查看SIM卡上相对应位数的号码,但不显示姓名,不是很方便
        长按#键可以在标准与无声模式间快速切换
        长按0(或P键可以快速启动手机自带的浏览器
        复制:Ctrl+C   剪下:Ctrl+X   贴上:Ctrl+V   复原:Ctrl+Z   斜体:Ctrl+I   粗体:Ctrl+B
        ↗+Ctrl可以打开蓝牙,再按一次就是关闭
        ↗+Chr可以打开红外线,但只能开不能关,在没有找到对应红外口后会自动关闭
    拼音打字的时候,按Chr键(亚太版的"中"键)可以区分待选字符的四个声调,按一下是第一声,按两下是第二声.......
        在任何文字输入界面按Chr+↑可以快速切换输入法,长按chr键也可以实现同样功能
        中文输入后出现的候选字框内如果没有需要的字,可以使用空格键往下翻页,直到选到需要的字
        文字输入是↑+ ← (删除键)可以删除光标右边的字符,注意,是右边的
        文字输入时按↑+Chr可调出编辑语言窗口
        文件管理中按↑+上下摇动摇杆可对文件进行标记,再次重复操作则取消标记
        对文件命名时↑+摇杆左或右卷动可以选取文字
        在短信输入完成后按拨号键就可以进行发送
        将需要发送的文件选中后直接按拨号键,可跳出发送选项,可选择红外、蓝牙、彩信、电子邮件

     

  • Exploratory Testing

    2008-03-26 10:49:07

    What is Exploratory Testing?

    And How it Differs from scrīpted Testing

    by James Bach

    This first appeared on www.StickyMinds.com as a column feature

    Exploratory software testing is a powerful and fun approach to testing. In some situations, it can be orders of magnitude more productive than scrīpted testing. I haven't found a tester yet who didn't, at least unconsciously, perform exploratory testing at one time or another. Yet few of us study this approach, and it doesn't get much respect in our field. It's high time we stop the denial, and publicly recognize the exploratory approach for what it is: scientific thinking in real-time. Friends, that's a good thing.

    Concurrent Test Design and Execution

    The plainest definition of exploratory testing is test design and test execution at the same time. This is the opposite of scrīpted testing (predefined test procedures, whether manual or automated). Exploratory tests, unlike scrīpted tests, are not defined in advance and carried out precisely according to plan. This may sound like a straightforward distinction, but in practice it's murky. That's because "defined" is a spectrum. Even an otherwise elaborately defined test procedure will leave many interesting details (such as how quickly to type on the keyboard, or what kinds of behavīor to recognize as a failure) to the discretion of the tester. Likewise, even a free-form exploratory test session will involve tacit constraints or mandates about what parts of the product to test, or what strategies to use. A good exploratory tester will write down test ideas and use them in later test cycles. Such notes sometimes look a lot like test scrīpts, even if they aren't. Exploratory testing is sometimes confused with "ad hoc" testing. Ad hoc testing normally refers to a process of improvised, impromptu bug searching. By definition, anyone can do ad hoc testing. The term "exploratory testing"--coined by Cem Kaner, in Testing Computer Software-- refers to a sophisticated, thoughtful approach to ad hoc testing. In the last decade, James Whittaker (at Florida Tech), Cem Kaner and I have worked to identify the skills and techniques of excellent exploratory testing. For one example of a fully defined and articulated process of exploratory testing, see the General Functionality and Stability Test Procedure for Microsoft's Windows 2000 Compatibility Certification program. This document is publicly available on Microsoft's web site, or on my site at http://www.satisfice.com/tools/procedure.pdf.

    Balancing Exploratory Testing With scrīpted Testing

    To the extent that the next test we do is influenced by the result of the last test we did, we are doing exploratory testing. We become more exploratory when we can't tell what tests should be run, in advance of the test cycle, or when we haven't yet had the opportunity to create those tests. If we are running scrīpted tests, and new information comes to light that suggests a better test strategy, we may switch to an exploratory mode (as in the case of discovering a new failure that requires investigation). Conversely, we take a more scrīpted approach when there is little uncertainty about how we want to test, new tests are relatively unimportant, the need for efficiency and reliability in executing those tests is worth the effort of scrīpting, and when we are prepared to pay the cost of documenting and maintaining tests.

    The results of exploratory testing aren't necessarily radically different than those of scrīpted testing, and the two approaches to testing are fully compatible. Companies such as Nortel and Microsoft commonly use both approaches on the same project. Still there are many important differences between the two approaches.

    Why Do Exploratory Testing?

    Recurring themes in the management of an effective exploratory test cycle are tester, test strategy, test reporting and test mission. The scrīpted approach to testing attempts to mechanize the test process by taking test ideas out of a test designer's head and putting them on paper. There's a lot of value in that way of testing. But exploratory testers take the view that writing down test scrīpts and following them tends to disrupt the intellectual processes that make testers able to find important problems quickly. The more we can make testing intellectually rich and fluid, the more likely we will hit upon the right tests at the right time. That's where the power of exploratory testing comes in: the richness of this process is only limited by the breadth and depth of our imagination and our emerging insights into the nature of the product under test. In the rapid testing classes at Satisfice, Inc., we have equipment that watches testers invent tests in real-time. When the instructor makes a new suggestion for what to test, or provides new information to the testers about the product, we observe and measure how a roomful of exploratory testers reacts to that information. Free from the encumbrance of pre-documentation, they immediately incorporate new ideas into their tests.

    scrīpting has its place. I can imagine testing situations where efficiency and repeatability are so important that we should scrīpt or automate them. For example, in the case where a test platform is only intermittently available, such as a client-server project where there are only a few configured servers available and they must be shared by testing and development. The logistics of such a situation may dictate that we scrīpt tests carefully in advance to get the most out of every second of limited test execution time. Exploratory testing is especially useful in complex testing situations, when little is known about the product, or as part of preparing a set of scrīpted tests. The basic rule is this: exploratory testing is called for any time the next test you should perform is not obvious, or when you want to go beyond the obvious. In my experience, that's most of the time.

    其实,每个测试员都在不知不觉地在用到探索性测试方法,但是很少有人学习和重视这种方法。现在是时候认识一下探索性测试方法了:科学的实时的思考。

     

    Concurrent Test Design and Execution

    同时设计测试和执行测试

            对探索性测试的最直白的定义是:同时设计测试和执行测试。这与剧本化的测试方法相反(预先定义好测试步骤)。探索性测试不像剧本化的测试,不会预先定义,不会严格按照计划开展。然而,即使是精确定义的测试步骤也会有很多有趣的细节遗留给测试员(例如:在键盘上敲击的速度、怎样的行为才认为是错误);即使是方式非常自由的探索性测试也会对测试产品的哪些部分作出规定,或规定采用什么测试策略。

     

            好的探索性测试者会把测试的想法写下来,并应用在后来的测试循环中。这些记录下来的东西看起来有点像测试脚本。

     

            探索性测试有时候会与即兴测试(ad hoc testing)混淆。即兴测试通常是指临时准备的、即席的bug搜索的测试过程。从定义可以看出,谁都可以做即兴测试。由Cem Kaner提出的探索性测试,相比即兴测试是一种精致的、有思想的过程。

     

    Balancing Exploratory Testing With scrīpted Testing

    平衡探索性测试与剧本化测试

            如果做到了下一项测试被我们所做的上一测试的结果所影响,那么我们就是在做探索性测试。当我们在测试循环之前不知道应该运行什么测试时,或者我们还没机会创建测试,我们应该更多地探索。

     

            如果我们正在执行剧本化的测试的时候,新的信息提示我们可以有更好的测试策略,我们应该转成探索模式(例如发现了新的错误需要进行调查)。

     

            相反地,当我们非常清楚我们要做什么测试以及怎样做时,我们应该采取剧本化的测试方法。新的测试相对没那么重要,执行测试的效率和可靠性的需要使得测试值得剧本化,值得我们把它们文档化并维护。

     

            探索性的测试结果与剧本化的测试并没有根本性的区别,两种测试方式是完全兼容的。像Nortel微软这样的公司通常在项目中两种方法都使用。

     

    Why Do Exploratory Testing?

    为什么要做探索性测试?

            在有效的探索性测试循环管理中的重复主题是:测试、测试策略、测试报告和测试任务。测试剧本化的方式企图将测试过程机械化,从测试设计者的脑袋中把测试的思想抽取出来并放到纸面上。这种测试方法的好处很多。

     

            但是探索性测试者持这样的观点:把测试剧本化地写下来并按照它们来测试会破坏快速寻找重要问题这一智力的过程。这一智力的过程越丰富、越流畅,我们越有机会在正确的时间执行正确的测试。这就是探索性测试的威力所在:测试过程的丰富性只是受限于我们的思维的广度和深度,还有我们对测试产品的洞察能力。

     

            剧本化的测试是有它存在的意义的,我可以想象测试的效率和可重复性是那么的重要,所以我们应该剧本化或自动化测试。在测试环境间歇有效的情况下,例如C/S结构的项目,只有几个配置的服务器有效并且要在测试和开发之间共享。这种情形下我们应该把测试小心仔细地提前剧本化,以便能充分利用有限的测试执行时间。

     

            探索性测试在复杂的测试情况下会特别有用,对产品了解甚少的情况下会特别有用,或者作为准备剧本化测试的一部分测试。基本规则是:应该在你准备进行的下一次测试内容并不明确的情况下进行探索性测试,或者你希望把这些不明确的因素明确了

     

我的存档

数据统计

  • 访问量: 2494
  • 日志数: 5
  • 建立时间: 2008-03-18
  • 更新时间: 2008-03-26

RSS订阅

Open Toolbar