探索式測試學習筆記(1)

2021-08-20 18:23:30 字數 2310 閱讀 9113

什麼是探索式測試?

探索式測試(exploratory testing)是一種自由的軟體測試風格,強調測試人員同時展開測試學習、測試設計、測試執行和測試結果評估等活動,以持續優化測試工作。

測試專家cem kaner博士在2023年提出的。

測試需要探索,而探索需要大量的思考。積極思考的探索式測試是具有挑戰性的智力過程,常常需要在不確定的順序反覆實施鑽研、嘗試、迂迴、調整、評估等活動。好的探索式測試不會使測試更簡單,但是它會使測試更有效,從而在測試速度和缺陷發現上獲得更多的匯報。

測試思維模式?

在實際測試執行中,你是否遇到過如下幾個問題:

測試人員按照乙個測試用例來執行測試,得到的程式的輸出和預期輸出不一致;

測試人員判斷程式的行為並不是缺陷,但根據新的輸出想到了新的測試思路;

測試人員根據新的測試思路採用不同的輸入並檢查程式輸出;

測試人員再次根據新的測試結果選擇新的輸入,反覆的探索下去,最終發現了乙個程式缺陷;

測試人員發現該缺陷的測試思路或測試用例並沒有出現在最初的測試設計或測試用例文件中。

這種現象非常正常,由於我們還沒有真正深入地了解產品,不可能在測試設計的時候想到所有測試場景,且在需求分析階段不可能評審到所有的隱含需求,所以最初測試設計並不能撲獲程式的所有缺陷。為了發現盡可能多的缺陷,測試人員需要在測試過程中,根據測試反饋持續地優化測試模式、調整測試設計。這樣的思維將有助於測試人員更有效地測試、提高測試水平。

在測試過程中,測試人員可能遇到令人困惑的問題。這時,他可以考慮用一下方法來解除疑惑。

1)簡化自己的測試思路。

2)保留測試現場並尋求幫助。

3)不斷重複執行自己的操作。

4)返回到乙個已確認過的狀態。

5)一次只考慮乙個因素,一次只修改乙個因素。

6)做出精確的觀察。

在探索式測試過程中,測試人員的下乙個測試思路往往是不可預知的。在和大程度上,下乙個思路取決於本次測試用例執**況。有時,測試人員需要自問:是沿當前測試思路繼續挖掘,還是更換思路?這是,可以參考「陷入與退出」策略:面對複雜的產品,先深入研究30分鐘或1小時,然後停下來做些別的工作。經過幾輪的陷入與退出,就會開始理解產品的模式和輪廓,並在頭腦中形成更系統、更具體的測試和研究策略。

功能測試的三個層次:

功能測試模型分成三個層次:

第一層是功能測試模型:基本功能測試。

第二層是線下缺陷模式:網際網路測試模型。

第三層是線上故障模型:

網際網路測試模型: 多執行緒併發模型、時間邊界模型、搜尋查詢異常模型、資料庫校驗模型。

1、多執行緒併發模型:

1)多執行緒建立、更新、刪除某類資料,以多執行緒方式來運算元據並檢查資料的完整性。

2)同時使用多個瀏覽器或乙個瀏覽器的多個標籤頁進行測試,考慮cookie 值得變化是否影響後續的操作,或使用場景探索模型多個角度地檢查頁面資訊和資料庫資料的正確性。

2、時間邊界模型

1)在測試底層系統時,需要考慮時間對產品的影響,特別是通訊時間差,另外還要考慮在業務資料計算過程中年月日的邊界情況、特殊年份等。

2)通過修改客戶端或伺服器時間來校驗帶有時間和日期限制的功能,或考慮手機和後台伺服器的時間差。

3、搜尋查詢異常模型

1)進行搜尋或查詢測試時,多考慮特殊字元查詢,如空格、帶字母、特殊字元;

2)由於資料量小,在測試環境下搜尋查詢不會出現嚴重超時的問題,在預發布測試的時候,注意一些搜尋條件可能導致在大量資料量情況下的超時問題;

3)對於搜尋功能,檢視搜尋查詢傳入的引數的正確性和完整性,以及和搜尋結果的對應關係系;

4)在使用某些查詢或搜尋功能時,查詢項中存在資料獲取,在查詢乙個不存在的任何記錄的情況後,再次檢視該查詢項的資料獲取是否正確,考慮頁面快取,同樣也要考慮搜尋結果中含有邊界屬性的情況。

4、資料庫校驗模型

1)對於資料庫中的鍵或關鍵字段的資料型別進行最小、最大邊界值得校驗,對於業務計算中的浮點數或浮點數進製進行更精確的校驗。針對關鍵字段,多次插入或更新資料,來校驗字段唯一性約束。

2)在資料庫設計中,對於同乙個欄位在不同的表中的屬性是否相同進行校驗,重點檢查「是否為空」和「限制性」這兩個屬性。

3)在資料庫設計中,測試分庫分表策略的操作,重點測試同樣的更新操作對所有的表是否可以成功執行,還要特別留意多執行緒併發的情況。

文章未完。

探索式測試學習筆記之二 全域性探索式測試法

我們知道探索式測試的目標是 1 找出缺陷 2 強迫軟體展現其能力 3 證明軟體實現了哪些功能 whittaker又把全域性探索式測試叫做漫遊測試,把我們測試物件,比喻成我們將要旅遊 的乙個城市。根據我們要訪問城市各區域的目的,把城市各區域有分為 商業區,歷史區,娛樂區,旅遊區,旅館區和破舊區。相應的...

讀書筆記 探索式測試 混合探索式測試

1.講述使用者故事 2.描述需求 3.演示產品功能 4.演示整合場景 5.描述設定和安裝 6.描述警告和出錯情況 1.通過場景操作引入變化 操作後得到的新場景稱為衍生場景。刪除步驟 替換步驟 重複步驟 替換資料 替換環境 替換硬體 替換容器 瀏覽器相容性 替換版本 修改本地設定 cookie 登錄檔...

讀書筆記 探索式測試 區域性探索式測試法

輸入 由環境產生的一種刺激,該刺激導致被測試的應用程式有所響應。原子輸入和抽象輸入 簡單到不能再簡單的是原子輸入,由於數量過大,可以抽象。如何從一堆原子輸入中找到最佳的子集 輸入之間會相互影響從而造成軟體失效。分別輸入沒問題,組合使用有問題。輸入值的先後順序也會導致問題。同等的對待兩個或兩個以上的原...