精品国产一级毛片大全,毛片一级在线,毛片免费观看的视频在线,午夜毛片福利

對幾道流行的軟件測試面試題的聯(lián)想

  測試人員考試試卷(考試時(shí)間90分鐘,滿分100分)

  一、判斷題(每題1分,12 分,正確的√,錯(cuò)誤的╳)

  1.軟件測試的目的是盡可能多的找出軟件的缺陷。()

  軟件測試的目的就是為了發(fā)現(xiàn)軟件中的缺陷,從這個(gè)意義上面說上面的這個(gè)論斷是正確的。不少人會(huì)認(rèn)為軟件測試可以保證軟件的質(zhì)量,其實(shí)這個(gè)觀點(diǎn)是錯(cuò)誤,測試 只是軟件質(zhì)量控制中的一個(gè)角色,其活動(dòng)并不能達(dá)成軟件質(zhì)量保證的效果。所以不要認(rèn)為一個(gè)公司里面如果有了軟件測試人員,產(chǎn)品的質(zhì)量就會(huì)好起來。

  Comments:

  我覺得這個(gè)關(guān)于測試的目的答案要追溯到軟件測試的定義,可是現(xiàn)在軟件測試并沒有“確切的”統(tǒng)一的定義主要是有以下幾個(gè):

  第一種:測試就是發(fā)現(xiàn)缺陷,提高產(chǎn)品質(zhì)量

  這個(gè)定義大概(我不太確定)可以追溯到G.J.Myers的經(jīng)典著作《軟件測試之藝術(shù)》(The Art of Software Testing)中,給出了測試的定義:“程序測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程”

  從這個(gè)定義上來說,軟件測試的目的就是找出更多的軟件的缺陷,這道題是對的。

  第二種:代表性的有以下三個(gè):

  “測試是以評價(jià)一個(gè)程序或者系統(tǒng)屬性為目標(biāo)的任何一種活動(dòng)。測試是對軟件質(zhì)量的度量。”

  ―――――――――――― 1979年,Glenford Myers《軟件測試藝術(shù)》(The Art of Software Testing)

  “使用人工或自動(dòng)手段來運(yùn)行或測定某個(gè)系統(tǒng)的過程,其目的在于檢測它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別”

  ――――――――――――――IEEE-1983

  “測試是為了度量和提高被測軟件的質(zhì)量,對測試件進(jìn)行工程設(shè)計(jì)、實(shí)施和維護(hù)的整個(gè)生命周期過程。”

  ――――――――― 2002年,Rick和Stefan《系統(tǒng)的軟件測試》(Systematic Software Testing)

  我們可以看到當(dāng)軟件測試碰上軟件質(zhì)量或CMMI等一批人之后,這個(gè)定義就被拔高和廣泛了,拔高的軟件測試的定義一般會(huì)牽扯到“過程”,“軟件質(zhì)量”等術(shù)語?傊痪湓挘@就不是單單是軟件的問題了,而是涉及到需求,設(shè)計(jì)等一系列的過程。

  這樣的話,我們可以判這道題為錯(cuò)誤的,因?yàn)檫@種說法不完整,是狹義的,列出的理由可能是軟件測試的目的“不僅僅”(注意這個(gè)詞)是要發(fā)現(xiàn)軟件的缺陷,因?yàn)槌诌@種觀點(diǎn)的人把軟件測試的定義上升到了軟件質(zhì)量控制的高度啦。

  矛盾在哪里呢?為什么做這道題時(shí)會(huì)如履薄冰呢?矛盾在于:

  1. 并不是所有的機(jī)構(gòu)都持統(tǒng)一的定義標(biāo)準(zhǔn)。

  2. 廣義的軟件測試定義只是“完善”了狹義的測試定義的內(nèi)容,并不能說明按狹義的定義就是錯(cuò)的,關(guān)鍵還在你不知道面試方承認(rèn)不承認(rèn)這一點(diǎn)。(通常做完題是沒有機(jī)會(huì)和面試官討論這一點(diǎn)的)

  3. 這份網(wǎng)上流程的題并沒有給出權(quán)威的正確的答案,而很多企業(yè)又拿過來考來考去。

  其實(shí)我們在看到很多面試的試卷出這道題的時(shí)候,權(quán)威的CMM本身確沒有充分定義軟件測試,(這段為引用,沒看過CMM的資料,見如下闡述:)

  “但是令人遺憾的是,CMM 沒有充分的定義軟件測試,沒有提及測試成熟度的概念,沒有對測試過程改進(jìn)進(jìn)行充分說明,在 KPA 中沒有定義測試問題,與質(zhì)量相關(guān)的測試問題如可測性,充分測試標(biāo)準(zhǔn),測試計(jì)劃等方面也沒有滿意的闡述。”

  如果真是這樣的話,倒是打了出題的人一巴掌。不過TMM倒是給了段測試目的的定義;

  TMM 測試成熟度分解為 5 級別,關(guān)注于 5 個(gè)成熟度級別遞增:

  Phase 0 :測試和調(diào)試沒有區(qū)別,初了支持調(diào)試外,測試沒有其他目的

  Phase 1 :測試的目的是為了表明軟件能夠工作

  Phase 2 :測試的目的是為了表明軟件不能夠能夠正常工作

  Phase 3 :測試的目的不是要證明什么,而是為了把軟件不能正常工作的預(yù)知風(fēng)險(xiǎn)降低到能夠接受的程度

  Phase 4 : 測試不是行為,而是一種自覺的約束 (mental discipline) ,不用太多的測試投入產(chǎn)生低風(fēng)險(xiǎn)的軟件上的 。

  但可以肯定的是這個(gè)定義也只能用來理解理解,完全不能用來做是非題。

  完了,以上其實(shí)都是教條主義,說說我的看法,樸素一點(diǎn)的說,其實(shí)我覺得軟件測試的目的要服務(wù)項(xiàng)目的目標(biāo),有篇流傳很廣的文章是這么說的:

  “軟件測試的目的決定了如何去組織測試。如果測試的目的是為了盡可能多地找出錯(cuò)誤,那么測試就應(yīng)該直接針對軟件比較復(fù)雜的部分或是以前出錯(cuò)比較多的位置。如 果測試目的是為了給最終用戶提供具有一定可信度的質(zhì)量評價(jià),那么測試就應(yīng)該直接針對在實(shí)際應(yīng)用中會(huì)經(jīng)常用到的商業(yè)假設(shè)。” Over,我覺得這個(gè)說法好。

  從這幾道流行的軟件測試面試題想到的(二)

  軟件測試可以劃分為幾種類型?(或軟件測試分哪幾種?)+測試方法分為哪幾種?

  Comments:

  這道題常見的程度不亞于第一道題,上當(dāng)?shù)脑捯婚_始就上來給一陣狂列,然后你自己就暈了,不過傳說中的22種測試類型都能背得住的差不多也是半個(gè)神人了。

  1. 關(guān)于軟件測試可以劃分為幾種類型的問題?個(gè)人認(rèn)為我覺得這個(gè)一味的羅列并不是最好的答案。我更覺得其實(shí)這道題只要說出你的劃分依據(jù)不用列那么多種也是份不錯(cuò)的答案(當(dāng)然如果是面試的話。咱們可以以“啊哈,這個(gè)問題嘛,關(guān)鍵要看你以什么來劃分了”來開頭),以下是參考:

  按測試要素分:

  ――UI測試,單元測試,系統(tǒng)測試,功能測試,兼容性測試,本地化測試,壓力負(fù)載測試,web測試

  按測試階段分:

  A.詳細(xì)測試(Comprehensive Testing,F(xiàn)C階段,可能包含單元測試和集成測試)

  B.回歸測試(Regression Testing)

  C.驗(yàn)收測試 (Qualification Testing,RC&RTM階段)

  按測試方法(手段)分:

  A.腳本測試(Scripted testing,ST)

  B. 隨機(jī)測試(Ad_hoc testing)

  C.探索性測試(Exploratory testing,ET)

  從是否執(zhí)行程序的角度

  A.靜態(tài)測試

  B.動(dòng)態(tài)測試。

  (個(gè)人覺得這種劃分沒多大必要)

  從是否關(guān)心軟件內(nèi)部結(jié)構(gòu)和具體實(shí)現(xiàn)的角度劃分

  A.白盒測試

  B.黑盒測試

  C.灰盒測試

  足以,再多說也是浪費(fèi)口舌。

  2. 區(qū)分一下測試類型和測試方法的異同,

  OK,回來再問一遍,測試方法分為哪幾種?

  哈哈,其實(shí)是本人有感于時(shí)不時(shí)聽到諸如黑盒測試方法,性能測試方法這類詞眼時(shí),耳朵經(jīng)常失靈,別扭,這句話就象是有人在發(fā)問“軟件測試的手段有哪些”,低下有人喊了“黑盒測試方法,性能測試方法”,可我還是覺得你說的是測試的類型而不是測試的方法(手段)。面試時(shí)注意人家問你的是什么?

  可能有點(diǎn)吹毛求疵的感覺,但實(shí)際上如果能用“黑盒測試的方法有哪些”或“性能測試的手段有哪些”等詞我覺得會(huì)好一些,這樣起碼讓人家知道黑盒測試,性能測試是一種類型,實(shí)現(xiàn)它有好幾種方法,即OO中的class.method的意味。

  總之,測試類型和測試方法要分開。

  從這幾道流行的軟件測試面試題想到的(三)

  3.下列關(guān)于alpha 測試的描述中正確的是:()

  A.alpha 測試需要用戶代表參加

  B.alpha 測試不需要用戶代表參加

  C.alpha 測試是系統(tǒng)測試的一種

  D.alpha 測試是驗(yàn)收測試的一種

  Comments:

  首先我們來看一下Alpha測試和Beta測試的定義:

  Alpha測試與Beta測試的定義 (引用網(wǎng)上的文章)

  Alpha版 (內(nèi)部測試版) :一般只在軟件開發(fā)公司內(nèi)部運(yùn)行,不對外公開。主要是開發(fā)者自己對產(chǎn)品進(jìn)行測試,檢查產(chǎn)品是否存在缺陷、錯(cuò)誤,驗(yàn)證產(chǎn)品功能與說明書、用戶手冊是否一致。

  【Alpha測試------軟件工程導(dǎo)論(第四版) 清華大學(xué)出版社

  Alpha測試由用戶在開發(fā)者的場所進(jìn)行,并且在開發(fā)者對用戶的“指導(dǎo)”下進(jìn)行測試。開發(fā)者負(fù)責(zé)記錄發(fā)現(xiàn)在錯(cuò)誤和使用中遇到的問題?傊,Alpha測試是在受控的環(huán)境中進(jìn)行的。 】

  Beta版(外部測試版):軟件開發(fā)公司為對外宣傳,將非正式產(chǎn)品免費(fèi)發(fā)送給具有典型性的用戶,讓用戶測試該軟件的不足之處及存在問題,以便在正式發(fā)行前進(jìn)一步改進(jìn)和完善。一般可通過Internet免費(fèi)下載,也可以向軟件公司索取。

  據(jù)百度所講,廣義上對測試有三個(gè)傳統(tǒng)的稱呼,alpha、beta、gamma,用來標(biāo)識測試的階段和范圍。alpha 是指內(nèi)測,即現(xiàn)在說的 CB,指開發(fā)團(tuán)隊(duì)內(nèi)部測試的版本或者有限用戶體驗(yàn)測試版本。beta 是指公測,即針對所有用戶公開的測試版本。然后做過一些修改,成為正式發(fā)布的候選版本時(shí)(現(xiàn)在叫做 RC - Release Candidate),叫做 gamma。

  1.OK,很簡單,這道題是要澄清一下Alpha測試和Beta測試時(shí),用戶在不在場的問題。

  答案是都在場,只不過Alpha時(shí)在開發(fā)者的場所,Beta時(shí)在用戶自己的場所。

  2.把這道題擴(kuò)展一下,我們來討論一下Alpha測試和Beta測試時(shí),測試人員要不要在場的問題。

  答案是:測試人員都不在場

  3.實(shí)際的情況是只有大的IT公司才遵從這些測試規(guī)范,更加現(xiàn)實(shí)的情況是不管Alpha或Beta測試什么人在場都有。如果你能為規(guī)范的大公司工作,那你接觸到的流傳都會(huì)是很嚴(yán)格的。

相關(guān)導(dǎo)讀:

面試日企常遇到的問題

壓力面試的應(yīng)對策略

本文已影響6827
上一篇:軟件測試工程師求職總結(jié) 下一篇:新浪UC部門軟件測試面試題

相關(guān)文章推薦

|||||