束了,說出你遇到過最難的一道軟件測試面試題)
在測試面試時面試官往往會出一個簡單的場景讓大家進(jìn)行測試點設(shè)計來考察大家的測試設(shè)計能力題目看似簡單實則蘊(yùn)藏殺機(jī)測試人員需要根據(jù)自己的工作年限做出不同的回答方可過關(guān)。如果你工作1-2年那么你只需要回答功能方面的測試點就OK但是考慮的功能點一定要全面如果你工作3-4年除了功能你還需要考慮性能方面和用戶體驗方面如果你工作4年以上那么就需要考慮的更為全面了需要考慮安全測試和兼容性測試。在這里我先拋磚引玉以web系統(tǒng)的登錄為例進(jìn)行用例設(shè)計讓大家看看最最常用的登錄究竟可以設(shè)計出多少個測試點。我們只考慮以用戶名和密碼方式登錄web系統(tǒng)沒有考慮手機(jī)驗證碼方式手機(jī)掃碼以及第三方登錄的情況功能性用例設(shè)計點1、已注冊的用戶名和正確的密碼驗證是否成功登錄2、已注冊的用戶名和不正確的密碼驗證是否成功失敗且提示信息正確3、未注冊的用戶名和任意密碼驗證是否登錄失敗且提示信息正確4、未激活賬戶登錄驗證是否登錄失敗5、被停用用戶登錄驗證是否登錄失敗6、用戶名和密碼兩者都為空驗證是否登錄失敗且提示信息正確7、用戶名和密碼兩者之一為空驗證是否登錄失敗并且提示信息正確8、頁面上的密碼框是否加密顯示9、用戶登錄成功但是會話超時后繼續(xù)操作是否會重定向到用戶登錄界面10、不同級別的用戶比如管理員和普通用戶登錄系統(tǒng)后權(quán)限是否正確11、瀏覽器頁面默認(rèn)焦點是否定位在用戶輸入框 中12、快捷鍵Tab和Enter是否可以正常使用13、用戶名和密碼是否支持特殊字符和中文14、成功登出后點擊瀏覽器回退按鈕是否可以繼續(xù)操作系統(tǒng)15、不同瀏覽器下驗證登錄頁面的顯示以及功能正確性16、校驗登錄UI頁面設(shè)計的是否美觀安全性測試用例設(shè)計點1、 用戶密碼數(shù)據(jù)庫中存儲是否加密2、 用戶密碼在網(wǎng)絡(luò)傳輸過程中是否加密3、 密碼是否具有有效期密碼有效期到期后是否提示需要修改密碼4、 不登錄的情況下在瀏覽器中直接輸入登錄后的URL地址,驗證是否會重新定向到用戶登錄界面5、 密碼輸入框是否不支持復(fù)制粘貼6、 密碼輸入框內(nèi)輸入的密碼是否可以在瀏覽器開發(fā)者碼模式下被查看7、 用戶名和密碼輸入框是否存在sql注入漏洞8、 用戶名和密碼輸入框是否存在XSS跨站腳本攻擊漏洞9、 連續(xù)多次登錄失敗的情況下是否鎖定賬號10、 同一用戶先后在多臺終端瀏覽器手機(jī)其他上登錄驗證登錄是否具有互斥性12、是否可以記住密碼記住的密碼保存是否加密記住的密碼是否有有效期過了有效期后是否清空密碼13、密碼的強(qiáng)弱性和復(fù)雜度校驗性能壓力測試的用例設(shè)計點1、 單用戶登錄的響應(yīng)時間是否符合需求2、 高并發(fā)場景下用戶登錄的響應(yīng)時間是否符合需求3、 高并發(fā)場景下服務(wù)端的硬件資源是否符合預(yù)期考慮網(wǎng)絡(luò)、磁盤、CPU和內(nèi)存的資源利用率上述測試點設(shè)計也會存在遺漏但是如果大家在面試時能夠說出這些測試點我相信一定會讓面試官滿意軟件測試經(jīng)典面試題1、你的測試職業(yè)發(fā)展是什么?測試經(jīng)驗越多測試能力越高。所以我的職業(yè)發(fā)展是需要時間積累的一步步向著高級測試工程師奔去。而且我也有初步的職業(yè)規(guī)劃前3年積累測試經(jīng)驗按如何做好測試工程師的要點去要求自己不斷更新自己改正自己做好測試任務(wù)。2、你認(rèn)為測試人員需要具備哪些素質(zhì)做測試應(yīng)該要有一定的協(xié)調(diào)能力因為測試人員經(jīng)常要與開發(fā)接觸處理一些問題如果處理不好的話會引起一些沖突這樣的話工作上就會不好做。還有測試人員要有一定的耐心有的時候做測試很枯燥乏味。除了耐心測試人員不能放過每一個可能的錯誤。3、你為什么能夠做測試這一行雖然我的測試技術(shù)還不是很成熟但是我覺得我還是可以勝任軟件測試這個工作的因為做軟件測試不僅是要求技術(shù)好還有有一定的溝通能力耐心、細(xì)心等外在因素。綜合起來看我認(rèn)為我是勝任這個工作的。4、測試的目的是什么?測試的目的是找出軟件產(chǎn)品中的錯誤是軟件盡可能的符合用戶的要求。當(dāng)然軟件測試是不可能找出全部錯誤的。5、測試分為哪幾個階段?一般來說分為5個階段單元測試、集成測試、確認(rèn)測試、系統(tǒng)測試、驗收測試6、單元測試的測試對象、目的、測試依據(jù)、測試方法?測試對象是模塊內(nèi)部的程序錯誤目的是消除局部模塊邏輯和功能上的錯誤和缺陷。測試依據(jù)是模塊的詳細(xì)設(shè)計測試方法是采用白盒測試。7、怎樣看待加班問題加班的話我沒有太多意見但是我還是覺得如果能夠合理安排時間的話不會有太多時候加班的。8、結(jié)合你以前的學(xué)習(xí)和工作經(jīng)驗?zāi)阏J(rèn)為如何做好測試。根據(jù)我以前的工作和學(xué)習(xí)經(jīng)驗我認(rèn)為做好工作首先要有一個良好的溝通只有溝通無障礙了才會有好的協(xié)作才會有更好的效率再一個就是技術(shù)一定要過關(guān)做測試要有足夠的耐心和一個良好的工作習(xí)慣不懂的就要問實時與同事溝通這樣的話才能做好測試工作。9、你為什么選擇軟件測試行業(yè)因為之前了解軟件測試這個行業(yè)覺得他的發(fā)展前景很好。10、根據(jù)你以前的工作或?qū)W習(xí)經(jīng)驗描述一下軟件開發(fā)、測試過程由哪些角色負(fù)責(zé)你做什么要有架構(gòu)師、開發(fā)經(jīng)理、測試經(jīng)理、程序員、測試員。我在里面主要是負(fù)責(zé)所分到的模塊執(zhí)行測試用例。11、根據(jù)你的經(jīng)驗說說你對軟件測試/質(zhì)量保證的理解軟件質(zhì)量保證與測試是根據(jù)軟件開發(fā)階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計的一批測試用例(即輸入數(shù)據(jù)和預(yù)期的輸出結(jié)果)并根據(jù)這些測試用例去運(yùn)行程序以發(fā)現(xiàn)錯誤的過程。它是對應(yīng)用程序的各個方面進(jìn)行測試以檢查其功能、語言有效性及其外觀排布。12、軟件測試的流程是什么?需求調(diào)查全面了解系統(tǒng)概況、應(yīng)用領(lǐng)域、軟件開發(fā)周期、軟件開發(fā)環(huán)境、開發(fā)組織、時間安排、功能需求、性能需求、質(zhì)量需求及測試要求等。根據(jù)系統(tǒng)概況進(jìn)行項目所需的人員、時間和工作量估計以及項目報價。制定初步的項目計劃。測試準(zhǔn)備組織測試團(tuán)隊、培訓(xùn)、建立測試和管理環(huán)境等。測試設(shè)計按照測試要求進(jìn)行每個測試項的測試設(shè)計包括測試用例的設(shè)計和測試腳本的開發(fā)等。測試實施按照測試計劃實施測試。測試評估根據(jù)測試的結(jié)果出具測試評估報告。13、你對SQA 的職責(zé)和工作活動(如軟件度量)的理解?SQA就是獨立于軟件開發(fā)的項目組通過對軟件開發(fā)過程的監(jiān)控來保證軟件的開發(fā)流程按照指定的CMM規(guī)程(如果有相應(yīng)的CMM規(guī)程),對于不符合項及時提出建議和改進(jìn)方案必要時可以向高層經(jīng)理匯報以求問題的解決。通過這樣的途徑來預(yù)防缺陷的引入從而減少后期軟件的維護(hù)成本。SQA主要的工作活動包括制定SQA工作計劃參與階段產(chǎn)物的評審進(jìn)行過程質(zhì)量、功能配置及物理配置的審計等;對項目開發(fā)過程中產(chǎn)生的數(shù)據(jù)進(jìn)行度量等等。14、說說你對軟件配置管理的理解項目在開發(fā)過程中要用相應(yīng)的配置管理工具對配置項(包括各個階段的產(chǎn)物)進(jìn)行變更控制配置管理的使用取決于項目規(guī)模和復(fù)雜性及風(fēng)險的水平。軟件的規(guī)模越大配置管理就越顯得重要。還有在配置管理中有一個很重要的概念那就是基線是在一定階段各個配置項的組合一個基線就提供了一個正式的標(biāo)準(zhǔn)隨后的工作便基于此標(biāo)準(zhǔn)并只有經(jīng)過授權(quán)后才能變更這個標(biāo)準(zhǔn)。配置管理工具主要有CCVSS,CVS,SVN等我只用過SVN對其他的工具不是很熟悉。15、怎樣寫測試計劃和測試用例簡單點測試計劃里應(yīng)有詳細(xì)的測試策略和測試方法合理詳盡的資源安排等至于測試用例那是依賴于需求(包括功能與非功能需求)是否細(xì)化到功能點是否可測試等。16、說說主流的軟件工程思想(如CMM、CMMI、RUP,XP,PSP,TSP等)的大致情況及對他們的理解CMM:SW Capability Maturity Model軟件能力成熟度模型 其作用是軟件過程的改進(jìn)、評估及軟件能力的評鑒。CMMI:Capability Maturity Model Integration能力成熟度模型集成 CMMI融入了大部分最新的軟件管理實踐同時彌補(bǔ)了SW-CMM模型中的缺陷。RUP:rational unified process是軟件工程話過程。XP:extreme program即極限編程的意思適用于小型團(tuán)隊的軟件開發(fā)像上面第三個問題就可以結(jié)合原型法采用這樣的開發(fā)流程。要明白測試對于xp開發(fā)的重要性強(qiáng)調(diào)測試(重點是單元測試)先行的理念。編程可以明顯提高代碼的質(zhì)量持續(xù)集成對于快速定位問題有好處。PSPTSP分別是個體軟件過程和群體軟件過程。大家都知道CMM只是告訴你做什么但并沒有告訴你如何做所以PSP/TSP就是告訴你企業(yè)在實施CMM的過程中如何做PSP強(qiáng)調(diào)建立個人技能(如何制定計劃、控制質(zhì)量及如何與其他人相互協(xié)作等等)。而TSP著重于生產(chǎn)并交付高質(zhì)量的軟件產(chǎn)品(如何有效的規(guī)劃和管理所面臨的項目開發(fā)任務(wù)等等)。總之實施CMM永遠(yuǎn)不能真正做到能力成熟度的提升只有將實施CMM與實施PSP和TSP有機(jī)結(jié)合起來才能發(fā)揮最大的效力。因此軟件過程框架應(yīng)該是CMM/PSP/TSP的有機(jī)集成。17、你是怎樣保證軟件質(zhì)量的也就是說你覺得怎樣才能最大限度的保證軟件的質(zhì)量?測試并不能夠最大限度的保證軟件的質(zhì)量軟件的高質(zhì)量是開發(fā)和設(shè)計出來的而不是測試出來的它不僅要通過對軟件開發(fā)流程的監(jiān)控使得軟件開發(fā)的各個階段都要按照指定的規(guī)程進(jìn)行通過對各個階段產(chǎn)物的評審QA對流程的監(jiān)控對功能及配置的審計來達(dá)到開發(fā)的最優(yōu)化。當(dāng)然測試也是保證軟件質(zhì)量的一個重要方式是軟件質(zhì)量保證工程的一個重要組成部分。18、基于目前中國的國情大多數(shù)公司的項目進(jìn)度緊張、人員較少、需求文檔根本沒有或者很不規(guī)范你認(rèn)為在這種情況下怎樣保證軟件的質(zhì)量?(大多數(shù)公司最想知道的就是在這種困難面前你該怎么保證軟件的質(zhì)量因為這些公司一般就是這種情況--既不想投入過多又想保證質(zhì)量)出現(xiàn)以上的情況如果僅僅想通過測試來提高軟件質(zhì)量那幾乎是不可能的原因是沒有足夠的時間讓你去測試少而不規(guī)范的文檔導(dǎo)致測試需求無法細(xì)化到足夠且有針對行的測試。所以作為公司質(zhì)量保證的因該和項目經(jīng)理確定符合項目本身是和的軟件生命周期模型(比如RUP的建材原型法)明確項目的開發(fā)流程并督促項目組按照此流程開展工作所有項目組成員(項目經(jīng)理更加重要)都要制定出合理的工作計劃加強(qiáng)代碼的單元測試在客戶既定的產(chǎn)品交付日期范圍內(nèi)進(jìn)行產(chǎn)品的持續(xù)集成等等如果時間允許可以再配合客戶進(jìn)行必要的系統(tǒng)功能測試。19、一個測試工程師應(yīng)該具備哪些素質(zhì)和技能?1-掌握基本的測試基礎(chǔ)理論2-本著找出軟件存在的問題的態(tài)度進(jìn)行測試不要以挑刺的形象出現(xiàn)3-可熟練閱讀需求規(guī)格說明書等文檔4-以用戶的觀點看問題5-有強(qiáng)烈的質(zhì)量意識6-細(xì)心和責(zé)任心7-良好的有效的溝通方式(與開發(fā)人員及客戶)8-具有以往的測試經(jīng)驗?zāi)軌蚣皶r準(zhǔn)確的判斷出高危險區(qū)在何處20、做好軟件測試的一些關(guān)鍵點1-測試人員必須經(jīng)過測試基礎(chǔ)知識和理論的相關(guān)培訓(xùn)2-測試人員必須熟悉系統(tǒng)功能和業(yè)務(wù)3-測試要有計劃而且測試方案要和整個項目計劃協(xié)調(diào)好4-必須實現(xiàn)編寫測試用例測試執(zhí)行階段必須根據(jù)測試用例進(jìn)行5-易用性功能分支邊界性能等功能行和非功能性需求都要進(jìn)行測試6-對于復(fù)雜的流程一定要進(jìn)行流程分支組合條件分析再進(jìn)行等價類劃分準(zhǔn)備相關(guān)測試數(shù)據(jù)7-測試設(shè)計的一個重要內(nèi)容是要準(zhǔn)備好具體的測試數(shù)據(jù)清楚這個測試數(shù)據(jù)是測試那個場景或分支的。8-個人任務(wù)平均每三個測試用例至少應(yīng)該發(fā)現(xiàn)一個BUG否則只能說明測試用例質(zhì)量不好9-除了每天構(gòu)建的重復(fù)測試可以考慮測試自動化外其他暫時都不要考慮去自動話21、軟件測試員自身素質(zhì)培養(yǎng)1-首先應(yīng)對軟件測試感興趣和對自己有自信如果具備了這兩點那么在開發(fā)過程中不管遇到什么樣的困難相信一定能克服2-善于懷疑實際上沒有絕對正確的總有錯誤的地方具有叛逆心理別人認(rèn)為不可能發(fā)生的事情我卻認(rèn)為可能發(fā)生別人認(rèn)為是對的我卻認(rèn)為不是對的。3-打破沙鍋問到底的精神對于只出現(xiàn)過一次的BUG一定要找出原因不解決誓不罷休。4-保持一個良好的心情否則可能無法把測試做好。不要把生活中的不愉快的情緒帶到工作中來。5-做測試時要細(xì)心不是所有的BUG都能很容易找出一定要細(xì)心才能找到這些BUG。6-靈活一些聰明一點多造一些容易產(chǎn)生BUG的例子。7-在有條件的情況下多和客戶溝通他們身上有你所需要的。8-設(shè)身處地為客戶著想從他們的角度去測試系統(tǒng)。9-不要讓程序員以“這種情況不可能發(fā)生”這句話說服你相反你應(yīng)該去說服他告訴他在客戶心理并不是這樣的10-考慮問題要全面結(jié)合客戶的需求業(yè)務(wù)流程和系統(tǒng)的架構(gòu)等多方面考慮問題。11-提出問題不要復(fù)雜化這點和前面矛盾如果你是一個新手暫時不要管這點因為最終將有你的小組成員討論解決。12-追求完美對于新測試員來說努力追求完美這對你很好盡管有些事情無法做到但你應(yīng)該嘗試。13-幽默感能和開發(fā)小組很好的溝通是關(guān)鍵試著給你的開發(fā)小組找一個BUG殺手或?qū)λ麄冋f“我簡直不敢相信你寫的程序居然到現(xiàn)在沒有找到BUG”。22、為什要在一個團(tuán)隊中開展測試工作?因為沒有經(jīng)過測試的軟件很難在發(fā)布之前知道該軟件的質(zhì)量就好比ISO質(zhì)量認(rèn)證一樣測試同樣也需要質(zhì)量認(rèn)證這個時候就需要在團(tuán)隊中開展軟件測試的工作。在測試的過程中發(fā)現(xiàn)軟件中存在的問題及時讓開發(fā)人員得知并修改問題在即將發(fā)布時從測試報告中得出軟件的質(zhì)量情況。23、你所熟悉的軟件測試類型有哪些?測試類型有功能測試、性能測試、界面測試功能測試在測試工作中占有比例最大功能測試也叫黑盒測試。性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負(fù)載條件來對系統(tǒng)的各項性能指標(biāo)進(jìn)行測試。負(fù)載測試和壓力測試都屬于性能測試兩者可以結(jié)合進(jìn)行。界面測試界面是軟件與用戶交互的最直接的層界面的好壞決定用戶對軟件的第一印象。區(qū)別在于功能測試關(guān)注產(chǎn)品的所有功能要考慮到每個細(xì)節(jié)功能每個可能存在的功能問題。性能測試主要關(guān)注產(chǎn)品整體的多用戶并發(fā)下的穩(wěn)定性和健壯性。界面測試則關(guān)注與用戶體驗相關(guān)內(nèi)容用戶使用該產(chǎn)品的時候是否已用是否易懂是否規(guī)范(用戶無意輸入無效的數(shù)據(jù)當(dāng)然考慮到體驗性不能太粗魯?shù)膹棾鼍?。做某個性能測試的時候首先它可能是個功能點首先要保證她的功能是沒有問題的然后再考慮性能的問題。24、你認(rèn)為做好測試用例設(shè)計工作的關(guān)鍵是什么白盒測試用例設(shè)計的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)構(gòu)。黑盒測試用例設(shè)計的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測試以最少的用例在合理的時間內(nèi)發(fā)現(xiàn)最多的問題。軟件的黑盒測試意味著測試要在軟件的接口處進(jìn)行這種方法是把測試對象看作是一個黑盒子測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性只依據(jù)程序的需求規(guī)格說明書檢查程序的功能是否符合它的功能說明。因此黑盒測試又叫功能測試或者數(shù)據(jù)驅(qū)動測試。黑盒測試主要是為了發(fā)現(xiàn)以下幾類錯誤、1-是否有不正確或遺漏的功能2-在接口上輸入是否能正確的接受?能否輸出正確的結(jié)果。3-是否有數(shù)據(jù)結(jié)構(gòu)錯誤或外部信息(例如數(shù)據(jù)文件)訪問錯誤4-性能上是否能夠滿足要求5-是否有初始化或終止性錯誤軟件的白盒測試是對軟件的過程性細(xì)節(jié)做細(xì)致的檢查。這種方法是把測試對象看作一個打開的盒子它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)和有關(guān)信息設(shè)計或者選擇測試用例對程序所有邏輯路徑進(jìn)行測試。通過在不同點檢查程序狀態(tài)確定實際狀態(tài)是否與預(yù)期的狀態(tài)一直。因此白盒測試又稱為結(jié)合測試或邏輯驅(qū)動測試。白盒測試主要是想對程序模塊進(jìn)行如下檢查1-對程序模塊的所有獨立的執(zhí)行路徑至少測試一遍。2-對所有的邏輯判定取“真”與取“假”的兩種情況都能至少測一遍。3-在循環(huán)的邊界和運(yùn)行的界限內(nèi)執(zhí)行循環(huán)體。4-測試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性等等。25、請詳細(xì)介紹一下各種測試類型的含義1-單元測試(模塊測試)是開發(fā)者編寫的一小段代碼用于檢驗被測試代碼的一個很小的、很明確的功能是否正確。通常而言一個單元測試是用于判斷某個特定條件(或者場景)下某個特定函數(shù)的行為。單元測試是由程序員自己來完成最終受益的也是程序員自己。可以這么說程序員有責(zé)任編寫功能代碼同時也就有責(zé)任為自己的代碼編寫單元測試。執(zhí)行單元測試就是為了證明這段代碼的行為和我們期望的一致。2-集成測試(也叫組裝測試、聯(lián)合測試)是單元測試的邏輯擴(kuò)展。它最簡單的形式是兩個已經(jīng)經(jīng)過測試的單元組合成一個組件并且測試它們之間的接口。從這一層上講組件是指多個單元的集成聚合。在現(xiàn)實方案中許多單元組合成組件而這些組件又聚合成程序的更大部分。方法是測試片段的組合并最終擴(kuò)展進(jìn)程將您的模塊與其他組的模塊一起測試。最后將構(gòu)成進(jìn)程的所有模塊一起測試。3-系統(tǒng)測試是將經(jīng)過測試的子系統(tǒng)裝配成一個完整系統(tǒng)來測試。它是檢驗系統(tǒng)是否確實能提供系統(tǒng)方案說明書中制定功能的有效方法。(常見的聯(lián)調(diào)測試)。系統(tǒng)測試的目的是對最終軟件系統(tǒng)進(jìn)行全面的測試確保最終軟件系統(tǒng)滿足產(chǎn)品需求而遵循系統(tǒng)設(shè)計。4-驗收測試是部署軟件之前的最后一個測試操作。驗收測試的目的是確保軟件準(zhǔn)備就緒并且可以讓用戶將其執(zhí)行軟件的既定功能和任務(wù)。驗收測試是向未來的用戶表明系統(tǒng)能夠像預(yù)訂要求那樣工作。經(jīng)集成測試后已經(jīng)按照設(shè)計把所有的模塊組裝成一個完整的軟件系統(tǒng)接口錯誤也已經(jīng)基本排除了接著就應(yīng)該進(jìn)一步驗證軟件的有效性這就是驗收測試的任務(wù)即軟件的功能和性能如同用戶所合理期待的那樣。26、測試計劃工作的目的是什么?測試計劃工作的內(nèi)容都包括什么?其中哪些是最重要的?軟件測試計劃是知道測試過程的綱領(lǐng)性文件包含了產(chǎn)品概述、測試策略、測試方法、測試區(qū)域、測試配置、測試周期、測試資源、測試交流、風(fēng)險分析等內(nèi)容。借助軟件測試計劃參與測試的項目成員尤其是測試管理人員可以明確測試任務(wù)和測試方法保持測試實施過程的順暢溝通跟蹤和控制測試進(jìn)度應(yīng)對測試過程中的各種變更。測試計劃和測試詳細(xì)規(guī)格、測試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系測試計劃主要從宏觀上規(guī)劃測試活動的范圍、方法和資源配置而測試詳細(xì)規(guī)格、測試用例是完成測試任務(wù)的具體戰(zhàn)術(shù)。所以其中最重要的是測試策略和測試方法(最好能先評審)。27、您認(rèn)為做好測試計劃工作的關(guān)鍵是什么?1-明確測試的目標(biāo)增強(qiáng)測試計劃的實用性編寫軟件測試計劃的重要目的就是使測試過程能夠發(fā)現(xiàn)更多的軟件缺陷因此軟件測試計劃的價值取決于它對幫助管理測試項目并且找出軟件潛在的缺陷。因此軟件測試計劃中的測試范圍必須高度覆蓋功能需求測試方法必須切實可行測試工具并且具有較高的實用性便于使用生成的測試結(jié)果準(zhǔn)確2-堅持“5W”規(guī)則明確內(nèi)容與過程“5W”規(guī)則指的是“WHAT(做什么)”、“WHY(為什么做)”、WHEN(何時做)、WHERE(在哪里)、HOW(如何做)。利用“5W規(guī)則創(chuàng)建軟件測試計劃可以幫助測試團(tuán)隊理解測試的目的(WHY)明確測試的范圍和內(nèi)容(WHAT)確定測試的開始和結(jié)束日期(WHEN)指出測試的方法和工具(HOW)給出測試文檔和軟件存放的位置(WHERE)。3-采用評審和更新機(jī)制保證測試計劃滿足實際需求測試計劃完成后如果沒有經(jīng)過評審直接發(fā)送給測試團(tuán)隊測試計劃內(nèi)容的可能不準(zhǔn)確或遺漏測試內(nèi)容或者軟件需求變更引起測試范圍的增減而測試計劃的內(nèi)容沒有及時更新誤導(dǎo)測試執(zhí)行人員。4-分別創(chuàng)建測試計劃與測試詳細(xì)規(guī)格、測試用例應(yīng)把詳細(xì)的測試技術(shù)指標(biāo)包含到獨立創(chuàng)建的測試詳細(xì)規(guī)格文檔把用于指導(dǎo)測試小組執(zhí)行過程的測試用例放到獨立創(chuàng)建的測試用例文檔或測試用例管理數(shù)據(jù)庫中。測試計劃和測試詳細(xì)規(guī)格、測試用例之間是戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系測試計劃主要從宏觀上規(guī)劃測試活動的范圍、方法和資源配置而測試詳細(xì)規(guī)格、測試用例是完成測試任務(wù)的具體戰(zhàn)術(shù)。28、當(dāng)開發(fā)人員說不是BUG時你如何應(yīng)付?開發(fā)人員說不是BUG有2種情況一是需求沒有確定所以我可以這么做這個時候可以找來產(chǎn)品經(jīng)理進(jìn)行確認(rèn)需不需要改動。3方商量確定好后再看要不要改。二是這種情況不可能發(fā)生所以不需要修改這個時候我可以先盡可能的說出是BUG的一句是什么?如果被用戶發(fā)現(xiàn)或出了問題會有什么不良結(jié)果?程序員可能會給你很多理由你可以對他的解釋進(jìn)行反駁。如果還是不行那我可以給這個問題提出來跟開發(fā)經(jīng)理和測試經(jīng)理進(jìn)行確認(rèn)如果要修改就改如果不要修改就不改。其實有些真的不是BUG我也只是建議的方式寫進(jìn)測試文檔中如果開發(fā)人員不修改也沒有大問題。如果不是BUG的話一定要堅持自己的立場讓問題得到最后的確認(rèn)。29、你自認(rèn)為測試的優(yōu)勢在哪里?優(yōu)勢在于我對測試堅定不移的信心和熱情雖然經(jīng)驗還不足但測試需要的基本技能我有信心在工作中得以發(fā)揮。30、什么是系統(tǒng)瓶頸?瓶頸主要是指整個軟硬件構(gòu)成的軟件系統(tǒng)某一方面或者幾個方面能力不能滿足用戶的特定業(yè)務(wù)要求“特定”是指瓶頸會在某些條件下會出現(xiàn)因為畢竟大多數(shù)系統(tǒng)在投入前。嚴(yán)格的從技術(shù)角度講所有的系統(tǒng)都會有瓶頸因為大多數(shù)系統(tǒng)的資源配置不是協(xié)調(diào)的例如CPU使用率剛好達(dá)到100%時內(nèi)存也正好耗盡的系統(tǒng)不是很多見。因此我們討論系統(tǒng)瓶頸要從應(yīng)用的角度討論關(guān)鍵是看系統(tǒng)能否滿足用戶需求。在用戶極限使用系統(tǒng)的情況下系統(tǒng)的響應(yīng)仍然正常我們可以認(rèn)為改系統(tǒng)沒有瓶頸或者瓶頸不會影響用戶工作。因此我們測試系統(tǒng)瓶頸主要是實現(xiàn)下面兩個目的-發(fā)現(xiàn)“表面”的瓶頸。主要是模擬用戶的操作找出用戶極限使用系統(tǒng)時的瓶頸然后解決瓶頸這是性能測試的基本目標(biāo)。-發(fā)現(xiàn)潛在的瓶頸并解決保證系統(tǒng)的長期穩(wěn)定性。主要是考慮用戶在將來擴(kuò)展系統(tǒng)或者業(yè)務(wù)發(fā)生變化時系統(tǒng)能夠適應(yīng)變化。滿足用戶目前需求的系統(tǒng)不是最好的我們設(shè)計系統(tǒng)的目標(biāo)是在保證系統(tǒng)整個軟件生命周期能夠不斷適應(yīng)用戶的變化或者通過簡單擴(kuò)展系統(tǒng)就可以適應(yīng)新的變化。感謝每一個認(rèn)真閱讀我文章的人禮尚往來總是要有的雖然不是什么很值錢的東西如果你用得到的話可以直接拿走這些資料對于【軟件測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫這個倉庫也陪伴上萬個測試工程師們走過最艱難的路程希望也能幫助到你!有需要的小伙伴可以點擊下方小卡片領(lǐng)取