歡迎來到培訓無憂網(wǎng)!

全國切換

咨詢熱線 400-001-5729

位置:培訓無憂網(wǎng) > 新聞資訊 > 電腦/IT > 軟件測試 >  軟件測試的底層邏輯是什么

軟件測試的底層邏輯是什么

來源:www.elsolbar.com 發(fā)布人:彭二胖

2021-12-30 21:36:19|已瀏覽:260次

什么是底層邏輯?

按照劉潤老師的解釋就是:

“事物間的共同點,就是底層邏輯。

只有不同之中的相同之處、變化背后不變的東西,才是底層邏輯。

...... 

底層邏輯+環(huán)境變量 = 方法論”

他還說:“只有底層邏輯,才是有生命力的。”

所以我們要來探討一下:軟件測試的底層邏輯是什么?

對軟件測試的基本認知

對軟件測試的基本認知,使我們達成共識,從而基于這個共識,更容易去討論軟件測試的底層邏輯。對軟件測試的基本認知,需要精簡到一句話來描述,即抓住軟件測試的本質(zhì),以簡潔的方式描述正確的軟件測試價值觀,但不是某個人的軟件測試價值觀,而是能被大多數(shù)人接受的軟件測試價值觀。

根據(jù)這些對軟件測試的認知,用一句話來說明軟件測試的基本認知,那就是:基于對用戶真實需求的理解,通過各種手段獲得軟件產(chǎn)品真實的、全方位的質(zhì)量信息。無論是驗證軟件功能特性是否滿足需求、評估產(chǎn)品的質(zhì)量還是揭示產(chǎn)品的質(zhì)量風險,都是基于獲得的有關產(chǎn)品的真實的質(zhì)量信息做出判斷的,而缺陷可以看做是這個活動過程中的副產(chǎn)品。這里強調(diào)對用戶真實需求的理解,一方面體現(xiàn)“沒有用戶就沒有質(zhì)量,質(zhì)量相對用戶而存在”,我們必須從用戶角度出發(fā)來完成測試,另方面是用戶的真實需求,而不是虛假的、錯誤的需求,業(yè)務的需求最終要分解成用戶角色的需求,而系統(tǒng)的功能/非功能性需求也是為了滿足用戶的需求。
這里提到的“軟件產(chǎn)品”不局限于程序,還包括數(shù)據(jù)、需求文檔、設計文檔、代碼、用戶手冊、技術手冊等。
了解了“什么是軟件測試”之后,下面就可以討論軟件測試的底層邏輯。

測試流程的底層邏輯

測試流程符合一般工程項目流程,經(jīng)過分析、計劃、設計、實施和評估的過程,任何一個環(huán)節(jié)不可缺失,每一個環(huán)節(jié)都重要,但前面的環(huán)節(jié)會影響后面的環(huán)節(jié),所以越在前面的環(huán)節(jié)越重要。測試分析是基礎,依次是設計、實施和評估,構成一個金字塔模型。

測試流程的另一個底層邏輯:形成閉環(huán)。如果經(jīng)過評估,發(fā)現(xiàn)測試過程有問題,需要重新分析、修改計劃、修改設計......再經(jīng)過一個完整的過程,構成一個新的閉環(huán)。從測試流程改進來看,也需要構成PDCA那樣的閉環(huán)。從今天DevOps的角度看,測試是為了讓用戶更滿意,但同時要進行用戶調(diào)查,收集用戶反饋,構成閉環(huán),如我16年前所畫的閉環(huán)。

從缺陷帶來的成本來看,測試進行的越早越好,因為劣質(zhì)成本是指數(shù)級增長。

概括起來:測試是貫穿整個研發(fā)周期,形成閉環(huán),并持續(xù)改進。

測試分析的底層邏輯測試分析的底層邏輯是基于系統(tǒng)思維、結構化思維去思考,需要從項目背景、產(chǎn)品結構、質(zhì)量要求等各個方面進行系統(tǒng)地思考,不容忽視一些蛛絲馬跡,順藤摸瓜,完整地呈現(xiàn)測試范圍,識別出各種測試風險,最終明確測試項及其優(yōu)先級。系統(tǒng)思維可以讓我們看清楚被測對象的輸入/輸出、前置條件和后置條件、周圍環(huán)境和面臨的各種場景。

結構化思維幫助我們制定更有效的測試方案和測試策略,如分層測試、面向接口的測試等。同時,測試總是有風險的,所以測試分析時一定要采用基于風險的測試策略,并應用80/20原則,確定20%最嚴重的風險集中在什么地方、哪些功能是用戶最常用的20%功能、哪些測試項是屬于重點測試的20%等。

