什麼是探索性測試?

來源:互聯網
上載者:User

標籤:blog   http   使用   for   2014   問題   時間   設計   

1、探索性測試的定義

探索性測試(ET)是敏捷世界裡的一種重要測試方法,作為一個研究性的工具,它是使用者故事測試和自動化迴歸集的重要補充。它是一種經過深思熟慮的測試方式,沒有測試指令碼,可以使你的測試超出各種明顯已經測試過的情境。探勘測試將學習,測試設計和測試執行整合在一起,形成一種測試方法。

探索性測試的最大特色是在對測試對象進行測試的同時學習測試對象並設計測試,在測試過程中運用獲得的關於測試對象的資訊設計新的更好的測試。他的典型過程如:

這相對於傳統軟體測試過程中嚴格的“先設計,後執行”來說,是具有很大區別的。

 

2、探索性測試的基本過程

探索性測試的基本過程包括如下:

        識別軟體系統的目的;

        識別軟體系統提供的功能;

        識別軟體系統潛在的不穩定的地區;

        在探索軟體系統的過程中記錄關於軟體的訊息和問題;

        建立一個測試綱要,使用它來執行測試。

注意:上面的過程是一個迴圈的過程,並且沒有很嚴格的執行順序,完全能夠先建立測試綱要,執行測試,然後在測試中進修軟體系統;也能夠先探索軟體系統的各個地區,然後再列出需要測試的要點。

探索性測試強調創新的測試思維,在測試過程中不斷地出現許多關於測試的新想法,

因而就像一把叉,就是一個所謂的“探索叉”(exploratory forks)。

探索性測試強調測試過程中要有更多的發散思維,這也是與保守測試方式的最大區別。

保守測試方式強調設想完善的測試案例,測試人員嚴格按測試案例執行測試,這多少限制了測試人員的測試思維,測試人員往往缺乏主觀能動性。

 

展示了一個發散思維的過程,探索性測試強調發散,但並不是盲目地發散,在適當的時候還要收斂回來。

例如,當發覺在一個測試的分支路徑上已經花了很長時間也沒有找到問題的答案時,則能夠考慮先放棄那個地區的探索,因為還有一個主線的測試工作。

探索性測試尤其適合於那些需求不是很明確的測試工作,或者是一名剛剛接手一項新的測試工作的測試人員使用。

3、探索性測試的價值

     3.1、探索性測試可以用來找到深層次的BUG。

     因為探索性測試人員是優秀的觀察者,他們觀察不正常和不期望的結果,並進行認真的思考,這種狀態和按部就班的執行用例是不一樣的,因此,它更容易發現一些隱藏的很深的問題。

     3.2、探索性測試可以加深測試人員對被測系統的瞭解。

     探索性測試強調對被測試對象的學習,並且是在測試過程中的學習,並在此基礎上設計測試,因此,它使測試人員更容易深入的理解被測系統。

4、探索性測試的誤區

     4.1、不要將探索性測試和隨機測試混淆。

     探索性測試不是在鍵盤前坐下並敲擊,沒有熟練技能,不會認真思考的“黑盒”測試人員所做的並不是探索性測試,一個合格的探索性測試人員需要認真思考和分析結果,並且在探勘測試的過程中做記錄。

     4.2、不要將探索性測試和迴歸測試混淆。

     探索性測試更注重的是思考和學習,不斷髮現新的問題,而版本的迴歸測試,是對原有的功能的保證,為持續迭代構築安全網。重複的功能迴歸測試應該盡量用自動化的方式來完成,這樣,才有足夠的人力來進行探索性測試。

     4.3、探索性測試不能用來評估軟體品質。

     儘管探索性測試是一種有效測試方法,但是它不意味著是一種全面覆蓋的測試方法。如果你要評估測試是否全面,可能你需要其他的手段。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.