软件测试浅悟妄语 - 水之真谛 - CSDNBlog

水之真谛

上善若水,润物无声.

  CSDN |  社区 |  技术中心 |  BLOG首页 |  我的首页 |  个人档案 |  è”系作者 |  èšåˆ  |  æœç´¢ |  登录
  61篇原创: 0篇翻译: 0篇转载: 99598次点击: 542个评论: 15个Trackbacks

公告

欢迎大家æ‹ç –哦!这样一æ¥,我很快就是"砖家"了,而且我è¦ç”¨ä½ ä»¬æ‹ç»™æˆ‘的砖给自己盖一幢别墅.

文章

收è—

相册

存档

最近评论



软件测试浅悟妄语

CSDN旗下水之真谛出å“(http://blog.csdn.net/FantasiaX)

 

妄语:

 

         软件是ä¸å¯æµ‹è¯•çš„,因为我们的眼界ä¸æ˜¯æ— é™çš„ã€æ‰‹æ®µä¸æ˜¯æ— é™çš„ï¼›

         软件是å¯ä»¥æµ‹è¯•çš„,因为软件的用户是有é™çš„,用户的æ“是有é™çš„。

 

å°åºï¼š

 

         近日有朋å‹æŠ±æ€¨è¯´è‡ªå·±å› ä¸ºå†™ä¸å‡ºæµ‹è¯•Caseã€æŠ¥ä¸å‡ºBug而压力很大,以致ç»å¸¸æ¢¦åˆ°çŒªç¬¼è‰åŠæ€è™«å‰‚,或者在厨房中é­é‡ä¸é•¿çœ¼çš„å°å¼ºå¹¶å°†å…¶æ‹æ­»åŽç«Ÿæ¡ä»¶å射地打开电脑想报个Bugç»™Lead。朋å‹é—®æˆ‘怎么办,其实我也是一脸苦笑——抓Bug有时是è¦çœ‹è¿æ°”çš„——如果Version是在寅时Build出æ¥ï¼Œå…´è®¸Bug会多一些,如果是在申时Build出æ¥ï¼Œå…´è®¸Bug会少很多(如果开å‘团队在国外,别忘记倒时差)。

         这些当然是说笑。我想说的是,目å‰å¸‚é¢ä¸Šå¤§å¤šæ•°è½¯ä»¶æµ‹è¯•ç±»ä¹¦ç±éƒ½æ˜¯å›½å¤–作者写æˆï¼Œè™½ç„¶ä¹Ÿæœ‰ä¸å°‘著作是我们中国测试专家写æˆï¼Œä½†é‡Œé¢å¼•ç»æ®å…¸äº†å¾ˆå¤šå›½å¤–作å“,使测试æ€æƒ³æ²¿ä¹ äº†æ¬§ç¾Žçš„æ€è·¯ã€‚

         一个民æ—最伟大的东西是什么?是文化和æ€æƒ³ã€‚那么我们能ä¸èƒ½ç”¨ä¸­å›½çš„文化和æ€æƒ³åŽ»é‡æ–°å®¡è§†è½¯ä»¶æµ‹è¯•çš„方法,创新出自己的æ€è·¯æ¥å‘¢ï¼Ÿæœ¬æ–‡å°±æ˜¯ä¸€æ¬¡æ–—胆å°è¯•ã€‚

 

正文:

 

测试中的文化

         西方人善于推ç†ï¼Œå› æ­¤ä»–们的测试æµç¨‹æ˜¯——

1.         Test Plan

2.         Test Case

3.         Find Bug

4.         Review fixed bug

以上这4个环节是用推ç†çš„办法é€æ­¥ç»†åŒ–,并éšç€è½¯ä»¶ç‰ˆæœ¬çš„更新而迭代å‰è¡Œçš„。

 

         中国人善于归纳,按照上é¢çš„这个æµç¨‹åšæµ‹è¯•æ—¶ï¼Œæœ€å¤§çš„困难是第一步到第二步的跨越——ä¾Test Plan去正推Test Case是件很痛苦的事情,很容易陷入两个误区:一个误区是写了一大堆ä¸ç–¼ä¸ç—’çš„Case,把测试å˜æˆäº†è·‘龙套;å¦ä¸€ä¸ªè¯¯åŒºæ˜¯è¿‡åˆ†è¿½æ±‚è¦æŠ“到Bug,结果产生很多ç–æ¼ã€‚

为什么会出现这ç§æƒ…况呢?原因在于文化。Test Plan本身是按“逻辑”将软件的功能分组,然åŽè¿›è¡Œæµ‹è¯•ï¼Œè€å¤–的逻辑æ€ç»´èƒ½åŠ›æ˜¯æ¯”较强的,基本上能够比较轻æ¾åœ°æŠŠç¬¦åˆTest Plan中æŸä¸ªåˆ†æžçš„æ“作都挑出æ¥ã€Fillè¿›Test Plan里,而这在我们中国人看æ¥ï¼Œè¿™æ˜¯å¯¹è½¯ä»¶æ“作的一秓割裂”,因此心里会感觉很乱ã€æ— ä»Žä¸‹æ‰‹——于是测试就æˆäº†ä¸€ä¸ªæ€Žä¹ˆä¹Ÿèµ°ä¸å‡ºåŽ»çš„迷宫。

我的办法是:先写Test Plan,但ä¸ä»¥Test Plan为指导方针;按照软件的Functions写Test Case,然åŽæŠŠTest Case分门别类填充到Test Plan的框架中去——这一步就是归纳——有时候对于特殊的软件,甚至å¯ä»¥å½’纳出ä¸åŒå¯»å¸¸çš„测试分支æ¥ã€‚

ä½ å¯èƒ½ä¼šé—®ï¼šä¸æŒ‰Test Plan怎么写Case啊??那ä¸æˆäº†èƒ¡å†™å…«å†™äº†ï¼Ÿ

下é¢æˆ‘å°±æ¥è¯´è¯´æˆ‘是怎么分æžåŠŸèƒ½ã€å†™Case的。

 

从“测试”二字说起

 

         一个民æ—的文化能够得以ä¿å­˜ï¼Œæ˜¯å› ä¸ºæœ‰äº†è¯­è¨€å’Œæ–‡å­—。其中尤以文字最为厉害,因为语言难以记录(录音机ã€MP3å’ŒDV那是近几年的事儿),在åƒä¸‡å¹´çš„å£è€³ç›¸ä¼ ä¸­éš¾å…产生讹å˜å’Œå¤±ä¼ ï¼Œè€Œæ–‡å­—是相当稳定的东西,å³ä½¿å‘生讹å˜å’Œè¯¯ç”¨ï¼ŒæœºçŽ‡ä¹Ÿæ¯”语言è¦å°å¾—多。

         特别是中国的方å—字,那就是一座å®è—。å¤äººåœ¨é€ å­—之åˆçš„å«ä¹‰å°±è•´å«åœ¨è¿™æ–¹å¯¸ä¹‹é—´ï¼Œè™½åŽ†ç»ç”²éª¨é’Ÿé¼Žã€ç¯†åœ†æ¥·æ­£ï¼Œå´å‡ ä¹Žä¸€ç‚¹ä¸å˜åœ°ç©¿è¶Šæ—¶ç©ºï¼ŒæŠŠç¥–先想表达的æ„æ€ç›´æŽ¥å¸¦åˆ°æˆ‘们é¢å‰ã€‚拉ä¸æ–‡ç­‰æ‹¼éŸ³æ–‡å­—就差一些了,它没有“形状”,åªèƒ½ä¾é å­—æ¯çš„排列组åˆæ¥ä½œä¸ºé—ä¼ çš„DNA了。

         中国人把Test翻译æˆæµ‹è¯•ï¼Œå¦™å“‰ï¼

         先看“测”字。从“æ°´”ã€ä»Ž“则”。“则”为何物?我们常说的“规则”,规是用æ¥ç”»åœ†çš„ã€çŸ©æ˜¯ç”¨æ¥ç”»ç›´è§’的,则最早是用“刀”把章法刻在“鼎”上让人们éµå®ˆçš„——åŽå¼•ç”³ä¸º“尺度”。这下,圆规ã€ç›´å°ºã€ä¸‰è§’æ¿éƒ½é½äº†ï¼Œå‘µå‘µã€‚æ‹¿å°ºå­ä¼¸åˆ°æ°´é‡Œï¼Œä¸å°±æ˜¯æµ‹é‡æ°´çš„深度å—?这就是“测”的本愗—亘å¤æœªå˜ã€‚å†è¿›ä¸€æ­¥ï¼Œå…¶å®žæµ‹é‡ä¸å…‰èƒ½æµ‹æ°´æ·±å§ï¼Œå‡¡æ˜¯ä¸Žè¢«æµ‹å¯¹è±¡çš„属性打交é“ã€è¿›è¡Œé‡åŒ–的行为,都应该算作“测”。秦始皇下大力气统一“度”(长度)“釔(体积)“è¡¡”(货å¸ï¼‰ï¼Œä¸éƒ½æ˜¯ä¸ºäº†æ–¹ä¾¿æµ‹è¯•è¡Œä¸šåœ¨å…¨å›½çš„统一å‘展å—。请大家注æ„,“测”字为我们传递了一个éžå¸¸é‡è¦çš„ä¿¡æ¯ï¼Œé‚£å°±æ˜¯“é™æ€”。基本上å¯ä»¥è¯´ï¼Œå¦‚果被测对象ä¸æ˜¯ç›¸å¯¹é™æ€çš„,那么就无法测é‡äº†ã€‚é‡å­ç‰©ç†ä¸­çš„“测ä¸å‡†åŽŸç†”中的测,也正是说明这一点。

         å†çœ‹“試”字。从“言”从“弔。 试,用也——《说文》。毋庸多言,“试”字为我们传递的é‡è¦ç†å¿µæ˜¯“动怔——使用,当然是动æ€çš„。而且,软件测试在国际范围内的公共定义就是“为了找到软件缺陷而进行的使用”。引申一步,“试”字从“言”,åˆæœ‰“考试”一个å«ä¹‰ã€‚看æ¥ï¼Œè¿™ä¸ªè€ƒè¯•æ˜¯å£è¯•äº†ï¼Œå‘µå‘µã€‚既然是考试,那么问答就是必è¦çš„了,所以会有一个言字,其实这一“é—®”和一“ç­””就是软件的“输入”与“输出”。

         软件的Build从拿到我们手里开始,就是处在“动”与“陔的交替状æ€ã€‚既然是动é™äº¤æ›¿ï¼Œæˆ‘们éžè¦å…ˆæŠŠé™çš„挑出æ¥å†™æˆCaseã€å†æŠŠå›ºå®šæŸä¸€ç§“动”挑出æ¥å†™æˆCase(而ä¸ç®¡å®ƒåœ¨ä»€ä¹ˆæ—¶å€™å‡ºçŽ°ï¼‰ï¼Œå½“然是件很麻烦的事情。那么我们应该怎么办呢?

 

对软件的“测”

 

         上文æ到,é™è€…为测。让我们想想软件都在什么时候是“陔的。

         我们看一个自然的æµç¨‹ï¼šBuild下载à下载完æˆà安装à安装完æˆàå¼€å¯à使用à关闭àå¸è½½ã€‚哪些是é™ï¼Ÿå“ªäº›æ˜¯åŠ¨ï¼Ÿè®©æˆ‘们一一剖æžã€‚

1.         下载 :     全部属性处在动æ€è€Œä¸å¯æµ‹ä¸­ã€‚

2.