qa面試問(wèn)題及答案

時(shí)間:2023-01-28 13:35:31 面試 我要投稿
  • 相關(guān)推薦

qa面試問(wèn)題及答案

  一般要應聘關(guān)于軟件開(kāi)發(fā)的工作,面試題會(huì )不會(huì )很難?qa面試問(wèn)題及答案是什么?

qa面試問(wèn)題及答案

  qa面試問(wèn)題及答案

  1、你的測試職業(yè)發(fā)展是什么?

  測試經(jīng)驗越多,測試能力越高。所以我的職業(yè)發(fā)展是需要時(shí)間積累的,一步步向著(zhù)高級測試工程師奔去。而且我也有初步的職業(yè)規劃,前3年積累測試經(jīng)驗,按如何做好測試工程師的要點(diǎn)去要求自己,不斷更新自己改正自己,做好測試任務(wù)。

  2、你認為測試人員需要具備哪些素質(zhì)

  做測試應該要有一定的協(xié)調能力,因為測試人員經(jīng)常要與開(kāi)發(fā)接觸處理一些問(wèn)題,如果處理不好的話(huà)會(huì )引起一些沖突,這樣的話(huà)工作上就會(huì )不好做。還有測試人員要有一定的耐心,有的時(shí)候做測試很枯燥乏味。除了耐心,測試人員不能放過(guò)每一個(gè)可能的錯誤。

  3、你為什么能夠做測試這一行

  雖然我的測試技術(shù)還不是很成熟,但是我覺(jué)得我還是可以勝任軟件測試這個(gè)工作的,因為做軟件測試不僅是要求技術(shù)好,還有有一定的溝通能力,耐心、細心等外在因素。綜合起來(lái)看我認為我是勝任這個(gè)工作的。

  4、測試的目的是什么?

  測試的目的是找出軟件產(chǎn)品中的錯誤,是軟件盡可能的符合用戶(hù)的要求。當然軟件測試是不可能找出全部錯誤的。

  5、測試分為哪幾個(gè)階段?

  一般來(lái)說(shuō)分為5個(gè)階段:?jiǎn)卧獪y試、集成測試、確認測試、系統測試、驗收測試

  6、單元測試的測試對象、目的、測試依據、測試方法?

  測試對象是模塊內部的程序錯誤,目的是消除局部模塊邏輯和功能上的錯誤和缺陷。測試依據是模塊的詳細設計,測試方法是采用白盒測試。

  7、怎樣看待加班問(wèn)題

  加班的話(huà)我沒(méi)有太多意見(jiàn),但是我還是覺(jué)得如果能夠合理安排時(shí)間的話(huà),不會(huì )有太多時(shí)候加班的。

  8、結合你以前的學(xué)習和工作經(jīng)驗,你認為如何做好測試。

  根據我以前的工作和學(xué)習經(jīng)驗,我認為做好工作首先要有一個(gè)良好的溝通,只有溝通無(wú)障礙了,才會(huì )有好的協(xié)作,才會(huì )有更好的效率,再一個(gè)就是技術(shù)一定要過(guò)關(guān),做測試要有足夠的耐心,和一個(gè)良好的工作習慣,不懂的就要問(wèn),實(shí)時(shí)與同事溝通這樣的話(huà)才能做好測試工作。

  9、你為什么選擇軟件測試行業(yè)

  因為之前了解軟件測試這個(gè)行業(yè),覺(jué)得他的發(fā)展前景很好。

  10、根據你以前的工作或學(xué)習經(jīng)驗描述一下軟件開(kāi)發(fā)、測試過(guò)程,由哪些角色負責,你做什么

  要有架構師、開(kāi)發(fā)經(jīng)理、測試經(jīng)理、程序員、測試員。我在里面主要是負責所分到的模塊執行測試用例。

  11、根據你的經(jīng)驗說(shuō)說(shuō)你對軟件測試/質(zhì)量保證的理解

  軟件質(zhì)量保證與測試是根據軟件開(kāi)發(fā)階段的規格說(shuō)明和程序的內部結構而精心設計的一批測試用例(即輸入數據和預期的輸出結果),并根據這些測試用例去運行程序,以發(fā)現錯誤的過(guò)程。它是對應用程序的各個(gè)方面進(jìn)行測試以檢查其功能、語(yǔ)言有效性及其外觀(guān)排布。

  12、軟件測試的流程是什么?

  需求調查:全面了解系統概況、應用領(lǐng)域、軟件開(kāi)發(fā)周期、軟件開(kāi)發(fā)環(huán)境、開(kāi)發(fā)組織、時(shí)間安排、功能需求、性能需求、質(zhì)量需求及測試要求等。根據系統概況進(jìn)行項目所需的人員、時(shí)間和工作量估計以及項目報價(jià)。

  制定初步的項目計劃。

  測試準備:組織測試團隊、培訓、建立測試和管理環(huán)境等。

  測試設計:按照測試要求進(jìn)行每個(gè)測試項的測試設計,包括測試用例的設計和測試腳本的開(kāi)發(fā)等。

  測試實(shí)施:按照測試計劃實(shí)施測試。

  測試評估:根據測試的結果,出具測試評估報告。

  13、你對SQA的職責和工作活動(dòng)(如軟件度量)的理解?

  SQA就是獨立于軟件開(kāi)發(fā)的項目組,通過(guò)對軟件開(kāi)發(fā)過(guò)程的監控,來(lái)保證軟件的開(kāi)發(fā)流程按照指定的CMM規程(如果有相應的CMM規程),對于不符合項及時(shí)提出建議和改進(jìn)方案,必要時(shí)可以向高層經(jīng)理匯報以求問(wèn)題的解決。通過(guò)這樣的途徑來(lái)預防缺陷的引入,從而減少后期軟件的維護成本。SQA主要的工作活動(dòng)包括制定SQA工作計劃,參與階段產(chǎn)物的評審,進(jìn)行過(guò)程質(zhì)量、功能配置及物理配置的審計等;對項目開(kāi)發(fā)過(guò)程中產(chǎn)生的數據進(jìn)行度量等等。

  14、說(shuō)說(shuō)你對軟件配置管理的理解

  項目在開(kāi)發(fā)過(guò)程中要用相應的配置管理工具對配置項(包括各個(gè)階段的產(chǎn)物)進(jìn)行變更控制,配置管理的使用取決于項目規模和復雜性及風(fēng)險的水平。軟件的規模越大,配置管理就越顯得重要。還有在配置管理中,有一個(gè)很重要的概念,那就是基線(xiàn),是在一定階段各個(gè)配置項的組合,一個(gè)基線(xiàn)就提供了一個(gè)正式的標準,隨后的工作便基于此標準,并只有經(jīng)過(guò)授權后才能變更這個(gè)標準。配置管理工具主要有CC,VSS,CVS,SVN等,我只用過(guò)SVN,對其他的工具不是很熟悉。

  15、怎樣寫(xiě)測試計劃和測試用例

  簡(jiǎn)單點(diǎn),測試計劃里應有詳細的測試策略和測試方法,合理詳盡的資源安排等,至于測試用例,那是依賴(lài)于需求(包括功能與非功能需求)是否細化到功能點(diǎn),是否可測試等。

  16、說(shuō)說(shuō)主流的軟件工程思想(如CMM、CMMI、RUP,XP,PSP,TSP等)的大致情況及對他們的理解

  CMM:SW Capability Maturity Model軟件能力成熟度模型,其作用是軟件過(guò)程的改進(jìn)、評估及軟件能力的評鑒。

  CMMI:Capability Maturity Model Integration能力成熟度模型集成 CMMI融入了大部分最新的軟件管理實(shí)踐,同時(shí)彌補了SW-CMM模型中的缺陷。

  RUP:rational unified process是軟件工程話(huà)過(guò)程。

  XP:extreme program,即極限編程的意思,適用于小型團隊的軟件開(kāi)發(fā),像上面第三個(gè)問(wèn)題就可以結合原型法采用這樣的開(kāi)發(fā)流程。要明白測試對于xp開(kāi)發(fā)的重要性,強調測試(重點(diǎn)是單元測試)先行的理念。編程可以明顯提高代碼的質(zhì)量,持續集成對于快速定位問(wèn)題有好處。

  PSP,TSP分別是個(gè)體軟件過(guò)程和群體軟件過(guò)程。大家都知道,CMM只是告訴你做什么但并沒(méi)有告訴你如何做,所以PSP/TSP就是告訴你企業(yè)在實(shí)施CMM的過(guò)程中如何做,PSP強調建立個(gè)人技能(如何制定計劃、控制質(zhì)量及如何與其他人相互協(xié)作等等)。而TSP著(zhù)重于生產(chǎn)并交付高質(zhì)量的軟件產(chǎn)品(如何有效的規劃和管理所面臨的項目開(kāi)發(fā)任務(wù)等等)?傊,實(shí)施CMM,永遠不能真正做到能力成熟度的提升,只有將實(shí)施CMM與實(shí)施PSP和TSP有機結合起來(lái),才能發(fā)揮最大的效力。因此,軟件過(guò)程框架應該是CMM/PSP/TSP的有機集成。

  17、你是怎樣保證軟件質(zhì)量的,也就是說(shuō)你覺(jué)得怎樣才能最大限度的保證軟件的質(zhì)量?

  測試并不能夠最大限度的保證軟件的質(zhì)量,軟件的高質(zhì)量是開(kāi)發(fā)和設計出來(lái)的,而不是測試出來(lái)的,它不僅要通過(guò)對軟件開(kāi)發(fā)流程的監控,使得軟件開(kāi)發(fā)的各個(gè)階段都要按照指定的規程進(jìn)行,通過(guò)對各個(gè)階段產(chǎn)物的評審,QA對流程的監控,對功能及配置的審計來(lái)達到開(kāi)發(fā)的最優(yōu)化。當然測試也是保證軟件質(zhì)量的一個(gè)重要方式,是軟件質(zhì)量保證工程的一個(gè)重要組成部分。

  18、基于目前中國的國情,大多數公司的項目進(jìn)度緊張、人員較少、需求文檔根本沒(méi)有或者很不規范,你認為在這種情況下怎樣保證軟件的質(zhì)量?(大多數公司最想知道的就是在這種困難面前你該怎么保證軟件的質(zhì)量,因為這些公司一般就是這種情況--既不想投入過(guò)多又想保證質(zhì)量)

  出現以上的情況,如果僅僅想通過(guò)測試來(lái)提高軟件質(zhì)量,那幾乎是不可能的,原因是沒(méi)有足夠的時(shí)間讓你去測試,少而不規范的文檔導致測試需求無(wú)法細化到足夠且有針對行的測試。所以,作為公司質(zhì)量保證的因該和項目經(jīng)理確定符合項目本身是和的軟件生命周期模型(比如RUP的建材,原型法),明確項目的開(kāi)發(fā)流程并督促項目組按照此流程開(kāi)展工作,所有項目組成員(項目經(jīng)理更加重要)都要制定出合理的工作計劃,加強代碼的單元測試,在客戶(hù)既定的產(chǎn)品交付日期范圍內,進(jìn)行產(chǎn)品的持續集成等等,如果時(shí)間允許可以再配合客戶(hù)進(jìn)行必要的系統功能測試。

  19、一個(gè)測試工程師應該具備哪些素質(zhì)和技能?

  1-掌握基本的測試基礎理論

  2-本著(zhù)找出軟件存在的問(wèn)題的態(tài)度進(jìn)行測試,不要以挑刺的形象出現

  3-可熟練閱讀需求規格說(shuō)明書(shū)等文檔

  4-以用戶(hù)的觀(guān)點(diǎn)看問(wèn)題

  5-有強烈的質(zhì)量意識

  6-細心和責任心

  7-良好的有效的溝通方式(與開(kāi)發(fā)人員及客戶(hù))

  8-具有以往的測試經(jīng)驗能夠及時(shí)準確的判斷出高危險區在何處

  20、做好軟件測試的一些關(guān)鍵點(diǎn)

  1-測試人員必須經(jīng)過(guò)測試基礎知識和理論的相關(guān)培訓

  2-測試人員必須熟悉系統功能和業(yè)務(wù)

  3-測試要有計劃,而且測試方案要和整個(gè)項目計劃協(xié)調好

  4-必須實(shí)現編寫(xiě)測試用例,測試執行階段必須根據測試用例進(jìn)行

  5-易用性,功能,分支,邊界,性能等功能行和非功能性需求都要進(jìn)行測試

  6-對于復雜的流程一定要進(jìn)行流程分支,組合條件分析,再進(jìn)行等價(jià)類(lèi)劃分準備相關(guān)測試數據

  7-測試設計的一個(gè)重要內容是要準備好具體的測試數據,清楚這個(gè)測試數據是測試那個(gè)場(chǎng)景或分支的。

  8-個(gè)人任務(wù)平均每三個(gè)測試用例至少應該發(fā)現一個(gè)BUG,否則只能說(shuō)明測試用例質(zhì)量不好

  9-除了每天構建的重復測試可以考慮測試自動(dòng)化外,其他暫時(shí)都不要考慮去自動(dòng)話(huà)

  21、軟件測試員自身素質(zhì)培養

  1-首先,應對軟件測試感興趣和對自己有自信,如果具備了這兩點(diǎn),那么在開(kāi)發(fā)過(guò)程中不管遇到什么樣的困難,相信一定能克服

  2-善于懷疑,實(shí)際上沒(méi)有絕對正確的,總有錯誤的地方,具有叛逆心理,別人認為不可能發(fā)生的事情,我卻認為可能發(fā)生,別人認為是對的,我卻認為不是對的。

  3-打破沙鍋問(wèn)到底的精神,對于只出現過(guò)一次的BUG一定要找出原因,不解決誓不罷休。

  4-保持一個(gè)良好的心情,否則可能無(wú)法把測試做好。不要把生活中的不愉快的情緒帶到工作中來(lái)。

  5-做測試時(shí)要細心,不是所有的BUG都能很容易找出,一定要細心才能找到這些BUG。

  6-靈活一些,聰明一點(diǎn),多造一些容易產(chǎn)生BUG的例子。

  7-在有條件的情況下,多和客戶(hù)溝通,他們身上有你所需要的。

  8-設身處地為客戶(hù)著(zhù)想,從他們的角度去測試系統。

  9-不要讓程序員,以“這種情況不可能發(fā)生”這句話(huà)說(shuō)服你,相反,你應該去說(shuō)服他,告訴他在客戶(hù)心理,并不是這樣的

  10-考慮問(wèn)題要全面,結合客戶(hù)的需求,業(yè)務(wù)流程和系統的架構等多方面考慮問(wèn)題。

  11-提出問(wèn)題不要復雜化,這點(diǎn)和前面矛盾,如果你是一個(gè)新手,暫時(shí)不要管這點(diǎn),因為最終將有你的小組成員討論解決。

  12-追求完美,對于新測試員來(lái)說(shuō),努力追求完美,這對你很好,盡管有些事情無(wú)法做到,但你應該嘗試。

  13-幽默感,能和開(kāi)發(fā)小組很好的溝通是關(guān)鍵,試著(zhù)給你的開(kāi)發(fā)小組找一個(gè)BUG殺手,或對他們說(shuō)“我簡(jiǎn)直不敢相信,你寫(xiě)的程序居然到現在沒(méi)有找到BUG”。

  22、為什要在一個(gè)團隊中開(kāi)展測試工作?

  因為沒(méi)有經(jīng)過(guò)測試的軟件很難在發(fā)布之前知道該軟件的質(zhì)量,就好比ISO質(zhì)量認證一樣,測試同樣也需要質(zhì)量認證,這個(gè)時(shí)候就需要在團隊中開(kāi)展軟件測試的工作。在測試的過(guò)程中發(fā)現軟件中存在的問(wèn)題,及時(shí)讓開(kāi)發(fā)人員得知并修改問(wèn)題,在即將發(fā)布時(shí),從測試報告中得出軟件的質(zhì)量情況。

  23、你所熟悉的軟件測試類(lèi)型有哪些?

  測試類(lèi)型有:功能測試、性能測試、界面測試

  功能測試在測試工作中占有比例最大,功能測試也叫黑盒測試。

  性能測試是通過(guò)自動(dòng)化的測試工具模擬多種正常、峰值以及異常負載條件來(lái)對系統的各項性能指標進(jìn)行測試。負載測試和壓力測試都屬于性能測試,兩者可以結合進(jìn)行。

  界面測試,界面是軟件與用戶(hù)交互的最直接的層,界面的好壞決定用戶(hù)對軟件的第一印象。

  區別在于,功能測試關(guān)注產(chǎn)品的所有功能,要考慮到每個(gè)細節功能,每個(gè)可能存在的功能問(wèn)題。性能測試主要關(guān)注產(chǎn)品整體的多用戶(hù)并發(fā)下的穩定性和健壯性。界面測試則關(guān)注與用戶(hù)體驗相關(guān)內容,用戶(hù)使用該產(chǎn)品的時(shí)候是否已用,是否易懂,是否規范(用戶(hù)無(wú)意輸入無(wú)效的數據,當然考慮到體驗性,不能太粗魯的彈出警告)。做某個(gè)性能測試的時(shí)候,首先它可能是個(gè)功能點(diǎn),首先要保證她的功能是沒(méi)有問(wèn)題的,然后再考慮性能的問(wèn)題。

  24、你認為做好測試用例設計工作的關(guān)鍵是什么

  白盒測試用例設計的關(guān)鍵是以較少的用例覆蓋盡可能多的內部程序邏輯結構。黑盒測試用例設計的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測試,以最少的用例在合理的時(shí)間內發(fā)現最多的問(wèn)題。軟件的黑盒測試意味著(zhù)測試要在軟件的接口處進(jìn)行,這種方法是把測試對象看作是一個(gè)黑盒子,測試人員完全不考慮程序內部的邏輯結構和內部特性,只依據程序的需求規格說(shuō)明書(shū),檢查程序的功能是否符合它的功能說(shuō)明。因此黑盒測試又叫功能測試或者數據驅動(dòng)測試。黑盒測試主要是為了發(fā)現以下幾類(lèi)錯誤:、

  1-是否有不正確或遺漏的功能

  2-在接口上,輸入是否能正確的接受?能否輸出正確的結果。

  3-是否有數據結構錯誤或外部信息(例如數據文件)訪(fǎng)問(wèn)錯誤

  4-性能上是否能夠滿(mǎn)足要求

  5-是否有初始化或終止性錯誤

  軟件的白盒測試是對軟件的過(guò)程性細節做細致的檢查。這種方法是把測試對象看作一個(gè)打開(kāi)的盒子,它允許測試人員利用程序內部的邏輯結構和有關(guān)信息,設計或者選擇測試用例,對程序所有邏輯路徑進(jìn)行測試。通過(guò)在不同點(diǎn)檢查程序狀態(tài),確定實(shí)際狀態(tài)是否與預期的狀態(tài)一直。因此白盒測試又稱(chēng)為結合測試或邏輯驅動(dòng)測試。白盒測試主要是想對程序模塊進(jìn)行如下檢查:

  1-對程序模塊的所有獨立的執行路徑至少測試一遍。

  2-對所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測一遍。

  3-在循環(huán)的邊界和運行的界限內執行循環(huán)體。

  4-測試內部數據結構的有效性,等等。

  25、請詳細介紹一下各種測試類(lèi)型的含義

  1-單元測試(模塊測試)是開(kāi)發(fā)者編寫(xiě)的一小段代碼,用于檢驗被測試代碼的一個(gè)很小的、很明確的功能是否正確。通常而言,一個(gè)單元測試是用于判斷某個(gè)特定條件(或者場(chǎng)景)下某個(gè)特定函數的行為。單元測試是由程序員自己來(lái)完成,最終受益的也是程序員自己?梢赃@么說(shuō),程序員有責任編寫(xiě)功能代碼,同時(shí)也就有責任為自己的代碼編寫(xiě)單元測試。執行單元測試,就是為了證明這段代碼的行為和我們期望的一致。

  2-集成測試(也叫組裝測試、聯(lián)合測試)是單元測試的邏輯擴展。它最簡(jiǎn)單的形式是:兩個(gè)已經(jīng)經(jīng)過(guò)測試的單元組合成一個(gè)組件,并且測試它們之間的接口。從這一層上講,組件是指多個(gè)單元的集成聚合。在現實(shí)方案中,許多單元組合成組件,而這些組件又聚合成程序的更大部分。方法是測試片段的組合,并最終擴展進(jìn)程,將您的模塊與其他組的模塊一起測試。最后,將構成進(jìn)程的所有模塊一起測試。

  3-系統測試是將經(jīng)過(guò)測試的子系統裝配成一個(gè)完整系統來(lái)測試。它是檢驗系統是否確實(shí)能提供系統方案說(shuō)明書(shū)中制定功能的有效方法。(常見(jiàn)的聯(lián)調測試)。系統測試的目的是對最終軟件系統進(jìn)行全面的測試,確保最終軟件系統滿(mǎn)足產(chǎn)品需求而遵循系統設計。

  4-驗收測試是部署軟件之前的最后一個(gè)測試操作。驗收測試的目的是確保軟件準備就緒,并且可以讓用戶(hù)將其執行軟件的既定功能和任務(wù)。驗收測試是向未來(lái)的用戶(hù)表明系統能夠像預訂要求那樣工作。經(jīng)集成測試后,已經(jīng)按照設計把所有的模塊組裝成一個(gè)完整的軟件系統,接口錯誤也已經(jīng)基本排除了,接著(zhù)就應該進(jìn)一步驗證軟件的有效性,這就是驗收測試的任務(wù),即軟件的功能和性能如同用戶(hù)所合理期待的那樣。

  26、測試計劃工作的目的是什么?測試計劃工作的內容都包括什么?其中哪些是最重要的?

  軟件測試計劃是知道測試過(guò)程的綱領(lǐng)性文件,包含了產(chǎn)品概述、測試策略、測試方法、測試區域、測試配置、測試周期、測試資源、測試交流、風(fēng)險分析等內容。借助軟件測試計劃,參與測試的項目成員,尤其是測試管理人員,可以明確測試任務(wù)和測試方法,保持測試實(shí)施過(guò)程的順暢溝通,跟蹤和控制測試進(jìn)度,應對測試過(guò)程中的各種變更。

  測試計劃和測試詳細規格、測試用例之間是戰略和戰術(shù)的關(guān)系,測試計劃主要從宏觀(guān)上規劃測試活動(dòng)的范圍、方法和資源配置,而測試詳細規格、測試用例是完成測試任務(wù)的具體戰術(shù)。所以其中最重要的是測試策略和測試方法(最好能先評審)。

  27、您認為做好測試計劃工作的關(guān)鍵是什么?

  1-明確測試的目標,增強測試計劃的實(shí)用性

  編寫(xiě)軟件測試計劃的重要目的就是使測試過(guò)程能夠發(fā)現更多的軟件缺陷,因此軟件測試計劃的價(jià)值取決于它對幫助管理測試項目,并且找出軟件潛在的缺陷。因此,軟件測試計劃中的測試范圍必須高度覆蓋功能需求,測試方法必須切實(shí)可行,測試工具并且具有較高的實(shí)用性,便于使用,生成的測試結果準確

  2-堅持“5W”規則,明確內容與過(guò)程

  “5W”規則指的是“WHAT(做什么)”、“WHY(為什么做)”、"WHEN(何時(shí)做)"、"WHERE(在哪里)"、"HOW(如何做)"。利用“5W"規則創(chuàng )建軟件測試計劃,可以幫助測試團隊理解測試的目的(WHY),明確測試的范圍和內容(WHAT),確定測試的開(kāi)始和結束日期(WHEN),指出測試的方法和工具(HOW),給出測試文檔和軟件存放的位置(WHERE)。

  3-采用評審和更新機制,保證測試計劃滿(mǎn)足實(shí)際需求

  測試計劃完成后,如果沒(méi)有經(jīng)過(guò)評審,直接發(fā)送給測試團隊,測試計劃內容的可能不準確或遺漏測試內容,或者軟件需求變更引起測試范圍的增減,而測試計劃的內容沒(méi)有及時(shí)更新,誤導測試執行人員。

  4-分別創(chuàng )建測試計劃與測試詳細規格、測試用例

  應把詳細的測試技術(shù)指標包含到獨立創(chuàng )建的測試詳細規格文檔,把用于指導測試小組執行過(guò)程的測試用例放到獨立創(chuàng )建的測試用例文檔或測試用例管理數據庫中。測試計劃和測試詳細規格、測試用例之間是戰略和戰術(shù)的關(guān)系,測試計劃主要從宏觀(guān)上規劃測試活動(dòng)的范圍、方法和資源配置,而測試詳細規格、測試用例是完成測試任務(wù)的具體戰術(shù)。

  28、當開(kāi)發(fā)人員說(shuō)不是BUG時(shí),你如何應付?

  開(kāi)發(fā)人員說(shuō)不是BUG,有2種情況,一是需求沒(méi)有確定,所以我可以這么做,這個(gè)時(shí)候可以找來(lái)產(chǎn)品經(jīng)理進(jìn)行確認,需不需要改動(dòng)。3方商量確定好后再看要不要改。二是這種情況不可能發(fā)生,所以不需要修改,這個(gè)時(shí)候,我可以先盡可能的說(shuō)出是BUG的一句是什么?如果被用戶(hù)發(fā)現或出了問(wèn)題,會(huì )有什么不良結果?程序員可能會(huì )給你很多理由,你可以對他的解釋進(jìn)行反駁。如果還是不行,那我可以給這個(gè)問(wèn)題提出來(lái),跟開(kāi)發(fā)經(jīng)理和測試經(jīng)理進(jìn)行確認,如果要修改就改,如果不要修改就不改。其實(shí)有些真的不是BUG,我也只是建議的方式寫(xiě)進(jìn)測試文檔中,如果開(kāi)發(fā)人員不修改也沒(méi)有大問(wèn)題。如果不是BUG的話(huà),一定要堅持自己的立場(chǎng),讓問(wèn)題得到最后的確認。

  29、你自認為測試的優(yōu)勢在哪里?

  優(yōu)勢在于我對測試堅定不移的信心和熱情,雖然經(jīng)驗還不足,但測試需要的基本技能我有信心在工作中得以發(fā)揮。

  30、什么是系統瓶頸?

  瓶頸主要是指整個(gè)軟硬件構成的軟件系統某一方面或者幾個(gè)方面能力不能滿(mǎn)足用戶(hù)的特定業(yè)務(wù)要求,“特定”是指瓶頸會(huì )在某些條件下會(huì )出現,因為畢竟大多數系統在投入前。

  嚴格的從技術(shù)角度講,所有的系統都會(huì )有瓶頸,因為大多數系統的資源配置不是協(xié)調的,例如CPU使用率剛好達到100%時(shí),內存也正好耗盡的系統不是很多見(jiàn)。因此我們討論系統瓶頸要從應用的角度討論:關(guān)鍵是看系統能否滿(mǎn)足用戶(hù)需求。在用戶(hù)極限使用系統的情況下,系統的響應仍然正常,我們可以認為改系統沒(méi)有瓶頸或者瓶頸不會(huì )影響用戶(hù)工作。

  因此我們測試系統瓶頸主要是實(shí)現下面兩個(gè)目的:

  -發(fā)現“表面”的瓶頸。主要是模擬用戶(hù)的操作,找出用戶(hù)極限使用系統時(shí)的瓶頸,然后解決瓶頸,這是性能測試的基本目標。

  -發(fā)現潛在的瓶頸并解決,保證系統的長(cháng)期穩定性。主要是考慮用戶(hù)在將來(lái)擴展系統或者業(yè)務(wù)發(fā)生變化時(shí),系統能夠適應變化。滿(mǎn)足用戶(hù)目前需求的系統不是最好的,我們設計系統的目標是在保證系統整個(gè)軟件生命周期能夠不斷適應用戶(hù)的變化,或者通過(guò)簡(jiǎn)單擴展系統就可以適應新的變化。

  31、文檔測試主要包含什么內容?

  在國內軟件開(kāi)發(fā)管理中,文檔管理幾乎是最弱的一項,因而在測試工作中特別容易忽略文檔測試也就不足為奇了。要想給用戶(hù)提供完整的產(chǎn)品,文檔測試是必不可少的。文檔測試一般注重下面幾個(gè)方面:

  文檔的完整性:主要是測試文檔內容的全面性與完整性,從總體上把握文檔的質(zhì)量。例如用戶(hù)手冊應該包括軟件的所有功能模塊。

  描述與軟件實(shí)際情況的一致性:主要測試軟件文檔與軟件實(shí)際的一致程度。例如用戶(hù)手冊基本完整后,我們還要注意用戶(hù)手冊與實(shí)際功能描述是否一致。因為文檔往往跟不上軟件版本的更新速度。

  易理解性:主要是檢查文檔對關(guān)鍵、重要的操作有無(wú)圖文說(shuō)明,文字、圖表是否易于理解。對于關(guān)鍵、重要的操作僅僅只有文字說(shuō)明肯定是不夠的,應該附有圖表使說(shuō)明更為直觀(guān)和明了。

  文檔中提供操作的實(shí)例:這項檢查內容主要針對用戶(hù)手冊。對主要功能和關(guān)鍵操作提供的應用實(shí)例是否豐富,提供的實(shí)例描述是否詳細。只有簡(jiǎn)單的圖文說(shuō)明,而無(wú)實(shí)例的用戶(hù)手冊看起來(lái)就像是軟件界面的簡(jiǎn)單拷貝,對于用戶(hù)來(lái)說(shuō),實(shí)際上沒(méi)有什么幫助。

  印刷與包裝質(zhì)量:主要是檢查軟件文檔的商品化程度。有些用戶(hù)手冊是簡(jiǎn)單打印、裝訂而成,過(guò)于粗糙,不易于用戶(hù)保存。優(yōu)秀的文檔例如用戶(hù)手冊和技術(shù)白皮書(shū),應提供商品化包裝,并且印刷精美。

  32、功能測試用例需要詳細到什么程度才是合格的?

  這個(gè)問(wèn)題也是測試工程師經(jīng)常問(wèn)的問(wèn)題。有人主張測試用例詳細到每個(gè)步驟執行什么都要寫(xiě)出來(lái),目的是即使一個(gè)不了解系統的新手都可以按照測試用例來(lái)執行工作。主張這類(lèi)寫(xiě)法的人還可以舉出例子:歐美、日本等軟件外包文檔都是這樣做的。

  另外一種觀(guān)點(diǎn)就是主張寫(xiě)的粗些,類(lèi)似于編寫(xiě)測試大綱。主張這種觀(guān)點(diǎn)的人是因為軟件開(kāi)發(fā)需求管理不規范,變動(dòng)十分頻繁,因而不能按照歐美的高標準來(lái)編寫(xiě)測試用例。這樣的測試用例容易維護,可以讓測試執行人員有更大的發(fā)揮空間。

  實(shí)際上,軟件測試用例的詳細程度首先要以覆蓋到測試點(diǎn)為基本要求。舉個(gè)例子:“用戶(hù)登陸系統”的測試用例可以不寫(xiě)出具體的執行數據,但是至少要寫(xiě)出五種以上情況(),如果只用一句話(huà)覆蓋了這個(gè)功能是不合格的測試用例。覆蓋功能點(diǎn)不是指列出功能點(diǎn),而是要寫(xiě)出功能點(diǎn)的各個(gè)方面(如果組合情況較多時(shí)可以采用等價(jià)劃分)。

  另一個(gè)影響測試用例的就是組織的開(kāi)發(fā)能力和測試對象特點(diǎn)。如果開(kāi)發(fā)力量比較落后,編寫(xiě)較詳細的測試用例是不現實(shí)的,因為根本沒(méi)有那么大的資源投入,當然這種情況很隨著(zhù)團隊的發(fā)展而逐漸有所改善。測試對象特點(diǎn)重點(diǎn)是指測試對象在進(jìn)度、成本等方面的要求,如果進(jìn)度較緊張的情況下,是根本沒(méi)有時(shí)間寫(xiě)出高質(zhì)量的測試用例的,甚至有些時(shí)候測試工作只是一種輔助工作,因而不編寫(xiě)測試用例。

  因此,測試用例的編寫(xiě)要根據測試對象特點(diǎn)、團隊的執行能力等各個(gè)方面綜合起來(lái)決定編寫(xiě)策略。最后要注意的是測試人員一定不能抱怨,力爭在不斷提高測試用例編寫(xiě)水平的同時(shí),不斷地提高自身能力。

  33、配置和兼容性測試的區別是什么?

  配置測試的目的是保證軟件在其相關(guān)的硬件上能夠正常運行,而兼容性測試主要是測試軟件能否與不同的軟件正確協(xié)作。

  配置測試的核心內容就是使用各種硬件來(lái)測試軟件的運行情況,一般包括:

  (1)軟件在不同的主機上的運行情況,例如Dell和Apple;

  (2)軟件在不同的組件上的運行情況,例如開(kāi)發(fā)的撥號程序要測試在不同廠(chǎng)商生產(chǎn)的Modem上的運行情況;

  (3)不同的外設;

  (4)不同的接口;

  (5)不同的可選項,例如不同的內存大小;

  兼容性測試的核心內容:

  (1)測試軟件是否能在不同的操作系統平臺上兼容;

  (2)測試軟件是否能在同一操作系統平臺的不同版本上兼容;

  (3)軟件本身能否向前或者向后兼容;

  (4)測試軟件能否與其它相關(guān)的軟件兼容;

  (5)數據兼容性測試,主要是指數據能否共享;

  配置和兼容性測試通稱(chēng)對開(kāi)發(fā)系統類(lèi)軟件比較重要,例如驅動(dòng)程序、操作系統、數據庫管理系統等。具體進(jìn)行時(shí)仍然按照測試用例來(lái)執行。

  34、軟件文檔測試主要包含什么?

  隨著(zhù)軟件文檔系統日益龐大,文檔測試已經(jīng)成為軟件測試的重要內容。文檔測試對象主要如下:

  -包裝文字和圖形;

  -市場(chǎng)宣傳材料、廣告以及其它插頁(yè);

  -授權、注冊登記表;

  -最終用戶(hù)許可協(xié)議;

  -安裝和設置向導;

  -用戶(hù)手冊;

  -聯(lián)機幫助;

  -樣例、示范例子和模板;

  -……

  文檔測試的目的是提高易用性和可靠性,降低支持費用,因為用戶(hù)通過(guò)文檔就可以自己解決問(wèn)題。因文檔測試的檢查內容主要如下:

  -讀者對象――主要是文檔的內容是否能讓該級別的讀者理解;

  -術(shù)語(yǔ)――主要是檢查術(shù)語(yǔ)是否適合讀者;

  -內容和主題――檢查主題是否合適、是否丟失、格式是否規范等;

  -圖標和屏幕抓圖――檢查圖表的準確度和精確度;

  -樣例和示例――是否與軟件功能一致;

  -拼寫(xiě)和語(yǔ)法;

  -文檔的關(guān)聯(lián)性――是否與其它相關(guān)文檔的內容一致,例如與廣告信息是否一致;

  文檔測試是相當重要的一項測試工作,不但要給予充分的重視,更要要認真的完成,象做功能測試一樣來(lái)對待文檔測試。

  35、沒(méi)有產(chǎn)品說(shuō)明書(shū)和需求文檔地情況下能夠進(jìn)行黑盒測試嗎?

  這個(gè)問(wèn)題是國內測試工程師經(jīng)常遇到的問(wèn)題,根源就是國內軟件開(kāi)發(fā)文檔管理不規范,對變更的管理方法就更不合理了。實(shí)際上沒(méi)有任何文檔的時(shí)候,測試人員是能夠進(jìn)行黑盒測試的,這種測試方式我們可以稱(chēng)之為探索測試,具體做法就是測試工程師根據自己的專(zhuān)業(yè)技能、領(lǐng)域知識等不斷的深入了解測試對象、理解軟件功能,進(jìn)而發(fā)現缺陷。

  在這種做法基本上把軟件當成了產(chǎn)品說(shuō)明書(shū),測試過(guò)程中要和開(kāi)發(fā)人員不斷的進(jìn)行交流。尤其在作項目的時(shí)候,進(jìn)度壓力比較大,可以作為加急測試方案。最大的風(fēng)險是不知道有些特性是否被遺漏。

  36、測試中的“殺蟲(chóng)劑怪事”是指什么?

  “殺蟲(chóng)劑怪事”一詞由BorisBeizer在其編著(zhù)的《軟件測試技術(shù)》第二版中提出。用于描述測試人員對同一測試對象進(jìn)行的測試次數越多,發(fā)現的缺陷就會(huì )越來(lái)越少的現象。就像老用一種農藥,害蟲(chóng)就會(huì )有免疫力,農藥發(fā)揮不了效力。這種現象的根本原因就是測試人員對測試軟件過(guò)于熟悉,形成思維定勢。

  為了克服這種現象,測試人員需要不斷編寫(xiě)新的測試程序或者測試用例,對程序的不同部分進(jìn)行測試,以發(fā)現更多的缺陷。也可以引用新人來(lái)測試軟件,剛剛進(jìn)來(lái)的新手往往能發(fā)現一些意想不到的問(wèn)題。

  37、在配置測試中,如何判斷發(fā)現的缺陷是普通問(wèn)題還是特定的配置問(wèn)題?

  在進(jìn)行配置測試時(shí),測試工程師仍然會(huì )發(fā)現一些普通的缺陷,也就是與配置環(huán)境無(wú)關(guān)的缺陷。因此判斷新發(fā)現的問(wèn)題,需要在不同的配置中重新執行發(fā)現軟件缺陷的步驟,如果軟件缺陷不出現了,就可能是配置缺陷;如果在所有的配置中都出現,就可能是普通缺陷。

  需要注意的是,配置問(wèn)題可以在一大類(lèi)配置中出現。例如,撥號程序可能在所有的外置Modem中都存在問(wèn)題,而內置的Modem不會(huì )有任何問(wèn)題。

  38、為什么盡量不要讓時(shí)間有富裕的員工去做一些測試?

  表面上看這體現了管理的效率和靈活性,但實(shí)際上也體現了管理者對測試的輕視。測試和測試的人有很大關(guān)系。測試工作人員應該是勤奮并富有耐心,善于學(xué)習、思考和發(fā)現問(wèn)題,細心有條理,總結問(wèn)題,如果具備這樣的優(yōu)點(diǎn),做其它工作同樣也會(huì )很出色,因此這里還有一個(gè)要求,就是要喜歡測試這項工作。如果他是專(zhuān)職的,那么肯定更有經(jīng)驗和信心。國內的小伙子好象都喜歡做程序員,兩者工作性質(zhì)不同,待遇不同,地位不同,對自我實(shí)現的價(jià)值的認識也不同,這是行業(yè)的一個(gè)需要改善的問(wèn)題。如果只是為了完成任務(wù)而完成任務(wù),或者發(fā)現了幾個(gè)問(wèn)題就覺(jué)得滿(mǎn)意了,這在任何其它工作中都是不行的。

  39、完全測試程序是可能的嗎?

  軟件測試初學(xué)者可能認為拿到軟件后需要進(jìn)行完全測試,找到全部的軟件缺陷,使軟件“零缺陷”發(fā)布。實(shí)際上完全測試是不可能的。主要有以下一個(gè)原因:

  -完全測試比較耗時(shí),時(shí)間上不允許;

  -完全測試通常意味著(zhù)較多資源投入,這在現實(shí)中往往是行不通的;

  -輸入量太大,不能一一進(jìn)行測試;

  -輸出結果太多,只能分類(lèi)進(jìn)行驗證;

  -軟件實(shí)現途徑太多;

  -軟件產(chǎn)品說(shuō)明書(shū)沒(méi)有客觀(guān)標準,從不同的角度看,軟件缺陷的標準不同;

  因此測試的程度要根據實(shí)際情況確定。

  40、軟件測試的風(fēng)險主要體現在哪里?

  我們沒(méi)有對軟件進(jìn)行完全測試,實(shí)際就是選擇了風(fēng)險,因為缺陷極有可能存在沒(méi)有進(jìn)行測試的部分。舉個(gè)例子,程序員為了方便,在調試程序時(shí)會(huì )彈出一些提示信息框,而這些提示只在某種條件下會(huì )彈出,碰巧程序發(fā)布前這些代碼中的一些沒(méi)有被注釋掉。在測試時(shí)測試工程師又沒(méi)有對其進(jìn)行測試。如果客戶(hù)碰到它,這將是代價(jià)昂貴的缺陷,因為交付后才被客戶(hù)發(fā)現。

  因此,我們要盡可能的選擇最合適的測試量,把風(fēng)險降低到最小。

  41、發(fā)現的缺陷越多,說(shuō)明軟件缺陷越多嗎?

  這是一個(gè)比較常見(jiàn)的現象。測試工程師在沒(méi)有找到缺陷前會(huì )絞盡腦汁的思考,但是找到一個(gè)后,會(huì )接二連三的發(fā)現很多缺陷,頗有個(gè)人成就感。其中的原因主要如下:

  -代碼復用、拷貝代碼導致程序員容易犯相同的錯誤。類(lèi)的繼承導致所有的子類(lèi)會(huì )包含基類(lèi)的錯誤,反復拷貝同一代碼意味可能也復制了缺陷。

  -程序員比較勞累是可以導致某些連續編寫(xiě)的功能缺陷較多。程序員加班是一種司空見(jiàn)慣的現象,因此體力不只時(shí)容易編寫(xiě)一些缺陷較多的程序。而這些連續潛伏缺陷恰恰時(shí)測試工程師大顯身手的地方。

  “缺陷一個(gè)連著(zhù)一個(gè)”不是一個(gè)客觀(guān)規律,只是一個(gè)常見(jiàn)的現象。如果軟件編寫(xiě)的比較好,這種現象就不常見(jiàn)了。測試人員只要嚴肅認真的測試程序就可以了。

  42、所有的軟件缺陷都能修復嗎?所有的軟件缺陷都要修復嗎?

  從技術(shù)上講,所有的軟件缺陷都是能夠修復的,但是沒(méi)有必要修復所有的軟件缺陷。測試人員要做的是能夠正確判斷什么時(shí)候不能追求軟件的完美。對于整個(gè)項目團隊,要做的是對每一個(gè)軟件缺陷進(jìn)行取舍,根據風(fēng)險決定那些缺陷要修復。發(fā)生這種現象的主要原因如下:

  -沒(méi)有足夠的時(shí)間資源。在任何一個(gè)項目中,通常情況下開(kāi)發(fā)人員和測試人員都是不夠用的,而且在項目中沒(méi)有預算足夠的回歸測試時(shí)間,再加上修改缺陷可能引入新的缺陷,因此在交付期限的強大壓力下,必須放棄某些缺陷的修改。

  -有些缺陷只是特殊情況下出現,這種缺陷處于商業(yè)利益考慮,可以在以后升級中進(jìn)行修復。

  -不是缺陷的缺陷。我們經(jīng)常會(huì )碰到某些功能方面的問(wèn)題被當成缺陷來(lái)處理,這類(lèi)問(wèn)題可以以后有時(shí)間時(shí)考慮再處理。

  最后要說(shuō)的是,缺陷是否修改要由軟件測試人員、項目經(jīng)理、程序員共同討論來(lái)決定是否修復,不同角色的人員從不同的角度來(lái)思考,以做出正確的決定。

  43、軟件測試人員就是QA嗎?

  軟件測試人員的職責是盡可能早的找出軟件缺陷,確保得以修復。而質(zhì)量保證人員(QA)主要職責是創(chuàng )建或者制定標準和方法,提高促進(jìn)軟件開(kāi)發(fā)能力和減少軟件缺陷。測試人員的主要工作是測試,質(zhì)量保證人員日常工作重要內容是檢查與評審,測試工作也是測試保證人員的工作對象。

  軟件測試和質(zhì)量是相輔相成的關(guān)系,都是為了提高軟件質(zhì)量而工作。

  44、如何減少測試人員跳槽帶來(lái)的損失?

  在IT行業(yè)里跳槽已經(jīng)是一種司空見(jiàn)慣的現象,而且跳槽無(wú)論給公司還是給個(gè)人都會(huì )帶來(lái)一定的損失。測試隊伍也無(wú)疑會(huì )面臨跳槽的威脅,作為測試經(jīng)理管理者,只有從日常工作中開(kāi)始做起,最能最大限度的減少損失。建議我們從以下兩個(gè)方面做起:

  -加強部門(mén)內員工之間的互相學(xué)習,互相學(xué)習是建立學(xué)習型組織的基本要求,是知識互相轉移的過(guò)程。在此基礎上,可以把個(gè)人擁有的技術(shù)以知識的形式沉積下來(lái),也就完成了隱性知識到顯性知識的轉化。

  -通常情況下,企業(yè)能為員工提供足夠大的發(fā)展空間時(shí),如果不是待遇特別低,員工都不會(huì )主動(dòng)離開(kāi)企業(yè)。因此我們要想留住員工,管理者就應該把員工的個(gè)人成長(cháng)和企業(yè)的發(fā)展聯(lián)系起來(lái),為員工設定合理發(fā)展規劃并付諸實(shí)現。不過(guò)這項要求做起來(lái)比較,要有比較好的企業(yè)文化為依托。

  45、測試產(chǎn)品與測試項目的區別是什么?

  習慣上把開(kāi)發(fā)完成后進(jìn)行商業(yè)化、幾乎不進(jìn)行代碼修改就可以售給用戶(hù)使用的軟件成為軟件產(chǎn)品,也就是可以買(mǎi)“賣(mài)拷貝”的軟件,例如Windows2000。而通常把針對一個(gè)或者幾個(gè)特定的用戶(hù)而開(kāi)發(fā)的軟件成為軟件項目,軟件項目是一種個(gè)性化的產(chǎn)品,可以是按照用戶(hù)要求全部重新開(kāi)發(fā),也可以修改已有的軟件產(chǎn)品來(lái)滿(mǎn)足特定的用戶(hù)需求。項目和產(chǎn)品的不同特點(diǎn),決定我們測試產(chǎn)品和測試項目仍然會(huì )有很多不同的地方:

  -質(zhì)量要求不同。通常產(chǎn)品的質(zhì)量要高一些,修復發(fā)布后產(chǎn)品的缺陷成本較高,甚至會(huì )帶來(lái)很多負面的影響。而做項目通常面向某一用戶(hù),雖然質(zhì)量越高越好,但是一般只要滿(mǎn)足用戶(hù)要求就可以了。

  -測試資源投入多少不同。做軟件產(chǎn)品通常是研發(fā)中心來(lái)開(kāi)發(fā),進(jìn)度壓力要小些。同時(shí)由于質(zhì)量要求高,因此會(huì )投入較多的人力、物力資源。

  -項目最后要和用戶(hù)共同驗收測試,這是產(chǎn)品測試不具有的特點(diǎn)。

  此外,測試產(chǎn)品與測試項目在缺陷管理方面、測試策略制定都會(huì )有很大不同,測試管理者應該結合具體的環(huán)境,恰如其分的完成工作。

  46、和用戶(hù)共同測試(UAT測試)的注意點(diǎn)有哪些?

  軟件產(chǎn)品在投產(chǎn)前,通常都會(huì )進(jìn)行用戶(hù)驗收測試。如果用戶(hù)驗收測試沒(méi)有通過(guò),直接結果就是那不到“Money”,間接影響是損害了公司的形象,而后者的影響往往更嚴重。根據作者的經(jīng)驗,用戶(hù)驗收測試一定要讓用戶(hù)滿(mǎn)意。

  實(shí)際上用戶(hù)現場(chǎng)測試更趨于是一種演示。在不欺騙用戶(hù)的前提下,我們向用戶(hù)展示我們軟件的優(yōu)點(diǎn),最后讓“上帝”滿(mǎn)意并欣然掏出“銀子”才是我們的目標。因此用戶(hù)測試要注意下面的事項:

  (1)用戶(hù)現場(chǎng)測試不可能測試全部功能,因此要測試核心功能。這需要提前做好準備,這些核心功能一定要預先經(jīng)過(guò)測試,證明沒(méi)有問(wèn)題才可以和用戶(hù)共同進(jìn)行測試。測試核心模塊的目的是建立用戶(hù)對軟件的信心。當然如果這些模塊如果問(wèn)題較多,不應該進(jìn)行演示。

  (2)如果某些模塊確實(shí)有問(wèn)題,我們可以演示其它重要的業(yè)務(wù)功能模塊,必要時(shí)要向用戶(hù)做成合理的解釋。爭得時(shí)間后,及時(shí)修改缺陷來(lái)彌補。

  (3)永遠不能欺騙用戶(hù),蒙混過(guò)關(guān)。道理很簡(jiǎn)單,因為軟件是要給用戶(hù)用的,問(wèn)題早晚會(huì )暴露出來(lái),除非你可以馬上修改。

  和用戶(hù)進(jìn)行測試還要注意各種交流技巧,爭取不但短期利益得到了滿(mǎn)足,還要為后面得合作打好基礎。

  47、如何編寫(xiě)提交給用戶(hù)的測試報告?

  隨著(zhù)測試工作越來(lái)越受重視,開(kāi)發(fā)團隊向客戶(hù)提供測試文檔是不可避免的事情。很多人會(huì )問(wèn):“我們可以把工作中的測試報告提供給客戶(hù)嗎?”答案是否定的。因為提供內部測試報告,可能會(huì )讓客戶(hù)失去信心,甚至否定項目。

  測試報告一般分為內部測試報告和外部測試報告。內部報告是我們在測試工作中的項目文檔,反映了測試工作的實(shí)施情況,這里不過(guò)多討論,讀者可以參考相關(guān)教材。這里主要討論一下外部測試報告的寫(xiě)法,一般外部測試報告要滿(mǎn)足下面幾個(gè)要求:

  -根據內部測試報告進(jìn)行編寫(xiě),一般可以摘錄;

  -不可以向客戶(hù)報告嚴重缺陷,即使是已經(jīng)修改的缺陷,開(kāi)發(fā)中的缺陷也沒(méi)有必要讓客戶(hù)知道;

  -報告上可以列出一些缺陷,但必須是中級的缺陷,而且這些缺陷必須是修復的;

  -報告上面的內容盡量要真實(shí)可靠;

  -整個(gè)測試報告要仔細審閱,力爭不給項目帶來(lái)負面作用,尤其是性能測試報告。

  總之,外部測試報告要小心謹慎的編寫(xiě)。

  48、測試工具在測試工作中是什么地位?

  國內的很多測試工程師對測試工具相當迷戀,尤其是一些新手,甚至期望測試工具可以取代手工測試。測試工具在測試工作中起的是輔助作用,一般用來(lái)提高測試效率。自動(dòng)化測試彌補了手工測試的不足,減輕一定的工作量。實(shí)際上測試工具是無(wú)法替代大多數手工測試的,而一些諸如性能測試等自動(dòng)化測試也是手工所不能完成的。

  對于自動(dòng)測試技術(shù),應當依據軟件的不同情況來(lái)分別對待,一般自動(dòng)技術(shù)會(huì )應用在引起大量重復性工作的地方、系統的壓力點(diǎn)、以及任何適合使用程序解決大批量輸入數據的地方。然后再尋找合適的自動(dòng)測試工具,或者自己開(kāi)發(fā)測試程序。一定不要為了使用測試工具而使用。

  49、常見(jiàn)的測試用例設計方法都有哪些?請分別以具體的例子來(lái)說(shuō)明這些方法在測試用例設計工作中的應用。

  1-等價(jià)類(lèi)劃分

  常見(jiàn)的軟件測試面試題劃分等價(jià)類(lèi): 等價(jià)類(lèi)是指某個(gè)輸入域的子集合.在該子集合中,各個(gè)輸入數據對于揭露程序中的錯誤都是等效的.并合理地假定:測試某等價(jià)類(lèi)的代表值就等于對這一類(lèi)其它值的測試.因此,可以把全部輸入數據合理劃分為若干等價(jià)類(lèi),在每一個(gè)等價(jià)類(lèi)中取一個(gè)數據作為測試的輸入條件,就可以用少量代表性的測試數據.取得較好的測試結果.等價(jià)類(lèi)劃分可有兩種不同的情況:有效等價(jià)類(lèi)和無(wú)效等價(jià)類(lèi).

  2-邊界值分析法

  邊界值分析方法是對等價(jià)類(lèi)劃分方法的補充。測試工作經(jīng)驗告訴我,大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內部.因此針對各種邊界情況設計測試用例,可以查出更多的錯誤.

  使用邊界值分析方法設計測試用例,首先應確定邊界情況.通常輸入和輸出等價(jià)類(lèi)的邊界,就是應著(zhù)重測試的邊界情況.應當選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數據,而不是選取等價(jià)類(lèi)中的典型值或任意值作為測試數據.

  3-錯誤推測法

  基于經(jīng)驗和直覺(jué)推測程序中所有可能存在的各種錯誤, 從而有針對性的設計測試用例的方法.

  錯誤推測方法的基本思想: 列舉出程序中所有可能有的錯誤和容易發(fā)生錯誤的特殊情況,根據他們選擇測試用例-例如, 在單元測試時(shí)曾列出的許多在模塊中常見(jiàn)的錯誤-以前產(chǎn)品測試中曾經(jīng)發(fā)現的錯誤等, 這些就是經(jīng)驗的總結。還有, 輸入數據和輸出數據為0的情況。輸入表格為空格或輸入表格只有一行-這些都是容易發(fā)生錯誤的情況?蛇x擇這些情況下的例子作為測試用例.

  4-因果圖方法

  前面介紹的等價(jià)類(lèi)劃分方法和邊界值分析方法,都是著(zhù)重考慮輸入條件,但未考慮輸入條件之間的聯(lián)系, 相互組合等-考慮輸入條件之間的相互組合,可能會(huì )產(chǎn)生一些新的情況-但要檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價(jià)類(lèi),他們之間的組合情況也相當多-因此必須考慮采用一種適合于描述對于多種條件的組合,相應產(chǎn)生多個(gè)動(dòng)作的形式來(lái)考慮設計測試用例-這就需要利用因果圖(邏輯模型)-因果圖方法最終生成的就是判定表-它適合于檢查程序輸入條件的各種組合情況.

  5-正交表分析法

  有時(shí)候,可能因為大量的參數的組合而引起測試用例數量上的激增,同時(shí),這些測試用例并沒(méi)有明顯的優(yōu)先級上的差距,而測試人員又無(wú)法完成這么多數量的測試,就可以通過(guò)正交表來(lái)進(jìn)行縮減一些用例,從而達到盡量少的用例覆蓋盡量大的范圍的可能性。

  6-場(chǎng)景分析方法

  指根據用戶(hù)場(chǎng)景來(lái)模擬用戶(hù)的操作步驟,這個(gè)比較類(lèi)似因果圖,但是可能執行的深度和可行性更好。

  50、您認為做好測試用例設計工作的關(guān)鍵是什么?

  白盒測試用例設計的關(guān)鍵是以較少的用例覆蓋盡可能多的內部程序邏輯結果

  黑盒法用例設計的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測試,以最少的用例在合理的時(shí)間內發(fā)現最多的問(wèn)題


【qa面試問(wèn)題及答案】相關(guān)文章:

經(jīng)典面試的問(wèn)題及答案06-27

面試的經(jīng)典問(wèn)題及答案06-25

面試經(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

99久久精品免费看国产一区二区三区|baoyu135国产精品t|40分钟97精品国产最大网站|久久综合丝袜日本网|欧美videosdesexo肥婆