4、靈感

  在閱讀本章前,我們先看看靈感一詞。inspiration - stimulation or arousal of the mind, feelings, etc, to special or unusual activity or creativity. 中文:加速或喚醒思維與情感,以達到非凡的活力或創(chuàng)造力。此處:非凡的活力或創(chuàng)造力,自然是指system testing。那么本章講述的,應(yīng)該是:如何加速或喚醒system testing相關(guān)的思維與情感,以此來完成ambitous system testing這件事。

  RE用了三段來論述,為什么照著需求安排testing strategy是不足夠的。而后,開始討論,除了需求,我們還可以依賴哪些信息來源。RE在思考軟件測試到底要解決什么問題,他的答案是:我們知道所構(gòu)建的產(chǎn)品必然會存有問題,但我們希望可以通過努力,在真實環(huán)境中可以讓客戶順利(無失敗、無錯誤)的使用,并通過使用該產(chǎn)品解決問題。我們突然讀到這個話,可能有點覺得突兀。

  4.1 模型

  RE列舉了以下若干模型:需求,代碼,幫助文檔,軟件成品,思維模型。我們?yōu)榱死斫獾母由钊耄仍囍斫饽P蚆odel這個詞。Model - a representation, usually a smaller scale of  a device or structure。試著用中文解釋:模型-實體結(jié)構(gòu)或設(shè)備的一種縮小的展示。

  Q4.1.1:那么軟件測試的實體是什么?或者換個問法,軟件測試到底為了什么?此處的答案,4的開篇已經(jīng)講述了。即在知道不能發(fā)現(xiàn)全部問題的情況下,以保證客戶的順利使用,并達到目的為前提。而若干的模型,均為這一目的在不同層面,不同角度的展示。

  4.2 項目與工程

  本段主要結(jié)合真實背景,講述實際項目中,如何搜集信息。RE先列出了前提:當一個項目,經(jīng)過多版本發(fā)布后,已經(jīng)存在了相當多的歷史數(shù)據(jù)。我們要如何利用這些數(shù)據(jù)呢?如:

  ● 是否有為缺陷建立分類,并找到其中的共性?

  ● 是否有為缺陷做標簽,可以為以后的測試提供靈感?

  ● 嘗試尋找patch中修復(fù)的bug的由來,如何避免?

  >> 題外話:我近年進行system testing,都采用risk analysisi的方法,而被我評為高風險的兩大區(qū)域:1,customer case(用戶技術(shù)支持)集中的部分;2,近來bug(缺陷)集中的部分。

  當前測試進行的背景,也可以作為模型之一。如:

  ● 從哪里開始,有多少時間?

  ● 測試人員被背景?

  ● 別人會覆蓋哪些測試?

  RE說:如果有質(zhì)量標準可以作為參考,那么便可以容易的從上述提問中,找到何為重要區(qū)域。此處,提到新詞quality objective,即質(zhì)量標準,這個詞出現(xiàn)在這里略顯生僻。RE的意思是,用以判斷何為重要的準繩。但上文提到過類似的詞,叫value judgements,我以為,二者意思相近,應(yīng)該去掉一個。

  4.3 人與技能

  此處又有些含糊不清,看到人,我們先想到的是tester,但RE卻在第一段中說:要了解用戶(user)的知識范圍,感受,所受的傷害。那么此處的people,到底是指tester還是user,頗有些含糊。

  好在文章馬上轉(zhuǎn)入skills:

  ● 知識,經(jīng)驗,直覺,客官

  ● 探索與學(xué)習

  ● 分析思維

  ● 批判性思維

  ● 創(chuàng)新

  >> 題外話:為了提高我組里眾位精兵強將的tester的技能,我曾一度推行testing dojo活動。主要分了learning/practise兩種。learning dojo中,我們會一起觀看一段測試大牛的視頻,并討論其中涉及到的技術(shù)與理念,practise dojo,則選一名tester進行現(xiàn)場測試,其他人稍后會對本次測試給出意見。有人偷偷反饋說,testing dojo這個活動,是在公司幾年中頗有收獲的一個亮點?上В瑳]能堅持下去。

  4.4 更多靈感

  RE列舉了一些方法,如:

  ● 與客戶面對面,了解需求。注意,此處所用的詞,客戶(customer)不同于前文的用戶(user),我想簡單理解下,customer,付錢的,user,真正使用的。

  ● 自己使用 - eat your own dog food

  ● 看看競爭對手的產(chǎn)品

  ● 理解業(yè)務(wù)需求

  4.5 兩倍工作量

  在需求文檔之上,真實的需求包括上述種種,比需求文檔的內(nèi)容更加詳盡。tester應(yīng)該要試著理解,搜集,建立這份真實的需求,才能完成ambitous system testing。但也只有如此,tester才能從更多維度,理解產(chǎn)品。

  結(jié)尾:在結(jié)尾處,RE列出了34個測試點子的來源。此處,用了sources for test ideas,又一次的混淆詞意。此章講述的是test inspiration,應(yīng)該用sources for testing inspiration才對。試著列出一兩條:

  1)capabilities - 這東西干嘛地?

  2)failure mode - 現(xiàn)實的/假象的,內(nèi)部的/外部的失敗