測試分析的底層邏輯之一:測試分析是層層剝離、逐步深入的系統(tǒng)分析過程。從業(yè)務需求、用戶行為、系統(tǒng)功能、應用場景等不同維度對被測對象進行系統(tǒng)的分析,最終確定測什么。測試分析的底層邏輯之二:測試分析也是一個博弈、選擇直至平衡的過程,需要定力和洞察力,做出取舍,如運用80/20原則,抓主要風險,有時需要舍棄一些次要風險。測試分析的底層邏輯之三:以終為始,從測試目標出發(fā)最終回到測試目標,如從考慮如何衡量測試充分性的要求出發(fā),最終分析的結果——各測試項完成是能夠滿足測試充分性的要求的。

 測試設計的底層邏輯

測試設計是基于測試分析的結果,運用合適的方法完成測試數(shù)據(jù)、測試場景或測試用例的設計。按照工程思維的方式,解決方案不只一個,要設計多個方案,從中選出更優(yōu)或最優(yōu)的方案。

測試設計的本質(zhì)是以更有效的方式覆蓋測試需求,從場景覆蓋、邏輯覆蓋、路徑覆蓋和數(shù)據(jù)覆蓋等不同覆蓋策略中選擇一種或幾種。測試設計也是一個循序漸進的過程,不斷完善的過程。

測試設計是辯證統(tǒng)一的思維過程,既有嚴密的邏輯思維,也有跳躍式、發(fā)散性的創(chuàng)造性思維;既是黑盒測試方法和白盒測試方法的對立統(tǒng)一、靜態(tài)測試和動態(tài)測試的融合,也是主動測試和被動測試的融合......只有這樣才能更徹底地滿足設計要求,更快地完成測試以實現(xiàn)測試目標。

測試設計的底層邏輯:測試設計是藝術,更要創(chuàng)新、融合。

測試自動化的底層邏輯

測試自動化就是要充分發(fā)揮工具的作用或價值,例如工具能百分之百地執(zhí)行命令、任勞任怨,所以自動化測試適合機械、單調(diào)的測試工作,如回歸測試、性能負載測試、壓力測試、兼容性測試、BVT(版本構建驗證測試)等。

測試自動化的腳本開發(fā)和執(zhí)行是建立在測試分析和設計之上,如果測試分析和設計存在問題,依靠工具是無法解決這類問題的。有更好的測試分析和設計,才有更好的自動化測試,所以我們清楚測試分析/設計與自動化測試的關系顯得非常重要。

工具的開發(fā)和使用、腳本的開發(fā)和使用都是由人完成的,所以人還是第一位的,工具是第二位的。測試自動化還受到文化、流程的影響,測試自動化能否成功不是一個技術問題,今天來看,技術上已經(jīng)沒有障礙了,障礙往往出現(xiàn)在企業(yè)的文化、研發(fā)流程和開發(fā)質(zhì)量(如軟件實現(xiàn)的規(guī)范性、可測試性等)等方面。

測試人員的底層邏輯最后談談測試人員的底層邏輯。測試人員是否有價值,不取決于他/她目前的工作態(tài)度、知識與技能,而是取決于態(tài)度、知識與技能的進步速度,因為我們無法改變過去,但可以改變未來。只要持續(xù)學習、持續(xù)反思,就能快速完成自己的進化,快速成長起來,就沒有人能擋得住你的壯麗前程。
    如果我們掌握了軟件測試的底層邏輯,只有探尋到萬變中的不變,才能動態(tài)地、持續(xù)地看清軟件測試的本質(zhì)?辞遘浖䴗y試的底牌,我們就能始終如魚得水。
    本文由培訓無憂網(wǎng)長沙牛耳教育課程顧問老師整理發(fā)布,希望能夠?qū)ο雲(yún)⒓娱L沙軟件測試培訓的學生有所幫助。更多軟件測試培訓課程信息可關注培訓無憂網(wǎng)電腦IT培訓或添加老師微信:15033336050

 




      注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://www.elsolbar.com/news-id-11363.html 違者必究!部分文章來源于網(wǎng)絡由培訓無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實性請自行核實或聯(lián)系我們,了解更多相關資訊請關注軟件測試頻道查看更多,了解相關專業(yè)課程信息您可在線咨詢也可免費申請試課。關注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!
  • 姓名:

  • 手機:

  • 地區(qū):

  • 想學什么:

  • 培訓無憂網(wǎng)
免 費 申 請 試 聽
提交申請,《培訓無憂網(wǎng)》課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!