測試面試總結(三) 測試基礎知識相關

2021-10-08 08:52:08 字數 2726 閱讀 9693

1.常用的測試用例設計方法:

一般聽的比較多的是等價類劃分、邊界值分析法、錯誤推測法、因果圖法、判定表驅動分析法、正交實驗設計法、場景設計法等,但對大多數的軟體測試而言,綜合使用等價類劃分、邊界值分析和錯誤推測這三大類方法就足夠了。

等價類劃分:

學生資訊系統中有乙個考試成績的輸入項,成績的取值範圍是0-100之間的整數,考試成績及格的分數線是60。

設計用例:

有效等價類1::0-59之間的任意整數

有效等價類2:60~100之間的任意整數

無效等價類1:小於0的負數

無效等價類2:大於100的整數

無效等價類3:0-100之間的任何浮點數

無效等價類4:其它任何非數字字元

邊界值分析方法:

設計用例:

選取的邊界值應該包括:-1,0,1,59,60,61,99,100,101

錯誤推測法:

錯誤推測方法是指基於對被測試軟體系統設計的理解、過往經驗以及個人直覺,推測出軟體可能存在的缺陷,從而有針對性地設計測試用例的方法。這個方法強調的是對被測試軟體的需求理解以及設計實現的細節把握,當然還有個人的能力。

比如,web介面的gui功能測試,需要考慮瀏覽器在有快取和沒有快取下的表現;web serveice的api測試,需要考慮唄測api鎖依賴的第三方api出錯下的處理邏輯。

2.bug定位、分析、型別

bug一般存在以下三個模組:

1、前台介面,包括介面的顯示,相容性,資料提交的判斷,頁面的跳轉等等,這些bug基本都是一眼可見的,不太需要定位,當然也不排除一些特殊情況,本身資料傳過來的時候就有問題,所以顯示會出問題的情況。

2、後台程式,包括前台呼叫的介面,中間層快取和**資料,定時任務指令碼非同步處理資料,程式之間的相互呼叫等等,而這些bug往往都是不可見的,有可能在功能上體現,也有可能隱藏的深處不易發現,這時候就要通過一些輔助工具以及人工定位**去判斷了。

3、資料庫,包括表中缺少字段,字段定義錯誤,字段長度限制,資料重複等等,這些bug需要通過資料庫工具以及一些基本的資料庫查詢語句來定位,當然前提是要對每個表,每個字段甚至每乙個值代表什麼意思有一定的了解(一些常用的重要的表,字段,值就可以了)。比如sql server可以用sql profile追蹤sql語句,定位資料庫錯誤。

3.fiddler定位bug

fiddler 是我們在測試中常用的抓包工具。那我們一般使用fiddler 工具來抓取請求資訊來進行分析,一般有以下幾種情況:

第一種情況:fiddler 在沒有設定過過濾器的情況下面沒有抓到請求資訊,可能是前端頁面元素沒有繫結事件,也有可能是前端發生了js 錯誤,這就是前端的bug 。

第二種情況:若抓取到的請求返回的結果錯誤,我們要確認一下,是否是前端傳輸的資料是錯的,是的話就是前端的bug ,如果確定傳值是正確的話,那就是後端的bug 。

第三種情況:若抓取到的請求返回值中間的http 的狀態碼是500的話,說明是後端伺服器一般的內部錯誤,那這就是後端的bug 。

4.測試計畫、測試策略、測試方案的區別

測試計畫要包括:測試範圍、測試策略、測試資源、測試進度和測試風險評估這五大方面,並且每一部分都要給出應對可能出現問題的解決辦法。

總結:測試範圍需要明確「測什麼」和「不測什麼」;測試策略需要明確「先測什麼後測什麼」和「如何來測」;測試資源需要明確「誰來測」和「在**測」;測試進度是需要明確各類測試的開始時間,所需工作量和預計完成時間;測試風險評估是需要明確如何有效應對各種潛在的變化。

5.說一下你對軟體測試的深刻心得。

6.如果編寫bug,提交的bug包括哪些內容?

缺陷概述:是缺陷標題的細化,清晰簡潔地描述缺陷,使開發工程師能夠聚焦缺陷的本質。

環境版本:為缺陷的重現提供必要的版本資訊。

重現步驟:

[前置條件]:測試步驟開始前系統應該處在的狀態,其目的是減少缺陷重現步驟的描述。

[缺陷重現步驟]:操作步驟通常是從使用者角度出發來描述的,每個步驟都應該是可操作並且是連貫的。 [期望結果]:來自對需求的理解

[實際結果]:來自於測試執行的結果

優先順序和嚴重程度:依據bug的影響和該模組使用者使用的頻率,綜合考慮制定bug的嚴重程度,通常定義三種級別:low(低階)、major(主要)、critical(嚴重)

bug原因分析:可選,如果在發現缺陷的同時,定位出問題的根原因,清楚地描述缺陷產生的原因並反饋給開發工程師,那麼開發工程師修復缺陷的效率就會大幅提公升,而且你的技術影響力也會被開發認可。

附件:介面截圖、測試用例日誌、伺服器日誌等

指派給(開發):負責該問題修復的開發,或者指派給該項目的開發負責人再有其指派。

7.bug的狀態:

8.測試報告應該包括哪些內容:9.什麼是冒煙測試?

冒煙測試是在軟體開發過程中的一種針對軟體版本包的快速基本功能驗證策略,是對軟體基本功能進行確認驗證的手段,並非對軟體版本包的深入測試,一般都是最基礎的一些功能,如果能做到自動化,可以整合到持續整合中,版本構建結束後,立即去執行冒煙測試,根據持續整合以及冒煙指令碼的執行結果,判斷版本是不是可用,是不是繼續開展測試。

軟體測試基礎知識總結

1.軟體測試的生命週期 需求分析 測試計畫 測試設計 測試開發 測試執行 測試評估 2.軟體的生命週期 需求分析 計畫 設計 編碼 測試 執行維護 3.開發模型和測試模型 傳統的開發模型和敏捷的區別 十二宣言 個體與互動重於過程和工具 強調人與人之間的溝通 可用的軟體重於完備的文件 輕文件 對文件的...

軟體測試基礎知識總結

1 軟體測試階段有哪些任務 制定測試大綱 測試計畫 製作測試資料 測試方案 單元測試 程式測試,一般由開發人員進行 功能測試 效能測試 整合測試 子系統測試 系統測試 驗收測試 測試報告及向下階段提交系統執行 維護使用者手冊 2 自動化測試 概念 為了提高工作效率,節省人力和成本,把人為驅動的測試轉...

測試基礎知識

一 系統測試 系統測試最容易被錯誤理解,也是最困難的測試過程。系統測試並非是測試整個系統或程式功能的過程,因為有了功能測試,這樣會顯得多餘。該定義隱含了2方面含義 a 系統測試並不侷限於系統。如果產品是一程式,那麼系統測試就是乙個試圖說明程式作為乙個整體是如何不滿足其目標的過程 b 根據定義,如果產...