- 相關(guān)推薦
qa面試問(wèn)題及答案
一般要應(yīng)聘關(guān)于軟件開(kāi)發(fā)的工作,面試題會(huì)不會(huì)很難?qa面試問(wèn)題及答案是什么?
qa面試問(wèn)題及答案
1、你的測(cè)試職業(yè)發(fā)展是什么?
測(cè)試經(jīng)驗(yàn)越多,測(cè)試能力越高。所以我的職業(yè)發(fā)展是需要時(shí)間積累的,一步步向著高級(jí)測(cè)試工程師奔去。而且我也有初步的職業(yè)規(guī)劃,前3年積累測(cè)試經(jīng)驗(yàn),按如何做好測(cè)試工程師的要點(diǎn)去要求自己,不斷更新自己改正自己,做好測(cè)試任務(wù)。
2、你認(rèn)為測(cè)試人員需要具備哪些素質(zhì)
做測(cè)試應(yīng)該要有一定的協(xié)調(diào)能力,因?yàn)闇y(cè)試人員經(jīng)常要與開(kāi)發(fā)接觸處理一些問(wèn)題,如果處理不好的話會(huì)引起一些沖突,這樣的話工作上就會(huì)不好做。還有測(cè)試人員要有一定的耐心,有的時(shí)候做測(cè)試很枯燥乏味。除了耐心,測(cè)試人員不能放過(guò)每一個(gè)可能的錯(cuò)誤。
3、你為什么能夠做測(cè)試這一行
雖然我的測(cè)試技術(shù)還不是很成熟,但是我覺(jué)得我還是可以勝任軟件測(cè)試這個(gè)工作的,因?yàn)樽鲕浖䴗y(cè)試不僅是要求技術(shù)好,還有有一定的溝通能力,耐心、細(xì)心等外在因素。綜合起來(lái)看我認(rèn)為我是勝任這個(gè)工作的。
4、測(cè)試的目的是什么?
測(cè)試的目的是找出軟件產(chǎn)品中的錯(cuò)誤,是軟件盡可能的符合用戶的要求。當(dāng)然軟件測(cè)試是不可能找出全部錯(cuò)誤的。
5、測(cè)試分為哪幾個(gè)階段?
一般來(lái)說(shuō)分為5個(gè)階段:?jiǎn)卧獪y(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試
6、單元測(cè)試的測(cè)試對(duì)象、目的、測(cè)試依據(jù)、測(cè)試方法?
測(cè)試對(duì)象是模塊內(nèi)部的程序錯(cuò)誤,目的是消除局部模塊邏輯和功能上的錯(cuò)誤和缺陷。測(cè)試依據(jù)是模塊的詳細(xì)設(shè)計(jì),測(cè)試方法是采用白盒測(cè)試。
7、怎樣看待加班問(wèn)題
加班的話我沒(méi)有太多意見(jiàn),但是我還是覺(jué)得如果能夠合理安排時(shí)間的話,不會(huì)有太多時(shí)候加班的。
8、結(jié)合你以前的學(xué)習(xí)和工作經(jīng)驗(yàn),你認(rèn)為如何做好測(cè)試。
根據(jù)我以前的工作和學(xué)習(xí)經(jīng)驗(yàn),我認(rèn)為做好工作首先要有一個(gè)良好的溝通,只有溝通無(wú)障礙了,才會(huì)有好的協(xié)作,才會(huì)有更好的效率,再一個(gè)就是技術(shù)一定要過(guò)關(guān),做測(cè)試要有足夠的耐心,和一個(gè)良好的工作習(xí)慣,不懂的就要問(wèn),實(shí)時(shí)與同事溝通這樣的話才能做好測(cè)試工作。
9、你為什么選擇軟件測(cè)試行業(yè)
因?yàn)橹傲私廛浖䴗y(cè)試這個(gè)行業(yè),覺(jué)得他的發(fā)展前景很好。
10、根據(jù)你以前的工作或?qū)W習(xí)經(jīng)驗(yàn)描述一下軟件開(kāi)發(fā)、測(cè)試過(guò)程,由哪些角色負(fù)責(zé),你做什么
要有架構(gòu)師、開(kāi)發(fā)經(jīng)理、測(cè)試經(jīng)理、程序員、測(cè)試員。我在里面主要是負(fù)責(zé)所分到的模塊執(zhí)行測(cè)試用例。
11、根據(jù)你的經(jīng)驗(yàn)說(shuō)說(shuō)你對(duì)軟件測(cè)試/質(zhì)量保證的理解
軟件質(zhì)量保證與測(cè)試是根據(jù)軟件開(kāi)發(fā)階段的規(guī)格說(shuō)明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計(jì)的一批測(cè)試用例(即輸入數(shù)據(jù)和預(yù)期的輸出結(jié)果),并根據(jù)這些測(cè)試用例去運(yùn)行程序,以發(fā)現(xiàn)錯(cuò)誤的過(guò)程。它是對(duì)應(yīng)用程序的各個(gè)方面進(jìn)行測(cè)試以檢查其功能、語(yǔ)言有效性及其外觀排布。
12、軟件測(cè)試的流程是什么?
需求調(diào)查:全面了解系統(tǒng)概況、應(yīng)用領(lǐng)域、軟件開(kāi)發(fā)周期、軟件開(kāi)發(fā)環(huán)境、開(kāi)發(fā)組織、時(shí)間安排、功能需求、性能需求、質(zhì)量需求及測(cè)試要求等。根據(jù)系統(tǒng)概況進(jìn)行項(xiàng)目所需的人員、時(shí)間和工作量估計(jì)以及項(xiàng)目報(bào)價(jià)。
制定初步的項(xiàng)目計(jì)劃。
測(cè)試準(zhǔn)備:組織測(cè)試團(tuán)隊(duì)、培訓(xùn)、建立測(cè)試和管理環(huán)境等。
測(cè)試設(shè)計(jì):按照測(cè)試要求進(jìn)行每個(gè)測(cè)試項(xiàng)的測(cè)試設(shè)計(jì),包括測(cè)試用例的設(shè)計(jì)和測(cè)試腳本的開(kāi)發(fā)等。
測(cè)試實(shí)施:按照測(cè)試計(jì)劃實(shí)施測(cè)試。
測(cè)試評(píng)估:根據(jù)測(cè)試的結(jié)果,出具測(cè)試評(píng)估報(bào)告。
13、你對(duì)SQA的職責(zé)和工作活動(dòng)(如軟件度量)的理解?
SQA就是獨(dú)立于軟件開(kāi)發(fā)的項(xiàng)目組,通過(guò)對(duì)軟件開(kāi)發(fā)過(guò)程的監(jiān)控,來(lái)保證軟件的開(kāi)發(fā)流程按照指定的CMM規(guī)程(如果有相應(yīng)的CMM規(guī)程),對(duì)于不符合項(xiàng)及時(shí)提出建議和改進(jìn)方案,必要時(shí)可以向高層經(jīng)理匯報(bào)以求問(wèn)題的解決。通過(guò)這樣的途徑來(lái)預(yù)防缺陷的引入,從而減少后期軟件的維護(hù)成本。SQA主要的工作活動(dòng)包括制定SQA工作計(jì)劃,參與階段產(chǎn)物的評(píng)審,進(jìn)行過(guò)程質(zhì)量、功能配置及物理配置的審計(jì)等;對(duì)項(xiàng)目開(kāi)發(fā)過(guò)程中產(chǎn)生的數(shù)據(jù)進(jìn)行度量等等。
14、說(shuō)說(shuō)你對(duì)軟件配置管理的理解
項(xiàng)目在開(kāi)發(fā)過(guò)程中要用相應(yīng)的配置管理工具對(duì)配置項(xiàng)(包括各個(gè)階段的產(chǎn)物)進(jìn)行變更控制,配置管理的使用取決于項(xiàng)目規(guī)模和復(fù)雜性及風(fēng)險(xiǎn)的水平。軟件的規(guī)模越大,配置管理就越顯得重要。還有在配置管理中,有一個(gè)很重要的概念,那就是基線,是在一定階段各個(gè)配置項(xiàng)的組合,一個(gè)基線就提供了一個(gè)正式的標(biāo)準(zhǔn),隨后的工作便基于此標(biāo)準(zhǔn),并只有經(jīng)過(guò)授權(quán)后才能變更這個(gè)標(biāo)準(zhǔn)。配置管理工具主要有CC,VSS,CVS,SVN等,我只用過(guò)SVN,對(duì)其他的工具不是很熟悉。
15、怎樣寫測(cè)試計(jì)劃和測(cè)試用例
簡(jiǎn)單點(diǎn),測(cè)試計(jì)劃里應(yīng)有詳細(xì)的測(cè)試策略和測(cè)試方法,合理詳盡的資源安排等,至于測(cè)試用例,那是依賴于需求(包括功能與非功能需求)是否細(xì)化到功能點(diǎn),是否可測(cè)試等。
16、說(shuō)說(shuō)主流的軟件工程思想(如CMM、CMMI、RUP,XP,PSP,TSP等)的大致情況及對(duì)他們的理解
CMM:SW Capability Maturity Model軟件能力成熟度模型,其作用是軟件過(guò)程的改進(jìn)、評(píng)估及軟件能力的評(píng)鑒。
CMMI:Capability Maturity Model Integration能力成熟度模型集成 CMMI融入了大部分最新的軟件管理實(shí)踐,同時(shí)彌補(bǔ)了SW-CMM模型中的缺陷。
RUP:rational unified process是軟件工程話過(guò)程。
XP:extreme program,即極限編程的意思,適用于小型團(tuán)隊(duì)的軟件開(kāi)發(fā),像上面第三個(gè)問(wèn)題就可以結(jié)合原型法采用這樣的開(kāi)發(fā)流程。要明白測(cè)試對(duì)于xp開(kāi)發(fā)的重要性,強(qiáng)調(diào)測(cè)試(重點(diǎn)是單元測(cè)試)先行的理念。編程可以明顯提高代碼的質(zhì)量,持續(xù)集成對(duì)于快速定位問(wèn)題有好處。
PSP,TSP分別是個(gè)體軟件過(guò)程和群體軟件過(guò)程。大家都知道,CMM只是告訴你做什么但并沒(méi)有告訴你如何做,所以PSP/TSP就是告訴你企業(yè)在實(shí)施CMM的過(guò)程中如何做,PSP強(qiáng)調(diào)建立個(gè)人技能(如何制定計(jì)劃、控制質(zhì)量及如何與其他人相互協(xié)作等等)。而TSP著重于生產(chǎn)并交付高質(zhì)量的軟件產(chǎn)品(如何有效的規(guī)劃和管理所面臨的項(xiàng)目開(kāi)發(fā)任務(wù)等等)。總之,實(shí)施CMM,永遠(yuǎn)不能真正做到能力成熟度的提升,只有將實(shí)施CMM與實(shí)施PSP和TSP有機(jī)結(jié)合起來(lái),才能發(fā)揮最大的效力。因此,軟件過(guò)程框架應(yīng)該是CMM/PSP/TSP的有機(jī)集成。
17、你是怎樣保證軟件質(zhì)量的,也就是說(shuō)你覺(jué)得怎樣才能最大限度的保證軟件的質(zhì)量?
測(cè)試并不能夠最大限度的保證軟件的質(zhì)量,軟件的高質(zhì)量是開(kāi)發(fā)和設(shè)計(jì)出來(lái)的,而不是測(cè)試出來(lái)的,它不僅要通過(guò)對(duì)軟件開(kāi)發(fā)流程的監(jiān)控,使得軟件開(kāi)發(fā)的各個(gè)階段都要按照指定的規(guī)程進(jìn)行,通過(guò)對(duì)各個(gè)階段產(chǎn)物的評(píng)審,QA對(duì)流程的監(jiān)控,對(duì)功能及配置的審計(jì)來(lái)達(dá)到開(kāi)發(fā)的最優(yōu)化。當(dāng)然測(cè)試也是保證軟件質(zhì)量的一個(gè)重要方式,是軟件質(zhì)量保證工程的一個(gè)重要組成部分。
18、基于目前中國(guó)的國(guó)情,大多數(shù)公司的項(xiàng)目進(jìn)度緊張、人員較少、需求文檔根本沒(méi)有或者很不規(guī)范,你認(rèn)為在這種情況下怎樣保證軟件的質(zhì)量?(大多數(shù)公司最想知道的就是在這種困難面前你該怎么保證軟件的質(zhì)量,因?yàn)檫@些公司一般就是這種情況--既不想投入過(guò)多又想保證質(zhì)量)
出現(xiàn)以上的情況,如果僅僅想通過(guò)測(cè)試來(lái)提高軟件質(zhì)量,那幾乎是不可能的,原因是沒(méi)有足夠的時(shí)間讓你去測(cè)試,少而不規(guī)范的文檔導(dǎo)致測(cè)試需求無(wú)法細(xì)化到足夠且有針對(duì)行的測(cè)試。所以,作為公司質(zhì)量保證的因該和項(xiàng)目經(jīng)理確定符合項(xiàng)目本身是和的軟件生命周期模型(比如RUP的建材,原型法),明確項(xiàng)目的開(kāi)發(fā)流程并督促項(xiàng)目組按照此流程開(kāi)展工作,所有項(xiàng)目組成員(項(xiàng)目經(jīng)理更加重要)都要制定出合理的工作計(jì)劃,加強(qiáng)代碼的單元測(cè)試,在客戶既定的產(chǎn)品交付日期范圍內(nèi),進(jìn)行產(chǎn)品的持續(xù)集成等等,如果時(shí)間允許可以再配合客戶進(jìn)行必要的系統(tǒng)功能測(cè)試。
19、一個(gè)測(cè)試工程師應(yīng)該具備哪些素質(zhì)和技能?
1-掌握基本的測(cè)試基礎(chǔ)理論
2-本著找出軟件存在的問(wèn)題的態(tài)度進(jìn)行測(cè)試,不要以挑刺的形象出現(xiàn)
3-可熟練閱讀需求規(guī)格說(shuō)明書等文檔
4-以用戶的觀點(diǎn)看問(wèn)題
5-有強(qiáng)烈的質(zhì)量意識(shí)
6-細(xì)心和責(zé)任心
7-良好的有效的溝通方式(與開(kāi)發(fā)人員及客戶)
8-具有以往的測(cè)試經(jīng)驗(yàn)?zāi)軌蚣皶r(shí)準(zhǔn)確的判斷出高危險(xiǎn)區(qū)在何處
20、做好軟件測(cè)試的一些關(guān)鍵點(diǎn)
1-測(cè)試人員必須經(jīng)過(guò)測(cè)試基礎(chǔ)知識(shí)和理論的相關(guān)培訓(xùn)
2-測(cè)試人員必須熟悉系統(tǒng)功能和業(yè)務(wù)
3-測(cè)試要有計(jì)劃,而且測(cè)試方案要和整個(gè)項(xiàng)目計(jì)劃協(xié)調(diào)好
4-必須實(shí)現(xiàn)編寫測(cè)試用例,測(cè)試執(zhí)行階段必須根據(jù)測(cè)試用例進(jìn)行
5-易用性,功能,分支,邊界,性能等功能行和非功能性需求都要進(jìn)行測(cè)試
6-對(duì)于復(fù)雜的流程一定要進(jìn)行流程分支,組合條件分析,再進(jìn)行等價(jià)類劃分準(zhǔn)備相關(guān)測(cè)試數(shù)據(jù)
7-測(cè)試設(shè)計(jì)的一個(gè)重要內(nèi)容是要準(zhǔn)備好具體的測(cè)試數(shù)據(jù),清楚這個(gè)測(cè)試數(shù)據(jù)是測(cè)試那個(gè)場(chǎng)景或分支的。
8-個(gè)人任務(wù)平均每三個(gè)測(cè)試用例至少應(yīng)該發(fā)現(xiàn)一個(gè)BUG,否則只能說(shuō)明測(cè)試用例質(zhì)量不好
9-除了每天構(gòu)建的重復(fù)測(cè)試可以考慮測(cè)試自動(dòng)化外,其他暫時(shí)都不要考慮去自動(dòng)話
21、軟件測(cè)試員自身素質(zhì)培養(yǎng)
1-首先,應(yīng)對(duì)軟件測(cè)試感興趣和對(duì)自己有自信,如果具備了這兩點(diǎn),那么在開(kāi)發(fā)過(guò)程中不管遇到什么樣的困難,相信一定能克服
2-善于懷疑,實(shí)際上沒(méi)有絕對(duì)正確的,總有錯(cuò)誤的地方,具有叛逆心理,別人認(rèn)為不可能發(fā)生的事情,我卻認(rèn)為可能發(fā)生,別人認(rèn)為是對(duì)的,我卻認(rèn)為不是對(duì)的。
3-打破沙鍋問(wèn)到底的精神,對(duì)于只出現(xiàn)過(guò)一次的BUG一定要找出原因,不解決誓不罷休。
4-保持一個(gè)良好的心情,否則可能無(wú)法把測(cè)試做好。不要把生活中的不愉快的情緒帶到工作中來(lái)。
5-做測(cè)試時(shí)要細(xì)心,不是所有的BUG都能很容易找出,一定要細(xì)心才能找到這些BUG。
6-靈活一些,聰明一點(diǎn),多造一些容易產(chǎn)生BUG的例子。
7-在有條件的情況下,多和客戶溝通,他們身上有你所需要的。
8-設(shè)身處地為客戶著想,從他們的角度去測(cè)試系統(tǒng)。
9-不要讓程序員,以“這種情況不可能發(fā)生”這句話說(shuō)服你,相反,你應(yīng)該去說(shuō)服他,告訴他在客戶心理,并不是這樣的
10-考慮問(wèn)題要全面,結(jié)合客戶的需求,業(yè)務(wù)流程和系統(tǒng)的架構(gòu)等多方面考慮問(wèn)題。
11-提出問(wèn)題不要復(fù)雜化,這點(diǎn)和前面矛盾,如果你是一個(gè)新手,暫時(shí)不要管這點(diǎn),因?yàn)樽罱K將有你的小組成員討論解決。
12-追求完美,對(duì)于新測(cè)試員來(lái)說(shuō),努力追求完美,這對(duì)你很好,盡管有些事情無(wú)法做到,但你應(yīng)該嘗試。
13-幽默感,能和開(kāi)發(fā)小組很好的溝通是關(guān)鍵,試著給你的開(kāi)發(fā)小組找一個(gè)BUG殺手,或?qū)λ麄冋f(shuō)“我簡(jiǎn)直不敢相信,你寫的程序居然到現(xiàn)在沒(méi)有找到BUG”。
22、為什要在一個(gè)團(tuán)隊(duì)中開(kāi)展測(cè)試工作?
因?yàn)闆](méi)有經(jīng)過(guò)測(cè)試的軟件很難在發(fā)布之前知道該軟件的質(zhì)量,就好比ISO質(zhì)量認(rèn)證一樣,測(cè)試同樣也需要質(zhì)量認(rèn)證,這個(gè)時(shí)候就需要在團(tuán)隊(duì)中開(kāi)展軟件測(cè)試的工作。在測(cè)試的過(guò)程中發(fā)現(xiàn)軟件中存在的問(wèn)題,及時(shí)讓開(kāi)發(fā)人員得知并修改問(wèn)題,在即將發(fā)布時(shí),從測(cè)試報(bào)告中得出軟件的質(zhì)量情況。
23、你所熟悉的軟件測(cè)試類型有哪些?
測(cè)試類型有:功能測(cè)試、性能測(cè)試、界面測(cè)試
功能測(cè)試在測(cè)試工作中占有比例最大,功能測(cè)試也叫黑盒測(cè)試。
性能測(cè)試是通過(guò)自動(dòng)化的測(cè)試工具模擬多種正常、峰值以及異常負(fù)載條件來(lái)對(duì)系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測(cè)試。負(fù)載測(cè)試和壓力測(cè)試都屬于性能測(cè)試,兩者可以結(jié)合進(jìn)行。
界面測(cè)試,界面是軟件與用戶交互的最直接的層,界面的好壞決定用戶對(duì)軟件的第一印象。
區(qū)別在于,功能測(cè)試關(guān)注產(chǎn)品的所有功能,要考慮到每個(gè)細(xì)節(jié)功能,每個(gè)可能存在的功能問(wèn)題。性能測(cè)試主要關(guān)注產(chǎn)品整體的多用戶并發(fā)下的穩(wěn)定性和健壯性。界面測(cè)試則關(guān)注與用戶體驗(yàn)相關(guān)內(nèi)容,用戶使用該產(chǎn)品的時(shí)候是否已用,是否易懂,是否規(guī)范(用戶無(wú)意輸入無(wú)效的數(shù)據(jù),當(dāng)然考慮到體驗(yàn)性,不能太粗魯?shù)膹棾鼍?。做某個(gè)性能測(cè)試的時(shí)候,首先它可能是個(gè)功能點(diǎn),首先要保證她的功能是沒(méi)有問(wèn)題的,然后再考慮性能的問(wèn)題。
24、你認(rèn)為做好測(cè)試用例設(shè)計(jì)工作的關(guān)鍵是什么
白盒測(cè)試用例設(shè)計(jì)的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)構(gòu)。黑盒測(cè)試用例設(shè)計(jì)的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測(cè)試,以最少的用例在合理的時(shí)間內(nèi)發(fā)現(xiàn)最多的問(wèn)題。軟件的黑盒測(cè)試意味著測(cè)試要在軟件的接口處進(jìn)行,這種方法是把測(cè)試對(duì)象看作是一個(gè)黑盒子,測(cè)試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程序的需求規(guī)格說(shuō)明書,檢查程序的功能是否符合它的功能說(shuō)明。因此黑盒測(cè)試又叫功能測(cè)試或者數(shù)據(jù)驅(qū)動(dòng)測(cè)試。黑盒測(cè)試主要是為了發(fā)現(xiàn)以下幾類錯(cuò)誤:、
1-是否有不正確或遺漏的功能
2-在接口上,輸入是否能正確的接受?能否輸出正確的結(jié)果。
3-是否有數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤或外部信息(例如數(shù)據(jù)文件)訪問(wèn)錯(cuò)誤
4-性能上是否能夠滿足要求
5-是否有初始化或終止性錯(cuò)誤
軟件的白盒測(cè)試是對(duì)軟件的過(guò)程性細(xì)節(jié)做細(xì)致的檢查。這種方法是把測(cè)試對(duì)象看作一個(gè)打開(kāi)的盒子,它允許測(cè)試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)和有關(guān)信息,設(shè)計(jì)或者選擇測(cè)試用例,對(duì)程序所有邏輯路徑進(jìn)行測(cè)試。通過(guò)在不同點(diǎn)檢查程序狀態(tài),確定實(shí)際狀態(tài)是否與預(yù)期的狀態(tài)一直。因此白盒測(cè)試又稱為結(jié)合測(cè)試或邏輯驅(qū)動(dòng)測(cè)試。白盒測(cè)試主要是想對(duì)程序模塊進(jìn)行如下檢查:
1-對(duì)程序模塊的所有獨(dú)立的執(zhí)行路徑至少測(cè)試一遍。
2-對(duì)所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測(cè)一遍。
3-在循環(huán)的邊界和運(yùn)行的界限內(nèi)執(zhí)行循環(huán)體。
4-測(cè)試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性,等等。
25、請(qǐng)?jiān)敿?xì)介紹一下各種測(cè)試類型的含義
1-單元測(cè)試(模塊測(cè)試)是開(kāi)發(fā)者編寫的一小段代碼,用于檢驗(yàn)被測(cè)試代碼的一個(gè)很小的、很明確的功能是否正確。通常而言,一個(gè)單元測(cè)試是用于判斷某個(gè)特定條件(或者場(chǎng)景)下某個(gè)特定函數(shù)的行為。單元測(cè)試是由程序員自己來(lái)完成,最終受益的也是程序員自己?梢赃@么說(shuō),程序員有責(zé)任編寫功能代碼,同時(shí)也就有責(zé)任為自己的代碼編寫單元測(cè)試。執(zhí)行單元測(cè)試,就是為了證明這段代碼的行為和我們期望的一致。
2-集成測(cè)試(也叫組裝測(cè)試、聯(lián)合測(cè)試)是單元測(cè)試的邏輯擴(kuò)展。它最簡(jiǎn)單的形式是:兩個(gè)已經(jīng)經(jīng)過(guò)測(cè)試的單元組合成一個(gè)組件,并且測(cè)試它們之間的接口。從這一層上講,組件是指多個(gè)單元的集成聚合。在現(xiàn)實(shí)方案中,許多單元組合成組件,而這些組件又聚合成程序的更大部分。方法是測(cè)試片段的組合,并最終擴(kuò)展進(jìn)程,將您的模塊與其他組的模塊一起測(cè)試。最后,將構(gòu)成進(jìn)程的所有模塊一起測(cè)試。
3-系統(tǒng)測(cè)試是將經(jīng)過(guò)測(cè)試的子系統(tǒng)裝配成一個(gè)完整系統(tǒng)來(lái)測(cè)試。它是檢驗(yàn)系統(tǒng)是否確實(shí)能提供系統(tǒng)方案說(shuō)明書中制定功能的有效方法。(常見(jiàn)的聯(lián)調(diào)測(cè)試)。系統(tǒng)測(cè)試的目的是對(duì)最終軟件系統(tǒng)進(jìn)行全面的測(cè)試,確保最終軟件系統(tǒng)滿足產(chǎn)品需求而遵循系統(tǒng)設(shè)計(jì)。
4-驗(yàn)收測(cè)試是部署軟件之前的最后一個(gè)測(cè)試操作。驗(yàn)收測(cè)試的目的是確保軟件準(zhǔn)備就緒,并且可以讓用戶將其執(zhí)行軟件的既定功能和任務(wù)。驗(yàn)收測(cè)試是向未來(lái)的用戶表明系統(tǒng)能夠像預(yù)訂要求那樣工作。經(jīng)集成測(cè)試后,已經(jīng)按照設(shè)計(jì)把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接口錯(cuò)誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步驗(yàn)證軟件的有效性,這就是驗(yàn)收測(cè)試的任務(wù),即軟件的功能和性能如同用戶所合理期待的那樣。
26、測(cè)試計(jì)劃工作的目的是什么?測(cè)試計(jì)劃工作的內(nèi)容都包括什么?其中哪些是最重要的?
軟件測(cè)試計(jì)劃是知道測(cè)試過(guò)程的綱領(lǐng)性文件,包含了產(chǎn)品概述、測(cè)試策略、測(cè)試方法、測(cè)試區(qū)域、測(cè)試配置、測(cè)試周期、測(cè)試資源、測(cè)試交流、風(fēng)險(xiǎn)分析等內(nèi)容。借助軟件測(cè)試計(jì)劃,參與測(cè)試的項(xiàng)目成員,尤其是測(cè)試管理人員,可以明確測(cè)試任務(wù)和測(cè)試方法,保持測(cè)試實(shí)施過(guò)程的順暢溝通,跟蹤和控制測(cè)試進(jìn)度,應(yīng)對(duì)測(cè)試過(guò)程中的各種變更。
測(cè)試計(jì)劃和測(cè)試詳細(xì)規(guī)格、測(cè)試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系,測(cè)試計(jì)劃主要從宏觀上規(guī)劃測(cè)試活動(dòng)的范圍、方法和資源配置,而測(cè)試詳細(xì)規(guī)格、測(cè)試用例是完成測(cè)試任務(wù)的具體戰(zhàn)術(shù)。所以其中最重要的是測(cè)試策略和測(cè)試方法(最好能先評(píng)審)。
27、您認(rèn)為做好測(cè)試計(jì)劃工作的關(guān)鍵是什么?
1-明確測(cè)試的目標(biāo),增強(qiáng)測(cè)試計(jì)劃的實(shí)用性
編寫軟件測(cè)試計(jì)劃的重要目的就是使測(cè)試過(guò)程能夠發(fā)現(xiàn)更多的軟件缺陷,因此軟件測(cè)試計(jì)劃的價(jià)值取決于它對(duì)幫助管理測(cè)試項(xiàng)目,并且找出軟件潛在的缺陷。因此,軟件測(cè)試計(jì)劃中的測(cè)試范圍必須高度覆蓋功能需求,測(cè)試方法必須切實(shí)可行,測(cè)試工具并且具有較高的實(shí)用性,便于使用,生成的測(cè)試結(jié)果準(zhǔn)確
2-堅(jiān)持“5W”規(guī)則,明確內(nèi)容與過(guò)程
“5W”規(guī)則指的是“WHAT(做什么)”、“WHY(為什么做)”、"WHEN(何時(shí)做)"、"WHERE(在哪里)"、"HOW(如何做)"。利用“5W"規(guī)則創(chuàng)建軟件測(cè)試計(jì)劃,可以幫助測(cè)試團(tuán)隊(duì)理解測(cè)試的目的(WHY),明確測(cè)試的范圍和內(nèi)容(WHAT),確定測(cè)試的開(kāi)始和結(jié)束日期(WHEN),指出測(cè)試的方法和工具(HOW),給出測(cè)試文檔和軟件存放的位置(WHERE)。
3-采用評(píng)審和更新機(jī)制,保證測(cè)試計(jì)劃滿足實(shí)際需求
測(cè)試計(jì)劃完成后,如果沒(méi)有經(jīng)過(guò)評(píng)審,直接發(fā)送給測(cè)試團(tuán)隊(duì),測(cè)試計(jì)劃內(nèi)容的可能不準(zhǔn)確或遺漏測(cè)試內(nèi)容,或者軟件需求變更引起測(cè)試范圍的增減,而測(cè)試計(jì)劃的內(nèi)容沒(méi)有及時(shí)更新,誤導(dǎo)測(cè)試執(zhí)行人員。
4-分別創(chuàng)建測(cè)試計(jì)劃與測(cè)試詳細(xì)規(guī)格、測(cè)試用例
應(yīng)把詳細(xì)的測(cè)試技術(shù)指標(biāo)包含到獨(dú)立創(chuàng)建的測(cè)試詳細(xì)規(guī)格文檔,把用于指導(dǎo)測(cè)試小組執(zhí)行過(guò)程的測(cè)試用例放到獨(dú)立創(chuàng)建的測(cè)試用例文檔或測(cè)試用例管理數(shù)據(jù)庫(kù)中。測(cè)試計(jì)劃和測(cè)試詳細(xì)規(guī)格、測(cè)試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系,測(cè)試計(jì)劃主要從宏觀上規(guī)劃測(cè)試活動(dòng)的范圍、方法和資源配置,而測(cè)試詳細(xì)規(guī)格、測(cè)試用例是完成測(cè)試任務(wù)的具體戰(zhàn)術(shù)。
28、當(dāng)開(kāi)發(fā)人員說(shuō)不是BUG時(shí),你如何應(yīng)付?
開(kāi)發(fā)人員說(shuō)不是BUG,有2種情況,一是需求沒(méi)有確定,所以我可以這么做,這個(gè)時(shí)候可以找來(lái)產(chǎn)品經(jīng)理進(jìn)行確認(rèn),需不需要改動(dòng)。3方商量確定好后再看要不要改。二是這種情況不可能發(fā)生,所以不需要修改,這個(gè)時(shí)候,我可以先盡可能的說(shuō)出是BUG的一句是什么?如果被用戶發(fā)現(xiàn)或出了問(wèn)題,會(huì)有什么不良結(jié)果?程序員可能會(huì)給你很多理由,你可以對(duì)他的解釋進(jìn)行反駁。如果還是不行,那我可以給這個(gè)問(wèn)題提出來(lái),跟開(kāi)發(fā)經(jīng)理和測(cè)試經(jīng)理進(jìn)行確認(rèn),如果要修改就改,如果不要修改就不改。其實(shí)有些真的不是BUG,我也只是建議的方式寫進(jìn)測(cè)試文檔中,如果開(kāi)發(fā)人員不修改也沒(méi)有大問(wèn)題。如果不是BUG的話,一定要堅(jiān)持自己的立場(chǎng),讓問(wèn)題得到最后的確認(rèn)。
29、你自認(rèn)為測(cè)試的優(yōu)勢(shì)在哪里?
優(yōu)勢(shì)在于我對(duì)測(cè)試堅(jiān)定不移的信心和熱情,雖然經(jīng)驗(yàn)還不足,但測(cè)試需要的基本技能我有信心在工作中得以發(fā)揮。
30、什么是系統(tǒng)瓶頸?
瓶頸主要是指整個(gè)軟硬件構(gòu)成的軟件系統(tǒng)某一方面或者幾個(gè)方面能力不能滿足用戶的特定業(yè)務(wù)要求,“特定”是指瓶頸會(huì)在某些條件下會(huì)出現(xiàn),因?yàn)楫吘勾蠖鄶?shù)系統(tǒng)在投入前。
嚴(yán)格的從技術(shù)角度講,所有的系統(tǒng)都會(huì)有瓶頸,因?yàn)榇蠖鄶?shù)系統(tǒng)的資源配置不是協(xié)調(diào)的,例如CPU使用率剛好達(dá)到100%時(shí),內(nèi)存也正好耗盡的系統(tǒng)不是很多見(jiàn)。因此我們討論系統(tǒng)瓶頸要從應(yīng)用的角度討論:關(guān)鍵是看系統(tǒng)能否滿足用戶需求。在用戶極限使用系統(tǒng)的情況下,系統(tǒng)的響應(yīng)仍然正常,我們可以認(rèn)為改系統(tǒng)沒(méi)有瓶頸或者瓶頸不會(huì)影響用戶工作。
因此我們測(cè)試系統(tǒng)瓶頸主要是實(shí)現(xiàn)下面兩個(gè)目的:
-發(fā)現(xiàn)“表面”的瓶頸。主要是模擬用戶的操作,找出用戶極限使用系統(tǒng)時(shí)的瓶頸,然后解決瓶頸,這是性能測(cè)試的基本目標(biāo)。
-發(fā)現(xiàn)潛在的瓶頸并解決,保證系統(tǒng)的長(zhǎng)期穩(wěn)定性。主要是考慮用戶在將來(lái)擴(kuò)展系統(tǒng)或者業(yè)務(wù)發(fā)生變化時(shí),系統(tǒng)能夠適應(yīng)變化。滿足用戶目前需求的系統(tǒng)不是最好的,我們?cè)O(shè)計(jì)系統(tǒng)的目標(biāo)是在保證系統(tǒng)整個(gè)軟件生命周期能夠不斷適應(yīng)用戶的變化,或者通過(guò)簡(jiǎn)單擴(kuò)展系統(tǒng)就可以適應(yīng)新的變化。
31、文檔測(cè)試主要包含什么內(nèi)容?
在國(guó)內(nèi)軟件開(kāi)發(fā)管理中,文檔管理幾乎是最弱的一項(xiàng),因而在測(cè)試工作中特別容易忽略文檔測(cè)試也就不足為奇了。要想給用戶提供完整的產(chǎn)品,文檔測(cè)試是必不可少的。文檔測(cè)試一般注重下面幾個(gè)方面:
文檔的完整性:主要是測(cè)試文檔內(nèi)容的全面性與完整性,從總體上把握文檔的質(zhì)量。例如用戶手冊(cè)應(yīng)該包括軟件的所有功能模塊。
描述與軟件實(shí)際情況的一致性:主要測(cè)試軟件文檔與軟件實(shí)際的一致程度。例如用戶手冊(cè)基本完整后,我們還要注意用戶手冊(cè)與實(shí)際功能描述是否一致。因?yàn)槲臋n往往跟不上軟件版本的更新速度。
易理解性:主要是檢查文檔對(duì)關(guān)鍵、重要的操作有無(wú)圖文說(shuō)明,文字、圖表是否易于理解。對(duì)于關(guān)鍵、重要的操作僅僅只有文字說(shuō)明肯定是不夠的,應(yīng)該附有圖表使說(shuō)明更為直觀和明了。
文檔中提供操作的實(shí)例:這項(xiàng)檢查內(nèi)容主要針對(duì)用戶手冊(cè)。對(duì)主要功能和關(guān)鍵操作提供的應(yīng)用實(shí)例是否豐富,提供的實(shí)例描述是否詳細(xì)。只有簡(jiǎn)單的圖文說(shuō)明,而無(wú)實(shí)例的用戶手冊(cè)看起來(lái)就像是軟件界面的簡(jiǎn)單拷貝,對(duì)于用戶來(lái)說(shuō),實(shí)際上沒(méi)有什么幫助。
印刷與包裝質(zhì)量:主要是檢查軟件文檔的商品化程度。有些用戶手冊(cè)是簡(jiǎn)單打印、裝訂而成,過(guò)于粗糙,不易于用戶保存。優(yōu)秀的文檔例如用戶手冊(cè)和技術(shù)白皮書,應(yīng)提供商品化包裝,并且印刷精美。
32、功能測(cè)試用例需要詳細(xì)到什么程度才是合格的?
這個(gè)問(wèn)題也是測(cè)試工程師經(jīng)常問(wèn)的問(wèn)題。有人主張測(cè)試用例詳細(xì)到每個(gè)步驟執(zhí)行什么都要寫出來(lái),目的是即使一個(gè)不了解系統(tǒng)的新手都可以按照測(cè)試用例來(lái)執(zhí)行工作。主張這類寫法的人還可以舉出例子:歐美、日本等軟件外包文檔都是這樣做的。
另外一種觀點(diǎn)就是主張寫的粗些,類似于編寫測(cè)試大綱。主張這種觀點(diǎn)的人是因?yàn)檐浖_(kāi)發(fā)需求管理不規(guī)范,變動(dòng)十分頻繁,因而不能按照歐美的高標(biāo)準(zhǔn)來(lái)編寫測(cè)試用例。這樣的測(cè)試用例容易維護(hù),可以讓測(cè)試執(zhí)行人員有更大的發(fā)揮空間。
實(shí)際上,軟件測(cè)試用例的詳細(xì)程度首先要以覆蓋到測(cè)試點(diǎn)為基本要求。舉個(gè)例子:“用戶登陸系統(tǒng)”的測(cè)試用例可以不寫出具體的執(zhí)行數(shù)據(jù),但是至少要寫出五種以上情況(),如果只用一句話覆蓋了這個(gè)功能是不合格的測(cè)試用例。覆蓋功能點(diǎn)不是指列出功能點(diǎn),而是要寫出功能點(diǎn)的各個(gè)方面(如果組合情況較多時(shí)可以采用等價(jià)劃分)。
另一個(gè)影響測(cè)試用例的就是組織的開(kāi)發(fā)能力和測(cè)試對(duì)象特點(diǎn)。如果開(kāi)發(fā)力量比較落后,編寫較詳細(xì)的測(cè)試用例是不現(xiàn)實(shí)的,因?yàn)楦緵](méi)有那么大的資源投入,當(dāng)然這種情況很隨著團(tuán)隊(duì)的發(fā)展而逐漸有所改善。測(cè)試對(duì)象特點(diǎn)重點(diǎn)是指測(cè)試對(duì)象在進(jìn)度、成本等方面的要求,如果進(jìn)度較緊張的情況下,是根本沒(méi)有時(shí)間寫出高質(zhì)量的測(cè)試用例的,甚至有些時(shí)候測(cè)試工作只是一種輔助工作,因而不編寫測(cè)試用例。
因此,測(cè)試用例的編寫要根據(jù)測(cè)試對(duì)象特點(diǎn)、團(tuán)隊(duì)的執(zhí)行能力等各個(gè)方面綜合起來(lái)決定編寫策略。最后要注意的是測(cè)試人員一定不能抱怨,力爭(zhēng)在不斷提高測(cè)試用例編寫水平的同時(shí),不斷地提高自身能力。
33、配置和兼容性測(cè)試的區(qū)別是什么?
配置測(cè)試的目的是保證軟件在其相關(guān)的硬件上能夠正常運(yùn)行,而兼容性測(cè)試主要是測(cè)試軟件能否與不同的軟件正確協(xié)作。
配置測(cè)試的核心內(nèi)容就是使用各種硬件來(lái)測(cè)試軟件的運(yùn)行情況,一般包括:
(1)軟件在不同的主機(jī)上的運(yùn)行情況,例如Dell和Apple;
(2)軟件在不同的組件上的運(yùn)行情況,例如開(kāi)發(fā)的撥號(hào)程序要測(cè)試在不同廠商生產(chǎn)的Modem上的運(yùn)行情況;
(3)不同的外設(shè);
(4)不同的接口;
(5)不同的可選項(xiàng),例如不同的內(nèi)存大小;
兼容性測(cè)試的核心內(nèi)容:
(1)測(cè)試軟件是否能在不同的操作系統(tǒng)平臺(tái)上兼容;
(2)測(cè)試軟件是否能在同一操作系統(tǒng)平臺(tái)的不同版本上兼容;
(3)軟件本身能否向前或者向后兼容;
(4)測(cè)試軟件能否與其它相關(guān)的軟件兼容;
(5)數(shù)據(jù)兼容性測(cè)試,主要是指數(shù)據(jù)能否共享;
配置和兼容性測(cè)試通稱對(duì)開(kāi)發(fā)系統(tǒng)類軟件比較重要,例如驅(qū)動(dòng)程序、操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)等。具體進(jìn)行時(shí)仍然按照測(cè)試用例來(lái)執(zhí)行。
34、軟件文檔測(cè)試主要包含什么?
隨著軟件文檔系統(tǒng)日益龐大,文檔測(cè)試已經(jīng)成為軟件測(cè)試的重要內(nèi)容。文檔測(cè)試對(duì)象主要如下:
-包裝文字和圖形;
-市場(chǎng)宣傳材料、廣告以及其它插頁(yè);
-授權(quán)、注冊(cè)登記表;
-最終用戶許可協(xié)議;
-安裝和設(shè)置向?qū)?
-用戶手冊(cè);
-聯(lián)機(jī)幫助;
-樣例、示范例子和模板;
-……
文檔測(cè)試的目的是提高易用性和可靠性,降低支持費(fèi)用,因?yàn)橛脩敉ㄟ^(guò)文檔就可以自己解決問(wèn)題。因文檔測(cè)試的檢查內(nèi)容主要如下:
-讀者對(duì)象――主要是文檔的內(nèi)容是否能讓該級(jí)別的讀者理解;
-術(shù)語(yǔ)――主要是檢查術(shù)語(yǔ)是否適合讀者;
-內(nèi)容和主題――檢查主題是否合適、是否丟失、格式是否規(guī)范等;
-圖標(biāo)和屏幕抓圖――檢查圖表的準(zhǔn)確度和精確度;
-樣例和示例――是否與軟件功能一致;
-拼寫和語(yǔ)法;
-文檔的關(guān)聯(lián)性――是否與其它相關(guān)文檔的內(nèi)容一致,例如與廣告信息是否一致;
文檔測(cè)試是相當(dāng)重要的一項(xiàng)測(cè)試工作,不但要給予充分的重視,更要要認(rèn)真的完成,象做功能測(cè)試一樣來(lái)對(duì)待文檔測(cè)試。
35、沒(méi)有產(chǎn)品說(shuō)明書和需求文檔地情況下能夠進(jìn)行黑盒測(cè)試嗎?
這個(gè)問(wèn)題是國(guó)內(nèi)測(cè)試工程師經(jīng)常遇到的問(wèn)題,根源就是國(guó)內(nèi)軟件開(kāi)發(fā)文檔管理不規(guī)范,對(duì)變更的管理方法就更不合理了。實(shí)際上沒(méi)有任何文檔的時(shí)候,測(cè)試人員是能夠進(jìn)行黑盒測(cè)試的,這種測(cè)試方式我們可以稱之為探索測(cè)試,具體做法就是測(cè)試工程師根據(jù)自己的專業(yè)技能、領(lǐng)域知識(shí)等不斷的深入了解測(cè)試對(duì)象、理解軟件功能,進(jìn)而發(fā)現(xiàn)缺陷。
在這種做法基本上把軟件當(dāng)成了產(chǎn)品說(shuō)明書,測(cè)試過(guò)程中要和開(kāi)發(fā)人員不斷的進(jìn)行交流。尤其在作項(xiàng)目的時(shí)候,進(jìn)度壓力比較大,可以作為加急測(cè)試方案。最大的風(fēng)險(xiǎn)是不知道有些特性是否被遺漏。
36、測(cè)試中的“殺蟲(chóng)劑怪事”是指什么?
“殺蟲(chóng)劑怪事”一詞由BorisBeizer在其編著的《軟件測(cè)試技術(shù)》第二版中提出。用于描述測(cè)試人員對(duì)同一測(cè)試對(duì)象進(jìn)行的測(cè)試次數(shù)越多,發(fā)現(xiàn)的缺陷就會(huì)越來(lái)越少的現(xiàn)象。就像老用一種農(nóng)藥,害蟲(chóng)就會(huì)有免疫力,農(nóng)藥發(fā)揮不了效力。這種現(xiàn)象的根本原因就是測(cè)試人員對(duì)測(cè)試軟件過(guò)于熟悉,形成思維定勢(shì)。
為了克服這種現(xiàn)象,測(cè)試人員需要不斷編寫新的測(cè)試程序或者測(cè)試用例,對(duì)程序的不同部分進(jìn)行測(cè)試,以發(fā)現(xiàn)更多的缺陷。也可以引用新人來(lái)測(cè)試軟件,剛剛進(jìn)來(lái)的新手往往能發(fā)現(xiàn)一些意想不到的問(wèn)題。
37、在配置測(cè)試中,如何判斷發(fā)現(xiàn)的缺陷是普通問(wèn)題還是特定的配置問(wèn)題?
在進(jìn)行配置測(cè)試時(shí),測(cè)試工程師仍然會(huì)發(fā)現(xiàn)一些普通的缺陷,也就是與配置環(huán)境無(wú)關(guān)的缺陷。因此判斷新發(fā)現(xiàn)的問(wèn)題,需要在不同的配置中重新執(zhí)行發(fā)現(xiàn)軟件缺陷的步驟,如果軟件缺陷不出現(xiàn)了,就可能是配置缺陷;如果在所有的配置中都出現(xiàn),就可能是普通缺陷。
需要注意的是,配置問(wèn)題可以在一大類配置中出現(xiàn)。例如,撥號(hào)程序可能在所有的外置Modem中都存在問(wèn)題,而內(nèi)置的Modem不會(huì)有任何問(wèn)題。
38、為什么盡量不要讓時(shí)間有富裕的員工去做一些測(cè)試?
表面上看這體現(xiàn)了管理的效率和靈活性,但實(shí)際上也體現(xiàn)了管理者對(duì)測(cè)試的輕視。測(cè)試和測(cè)試的人有很大關(guān)系。測(cè)試工作人員應(yīng)該是勤奮并富有耐心,善于學(xué)習(xí)、思考和發(fā)現(xiàn)問(wèn)題,細(xì)心有條理,總結(jié)問(wèn)題,如果具備這樣的優(yōu)點(diǎn),做其它工作同樣也會(huì)很出色,因此這里還有一個(gè)要求,就是要喜歡測(cè)試這項(xiàng)工作。如果他是專職的,那么肯定更有經(jīng)驗(yàn)和信心。國(guó)內(nèi)的小伙子好象都喜歡做程序員,兩者工作性質(zhì)不同,待遇不同,地位不同,對(duì)自我實(shí)現(xiàn)的價(jià)值的認(rèn)識(shí)也不同,這是行業(yè)的一個(gè)需要改善的問(wèn)題。如果只是為了完成任務(wù)而完成任務(wù),或者發(fā)現(xiàn)了幾個(gè)問(wèn)題就覺(jué)得滿意了,這在任何其它工作中都是不行的。
39、完全測(cè)試程序是可能的嗎?
軟件測(cè)試初學(xué)者可能認(rèn)為拿到軟件后需要進(jìn)行完全測(cè)試,找到全部的軟件缺陷,使軟件“零缺陷”發(fā)布。實(shí)際上完全測(cè)試是不可能的。主要有以下一個(gè)原因:
-完全測(cè)試比較耗時(shí),時(shí)間上不允許;
-完全測(cè)試通常意味著較多資源投入,這在現(xiàn)實(shí)中往往是行不通的;
-輸入量太大,不能一一進(jìn)行測(cè)試;
-輸出結(jié)果太多,只能分類進(jìn)行驗(yàn)證;
-軟件實(shí)現(xiàn)途徑太多;
-軟件產(chǎn)品說(shuō)明書沒(méi)有客觀標(biāo)準(zhǔn),從不同的角度看,軟件缺陷的標(biāo)準(zhǔn)不同;
因此測(cè)試的程度要根據(jù)實(shí)際情況確定。
40、軟件測(cè)試的風(fēng)險(xiǎn)主要體現(xiàn)在哪里?
我們沒(méi)有對(duì)軟件進(jìn)行完全測(cè)試,實(shí)際就是選擇了風(fēng)險(xiǎn),因?yàn)槿毕輼O有可能存在沒(méi)有進(jìn)行測(cè)試的部分。舉個(gè)例子,程序員為了方便,在調(diào)試程序時(shí)會(huì)彈出一些提示信息框,而這些提示只在某種條件下會(huì)彈出,碰巧程序發(fā)布前這些代碼中的一些沒(méi)有被注釋掉。在測(cè)試時(shí)測(cè)試工程師又沒(méi)有對(duì)其進(jìn)行測(cè)試。如果客戶碰到它,這將是代價(jià)昂貴的缺陷,因?yàn)榻桓逗蟛疟豢蛻舭l(fā)現(xiàn)。
因此,我們要盡可能的選擇最合適的測(cè)試量,把風(fēng)險(xiǎn)降低到最小。
41、發(fā)現(xiàn)的缺陷越多,說(shuō)明軟件缺陷越多嗎?
這是一個(gè)比較常見(jiàn)的現(xiàn)象。測(cè)試工程師在沒(méi)有找到缺陷前會(huì)絞盡腦汁的思考,但是找到一個(gè)后,會(huì)接二連三的發(fā)現(xiàn)很多缺陷,頗有個(gè)人成就感。其中的原因主要如下:
-代碼復(fù)用、拷貝代碼導(dǎo)致程序員容易犯相同的錯(cuò)誤。類的繼承導(dǎo)致所有的子類會(huì)包含基類的錯(cuò)誤,反復(fù)拷貝同一代碼意味可能也復(fù)制了缺陷。
-程序員比較勞累是可以導(dǎo)致某些連續(xù)編寫的功能缺陷較多。程序員加班是一種司空見(jiàn)慣的現(xiàn)象,因此體力不只時(shí)容易編寫一些缺陷較多的程序。而這些連續(xù)潛伏缺陷恰恰時(shí)測(cè)試工程師大顯身手的地方。
“缺陷一個(gè)連著一個(gè)”不是一個(gè)客觀規(guī)律,只是一個(gè)常見(jiàn)的現(xiàn)象。如果軟件編寫的比較好,這種現(xiàn)象就不常見(jiàn)了。測(cè)試人員只要嚴(yán)肅認(rèn)真的測(cè)試程序就可以了。
42、所有的軟件缺陷都能修復(fù)嗎?所有的軟件缺陷都要修復(fù)嗎?
從技術(shù)上講,所有的軟件缺陷都是能夠修復(fù)的,但是沒(méi)有必要修復(fù)所有的軟件缺陷。測(cè)試人員要做的是能夠正確判斷什么時(shí)候不能追求軟件的完美。對(duì)于整個(gè)項(xiàng)目團(tuán)隊(duì),要做的是對(duì)每一個(gè)軟件缺陷進(jìn)行取舍,根據(jù)風(fēng)險(xiǎn)決定那些缺陷要修復(fù)。發(fā)生這種現(xiàn)象的主要原因如下:
-沒(méi)有足夠的時(shí)間資源。在任何一個(gè)項(xiàng)目中,通常情況下開(kāi)發(fā)人員和測(cè)試人員都是不夠用的,而且在項(xiàng)目中沒(méi)有預(yù)算足夠的回歸測(cè)試時(shí)間,再加上修改缺陷可能引入新的缺陷,因此在交付期限的強(qiáng)大壓力下,必須放棄某些缺陷的修改。
-有些缺陷只是特殊情況下出現(xiàn),這種缺陷處于商業(yè)利益考慮,可以在以后升級(jí)中進(jìn)行修復(fù)。
-不是缺陷的缺陷。我們經(jīng)常會(huì)碰到某些功能方面的問(wèn)題被當(dāng)成缺陷來(lái)處理,這類問(wèn)題可以以后有時(shí)間時(shí)考慮再處理。
最后要說(shuō)的是,缺陷是否修改要由軟件測(cè)試人員、項(xiàng)目經(jīng)理、程序員共同討論來(lái)決定是否修復(fù),不同角色的人員從不同的角度來(lái)思考,以做出正確的決定。
43、軟件測(cè)試人員就是QA嗎?
軟件測(cè)試人員的職責(zé)是盡可能早的找出軟件缺陷,確保得以修復(fù)。而質(zhì)量保證人員(QA)主要職責(zé)是創(chuàng)建或者制定標(biāo)準(zhǔn)和方法,提高促進(jìn)軟件開(kāi)發(fā)能力和減少軟件缺陷。測(cè)試人員的主要工作是測(cè)試,質(zhì)量保證人員日常工作重要內(nèi)容是檢查與評(píng)審,測(cè)試工作也是測(cè)試保證人員的工作對(duì)象。
軟件測(cè)試和質(zhì)量是相輔相成的關(guān)系,都是為了提高軟件質(zhì)量而工作。
44、如何減少測(cè)試人員跳槽帶來(lái)的損失?
在IT行業(yè)里跳槽已經(jīng)是一種司空見(jiàn)慣的現(xiàn)象,而且跳槽無(wú)論給公司還是給個(gè)人都會(huì)帶來(lái)一定的損失。測(cè)試隊(duì)伍也無(wú)疑會(huì)面臨跳槽的威脅,作為測(cè)試經(jīng)理管理者,只有從日常工作中開(kāi)始做起,最能最大限度的減少損失。建議我們從以下兩個(gè)方面做起:
-加強(qiáng)部門內(nèi)員工之間的互相學(xué)習(xí),互相學(xué)習(xí)是建立學(xué)習(xí)型組織的基本要求,是知識(shí)互相轉(zhuǎn)移的過(guò)程。在此基礎(chǔ)上,可以把個(gè)人擁有的技術(shù)以知識(shí)的形式沉積下來(lái),也就完成了隱性知識(shí)到顯性知識(shí)的轉(zhuǎn)化。
-通常情況下,企業(yè)能為員工提供足夠大的發(fā)展空間時(shí),如果不是待遇特別低,員工都不會(huì)主動(dòng)離開(kāi)企業(yè)。因此我們要想留住員工,管理者就應(yīng)該把員工的個(gè)人成長(zhǎng)和企業(yè)的發(fā)展聯(lián)系起來(lái),為員工設(shè)定合理發(fā)展規(guī)劃并付諸實(shí)現(xiàn)。不過(guò)這項(xiàng)要求做起來(lái)比較,要有比較好的企業(yè)文化為依托。
45、測(cè)試產(chǎn)品與測(cè)試項(xiàng)目的區(qū)別是什么?
習(xí)慣上把開(kāi)發(fā)完成后進(jìn)行商業(yè)化、幾乎不進(jìn)行代碼修改就可以售給用戶使用的軟件成為軟件產(chǎn)品,也就是可以買“賣拷貝”的軟件,例如Windows2000。而通常把針對(duì)一個(gè)或者幾個(gè)特定的用戶而開(kāi)發(fā)的軟件成為軟件項(xiàng)目,軟件項(xiàng)目是一種個(gè)性化的產(chǎn)品,可以是按照用戶要求全部重新開(kāi)發(fā),也可以修改已有的軟件產(chǎn)品來(lái)滿足特定的用戶需求。項(xiàng)目和產(chǎn)品的不同特點(diǎn),決定我們測(cè)試產(chǎn)品和測(cè)試項(xiàng)目仍然會(huì)有很多不同的地方:
-質(zhì)量要求不同。通常產(chǎn)品的質(zhì)量要高一些,修復(fù)發(fā)布后產(chǎn)品的缺陷成本較高,甚至?xí)䦷?lái)很多負(fù)面的影響。而做項(xiàng)目通常面向某一用戶,雖然質(zhì)量越高越好,但是一般只要滿足用戶要求就可以了。
-測(cè)試資源投入多少不同。做軟件產(chǎn)品通常是研發(fā)中心來(lái)開(kāi)發(fā),進(jìn)度壓力要小些。同時(shí)由于質(zhì)量要求高,因此會(huì)投入較多的人力、物力資源。
-項(xiàng)目最后要和用戶共同驗(yàn)收測(cè)試,這是產(chǎn)品測(cè)試不具有的特點(diǎn)。
此外,測(cè)試產(chǎn)品與測(cè)試項(xiàng)目在缺陷管理方面、測(cè)試策略制定都會(huì)有很大不同,測(cè)試管理者應(yīng)該結(jié)合具體的環(huán)境,恰如其分的完成工作。
46、和用戶共同測(cè)試(UAT測(cè)試)的注意點(diǎn)有哪些?
軟件產(chǎn)品在投產(chǎn)前,通常都會(huì)進(jìn)行用戶驗(yàn)收測(cè)試。如果用戶驗(yàn)收測(cè)試沒(méi)有通過(guò),直接結(jié)果就是那不到“Money”,間接影響是損害了公司的形象,而后者的影響往往更嚴(yán)重。根據(jù)作者的經(jīng)驗(yàn),用戶驗(yàn)收測(cè)試一定要讓用戶滿意。
實(shí)際上用戶現(xiàn)場(chǎng)測(cè)試更趨于是一種演示。在不欺騙用戶的前提下,我們向用戶展示我們軟件的優(yōu)點(diǎn),最后讓“上帝”滿意并欣然掏出“銀子”才是我們的目標(biāo)。因此用戶測(cè)試要注意下面的事項(xiàng):
(1)用戶現(xiàn)場(chǎng)測(cè)試不可能測(cè)試全部功能,因此要測(cè)試核心功能。這需要提前做好準(zhǔn)備,這些核心功能一定要預(yù)先經(jīng)過(guò)測(cè)試,證明沒(méi)有問(wèn)題才可以和用戶共同進(jìn)行測(cè)試。測(cè)試核心模塊的目的是建立用戶對(duì)軟件的信心。當(dāng)然如果這些模塊如果問(wèn)題較多,不應(yīng)該進(jìn)行演示。
(2)如果某些模塊確實(shí)有問(wèn)題,我們可以演示其它重要的業(yè)務(wù)功能模塊,必要時(shí)要向用戶做成合理的解釋。爭(zhēng)得時(shí)間后,及時(shí)修改缺陷來(lái)彌補(bǔ)。
(3)永遠(yuǎn)不能欺騙用戶,蒙混過(guò)關(guān)。道理很簡(jiǎn)單,因?yàn)檐浖且o用戶用的,問(wèn)題早晚會(huì)暴露出來(lái),除非你可以馬上修改。
和用戶進(jìn)行測(cè)試還要注意各種交流技巧,爭(zhēng)取不但短期利益得到了滿足,還要為后面得合作打好基礎(chǔ)。
47、如何編寫提交給用戶的測(cè)試報(bào)告?
隨著測(cè)試工作越來(lái)越受重視,開(kāi)發(fā)團(tuán)隊(duì)向客戶提供測(cè)試文檔是不可避免的事情。很多人會(huì)問(wèn):“我們可以把工作中的測(cè)試報(bào)告提供給客戶嗎?”答案是否定的。因?yàn)樘峁﹥?nèi)部測(cè)試報(bào)告,可能會(huì)讓客戶失去信心,甚至否定項(xiàng)目。
測(cè)試報(bào)告一般分為內(nèi)部測(cè)試報(bào)告和外部測(cè)試報(bào)告。內(nèi)部報(bào)告是我們?cè)跍y(cè)試工作中的項(xiàng)目文檔,反映了測(cè)試工作的實(shí)施情況,這里不過(guò)多討論,讀者可以參考相關(guān)教材。這里主要討論一下外部測(cè)試報(bào)告的寫法,一般外部測(cè)試報(bào)告要滿足下面幾個(gè)要求:
-根據(jù)內(nèi)部測(cè)試報(bào)告進(jìn)行編寫,一般可以摘錄;
-不可以向客戶報(bào)告嚴(yán)重缺陷,即使是已經(jīng)修改的缺陷,開(kāi)發(fā)中的缺陷也沒(méi)有必要讓客戶知道;
-報(bào)告上可以列出一些缺陷,但必須是中級(jí)的缺陷,而且這些缺陷必須是修復(fù)的;
-報(bào)告上面的內(nèi)容盡量要真實(shí)可靠;
-整個(gè)測(cè)試報(bào)告要仔細(xì)審閱,力爭(zhēng)不給項(xiàng)目帶來(lái)負(fù)面作用,尤其是性能測(cè)試報(bào)告。
總之,外部測(cè)試報(bào)告要小心謹(jǐn)慎的編寫。
48、測(cè)試工具在測(cè)試工作中是什么地位?
國(guó)內(nèi)的很多測(cè)試工程師對(duì)測(cè)試工具相當(dāng)迷戀,尤其是一些新手,甚至期望測(cè)試工具可以取代手工測(cè)試。測(cè)試工具在測(cè)試工作中起的是輔助作用,一般用來(lái)提高測(cè)試效率。自動(dòng)化測(cè)試彌補(bǔ)了手工測(cè)試的不足,減輕一定的工作量。實(shí)際上測(cè)試工具是無(wú)法替代大多數(shù)手工測(cè)試的,而一些諸如性能測(cè)試等自動(dòng)化測(cè)試也是手工所不能完成的。
對(duì)于自動(dòng)測(cè)試技術(shù),應(yīng)當(dāng)依據(jù)軟件的不同情況來(lái)分別對(duì)待,一般自動(dòng)技術(shù)會(huì)應(yīng)用在引起大量重復(fù)性工作的地方、系統(tǒng)的壓力點(diǎn)、以及任何適合使用程序解決大批量輸入數(shù)據(jù)的地方。然后再尋找合適的自動(dòng)測(cè)試工具,或者自己開(kāi)發(fā)測(cè)試程序。一定不要為了使用測(cè)試工具而使用。
49、常見(jiàn)的測(cè)試用例設(shè)計(jì)方法都有哪些?請(qǐng)分別以具體的例子來(lái)說(shuō)明這些方法在測(cè)試用例設(shè)計(jì)工作中的應(yīng)用。
1-等價(jià)類劃分
常見(jiàn)的軟件測(cè)試面試題劃分等價(jià)類: 等價(jià)類是指某個(gè)輸入域的子集合.在該子集合中,各個(gè)輸入數(shù)據(jù)對(duì)于揭露程序中的錯(cuò)誤都是等效的.并合理地假定:測(cè)試某等價(jià)類的代表值就等于對(duì)這一類其它值的測(cè)試.因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價(jià)類,在每一個(gè)等價(jià)類中取一個(gè)數(shù)據(jù)作為測(cè)試的輸入條件,就可以用少量代表性的測(cè)試數(shù)據(jù).取得較好的測(cè)試結(jié)果.等價(jià)類劃分可有兩種不同的情況:有效等價(jià)類和無(wú)效等價(jià)類.
2-邊界值分析法
邊界值分析方法是對(duì)等價(jià)類劃分方法的補(bǔ)充。測(cè)試工作經(jīng)驗(yàn)告訴我,大量的錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部.因此針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例,可以查出更多的錯(cuò)誤.
使用邊界值分析方法設(shè)計(jì)測(cè)試用例,首先應(yīng)確定邊界情況.通常輸入和輸出等價(jià)類的邊界,就是應(yīng)著重測(cè)試的邊界情況.應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界的值作為測(cè)試數(shù)據(jù),而不是選取等價(jià)類中的典型值或任意值作為測(cè)試數(shù)據(jù).
3-錯(cuò)誤推測(cè)法
基于經(jīng)驗(yàn)和直覺(jué)推測(cè)程序中所有可能存在的各種錯(cuò)誤, 從而有針對(duì)性的設(shè)計(jì)測(cè)試用例的方法.
錯(cuò)誤推測(cè)方法的基本思想: 列舉出程序中所有可能有的錯(cuò)誤和容易發(fā)生錯(cuò)誤的特殊情況,根據(jù)他們選擇測(cè)試用例-例如, 在單元測(cè)試時(shí)曾列出的許多在模塊中常見(jiàn)的錯(cuò)誤-以前產(chǎn)品測(cè)試中曾經(jīng)發(fā)現(xiàn)的錯(cuò)誤等, 這些就是經(jīng)驗(yàn)的總結(jié)。還有, 輸入數(shù)據(jù)和輸出數(shù)據(jù)為0的情況。輸入表格為空格或輸入表格只有一行-這些都是容易發(fā)生錯(cuò)誤的情況。可選擇這些情況下的例子作為測(cè)試用例.
4-因果圖方法
前面介紹的等價(jià)類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸入條件之間的聯(lián)系, 相互組合等-考慮輸入條件之間的相互組合,可能會(huì)產(chǎn)生一些新的情況-但要檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價(jià)類,他們之間的組合情況也相當(dāng)多-因此必須考慮采用一種適合于描述對(duì)于多種條件的組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作的形式來(lái)考慮設(shè)計(jì)測(cè)試用例-這就需要利用因果圖(邏輯模型)-因果圖方法最終生成的就是判定表-它適合于檢查程序輸入條件的各種組合情況.
5-正交表分析法
有時(shí)候,可能因?yàn)榇罅康膮?shù)的組合而引起測(cè)試用例數(shù)量上的激增,同時(shí),這些測(cè)試用例并沒(méi)有明顯的優(yōu)先級(jí)上的差距,而測(cè)試人員又無(wú)法完成這么多數(shù)量的測(cè)試,就可以通過(guò)正交表來(lái)進(jìn)行縮減一些用例,從而達(dá)到盡量少的用例覆蓋盡量大的范圍的可能性。
6-場(chǎng)景分析方法
指根據(jù)用戶場(chǎng)景來(lái)模擬用戶的操作步驟,這個(gè)比較類似因果圖,但是可能執(zhí)行的深度和可行性更好。
50、您認(rèn)為做好測(cè)試用例設(shè)計(jì)工作的關(guān)鍵是什么?
白盒測(cè)試用例設(shè)計(jì)的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)果
黑盒法用例設(shè)計(jì)的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測(cè)試,以最少的用例在合理的時(shí)間內(nèi)發(fā)現(xiàn)最多的問(wèn)題
【qa面試問(wèn)題及答案】相關(guān)文章:
面試經(jīng)典問(wèn)題及答案07-02
面試的問(wèn)題及答案06-24
面試問(wèn)題及答案07-11
面試問(wèn)題及答案06-09
面試遇到的問(wèn)題及答案06-25
面試美容的問(wèn)題答案06-25
客服面試的問(wèn)題及答案06-25