如何閱讀軟件測試書籍
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2011/10/17 15:41:36 ] 推薦標(biāo)簽:
三番四次看見有人在俱樂部里提及,所以找來看看。翻開introduction,不由大笑。因?yàn)槲乙膊恢挂淮翁徇^,現(xiàn)存的測試方法,不適合于系統(tǒng)測試(system testing)。在我每年兩次的system testing時(shí),每次我都復(fù)習(xí)之前用過的方法,并加以改進(jìn)。自己也試著把經(jīng)歷寫成博客。點(diǎn)我。所以看到RE也跳出來寫,覺得頗為親切,于是看了下去。順便寫些閱讀手記,給不?磿膖ester們一點(diǎn)提示,看軟件測試書籍,要帶著詢問,思考,回答,聯(lián)想的方式閱讀,而萬不能一目十行。
注:Q為問題代號,即在閱讀時(shí),由于作者描述不清,產(chǎn)生的問題,我會在Q后,試圖在文中尋找答案。
1、標(biāo)題
作為一個(gè)的tester,首先我們要發(fā)問:這是一本關(guān)于什么的書。標(biāo)題是:the little black book on test design。
Q1.1為什么叫l(wèi)ittle?因?yàn)楸緯挥?2頁。
Q1.2black book,為啥叫魔法書?
Q1.3test design,哪一部分的test,unit test,component test,還是integration或system test,抑或全部包括?
僅從標(biāo)題,我們還無法得到答案。
2、縱覽目錄,結(jié)構(gòu)及方向
RE將本書分為:介紹,靈感,分析,點(diǎn)子,執(zhí)行,終曲,及參考書目這幾個(gè)部分。
3、簡介
簡介里,通常會告訴我們,作者為什么會寫這本書,寫了給誰看。RE說:本書是講述system testing的。這回答了問題1.3。如果我們只做unit test,卻忽略了這句話,讀完了才開始罵街,那要冤枉RE了。但是注意,RE在此處提到了一個(gè)新詞:ambitious,野心。
Q3.1什么叫有野心的進(jìn)行system testing呢?
RE說:十年來常覺得現(xiàn)存測試方法之不足,現(xiàn)將坊間實(shí)用方法記錄如下,以供諸位品鑒。實(shí)用方法包括:測試策略,分析,設(shè)計(jì),和執(zhí)行。此處,RE提供了一條新的線索,即:本書所謂的測試設(shè)計(jì),不止包括設(shè)計(jì),更包括其他一切。因?yàn)樵诂F(xiàn)實(shí)中,這些任務(wù)彼此互相聯(lián)系,很難徹底分開。由于測試的抽樣區(qū)間過分巨大(即連一個(gè)計(jì)算器都有無窮多種組合的輸入),因此,從中選出重要區(qū)域才是關(guān)鍵。手動進(jìn)行system testing的人,如何抽樣重要區(qū)域更為重要。此處,勉強(qiáng)算是Q1.2的解答,因?yàn)樵谡鎸?shí)環(huán)境中,現(xiàn)存方法并不實(shí)用,因此,才將實(shí)用方法總結(jié)分享,稱之為black book。
我們更可以替作者做出總結(jié):本書是針對系統(tǒng)測試(system testing)的實(shí)用方法的總結(jié)歸納(用于找到測試的重要區(qū)域),尤其適用于手動測試。
3.1 要素
RE說:tester應(yīng)該收集盡可能多的信息(需求,說明,雛形,代碼,缺陷,技術(shù)支持,用戶故事,用戶預(yù)期,技術(shù),工具,模型,系統(tǒng),質(zhì)量標(biāo)準(zhǔn),質(zhì)量特點(diǎn),測試技術(shù),測試點(diǎn)子,交談,風(fēng)險(xiǎn),可能性),將所有這些整理起來,而后發(fā)揮創(chuàng)造力,找到重要區(qū)域。但是,這個(gè)方法只適合于ambitious projects,即有野心的項(xiàng)目。若是你的項(xiàng)目,資源緊缺(說白了是沒啥經(jīng)費(fèi),沒啥牛人),別扯這個(gè)。即:ambitious project needs ambitious testers and ambitious testing。(有野心的項(xiàng)目,才需要有野心的tester和有野心的testing)。此處,對Q3.1,ambitious有了解答。
RE又說:若是有野心之人,那么可以采用下面四步:1,搜尋靈感,2,分析重點(diǎn)區(qū)域,3,合成測試點(diǎn)子,4執(zhí)行。我們留意到,這四步,正是接下來四章的標(biāo)題。
3.2 基礎(chǔ)理論
RE以社會學(xué)研究為例:科學(xué)家總是收集被研究對象的所有信息,加以分類,試圖從中發(fā)現(xiàn)一些理論。直到收集來的信息穩(wěn)定下來,再不更改,此時(shí),理論才成型。整個(gè)過程中,沒有前提,沒有假設(shè),若是我們開始自許已經(jīng)將重要問題都一網(wǎng)打盡,那是非常危險(xiǎn)的事情。RE將基礎(chǔ)理論的形成與testing進(jìn)行類比;A(chǔ)理論是要從社會中收集信息,包括面談,背景資料等,相比對于testing如何收集信息,3.1中的要素中已經(jīng)列舉過了。
3.3 測試設(shè)計(jì)理論
RE說:測試的策略、分析、設(shè)計(jì)與執(zhí)行不應(yīng)分離,而應(yīng)結(jié)合在一起。因?yàn)樗鼈冎g互相影響,更不要一開始定下strategy,讓它慢慢隨著情形演變。此處RE的理念,開始與敏捷共鳴。越是晚下決定,對客戶越有利。那么是不是不應(yīng)該有strategy呢?RE說,高層的策略可以有,但不要具體。底層的測試策略,則應(yīng)該在學(xué)習(xí)的同時(shí),逐漸成型。
RE說:為什么測試分析不常被提及?因?yàn)椤耙獪y什么”早已在需求中說清楚了。市面上大部分的書,都在講述單元測試或模塊測試的方法,而比之更重要的system testing,以及如何選擇重要區(qū)域(important things)這個(gè)問題,卻被忽略了。好在,探索性測試比較關(guān)注于此。RE更感興趣的,不是設(shè)計(jì)測試用例,而是設(shè)計(jì)測試點(diǎn)子。此處,與基礎(chǔ)理論相對應(yīng),RE認(rèn)為,他的工作是搜集相關(guān)信息,分析,針對性的進(jìn)行選擇策略與工具。
Q3.3.1:我們已經(jīng)聽RE提到過數(shù)次,重要區(qū)域了,到底什么是重要的?
3.4 重要區(qū)域(important things)
終于來解答Q4.3.1這個(gè)問題了。RE列舉了如下若干可以為重點(diǎn)區(qū)域提供參考的信息來源:1需求,2業(yè)界知識,3用戶情況,4想象力,5批判性,6技術(shù),7測試人的思維。從上述來源中選去重點(diǎn),需要對價(jià)值觀的判斷,而計(jì)算機(jī),在這一點(diǎn)上,遠(yuǎn)遠(yuǎn)不如人類。此處,提到需要用到價(jià)值判斷(value judgement),來選擇重點(diǎn)區(qū)域。相信這個(gè)詞,在之后會頻繁出現(xiàn)。
相關(guān)推薦
相關(guān)產(chǎn)品

最新發(fā)布
性能測試之測試環(huán)境搭建的方法
2020/7/21 15:39:32軟件測試是從什么時(shí)候開始被企業(yè)所重視的呢?
2020/7/17 9:09:11Android自動化測試框架有哪些?有什么用途?
2020/7/17 9:03:50什么樣的項(xiàng)目適合做自動化?自動化測試人員應(yīng)具備怎樣的能力?
2020/7/17 8:57:06幾大市面主流性能測試工具測評
2020/7/17 8:52:11RPA機(jī)器人能夠快速響應(yīng)企業(yè)需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消滅嗎?為什么?
2020/7/17 8:43:03軟件測試基本概念是怎么來的?軟件測試生命周期的形成歷經(jīng)了什么?
2020/7/16 9:11:10