端到端測(cè)試
可以說最有價(jià)值的測(cè)試是端到端 (E2E) 測(cè)試。E2E 測(cè)試模擬整個(gè)軟件產(chǎn)品堆棧中的用戶級(jí)體驗(yàn)。E2E 測(cè)試計(jì)劃通常涵蓋用戶級(jí)別的故事,例如:“用戶可以登錄”“用戶可以存款”“用戶可以更改電子郵件設(shè)置”。這些測(cè)試對(duì)于實(shí)施非常有價(jià)值,因?yàn)樗鼈兛梢员WC真實(shí)用戶擁有流暢的無錯(cuò)誤體驗(yàn),即使在推送新提交時(shí)也是如此。
E2E 測(cè)試工具捕獲并重放用戶操作,因此 E2E 測(cè)試計(jì)劃隨后成為關(guān)鍵用戶體驗(yàn)流程的記錄。如果軟件產(chǎn)品缺乏任何類型的自動(dòng)化測(cè)試覆蓋率,那么通過對(duì)最關(guān)鍵的業(yè)務(wù)流實(shí)施端到端測(cè)試,它將獲得最大的價(jià)值。E2E 測(cè)試在捕獲和記錄用戶流序列之前可能會(huì)很昂貴。如果軟件產(chǎn)品沒有進(jìn)行快速的每日發(fā)布,那么讓人工團(tuán)隊(duì)通過 E2E 測(cè)試計(jì)劃手動(dòng)執(zhí)行會(huì)更經(jīng)濟(jì)。
單元測(cè)試
顧名思義,單元測(cè)試涵蓋單個(gè)代碼單元。代碼單元最好在函數(shù)定義中度量。單元測(cè)試將涵蓋單個(gè)功能。單元測(cè)試將斷言函數(shù)的預(yù)期輸入與預(yù)期輸出匹配。具有敏感計(jì)算的代碼(因?yàn)樗赡芘c金融、醫(yī)療保健或航空航天有關(guān))最好由單元測(cè)試覆蓋。單元測(cè)試成本低、實(shí)施速度快,并提供高投資回報(bào)。
集成測(cè)試
很多時(shí)候,一個(gè)代碼單元會(huì)對(duì)第三方服務(wù)進(jìn)行外部調(diào)用。正在測(cè)試的主要代碼庫(kù)將無法訪問此 3rd 方實(shí)用程序的代碼。集成測(cè)試處理模擬這些 3rd 方依賴項(xiàng)并斷言與它們交互的代碼按預(yù)期運(yùn)行。
集成測(cè)試在編寫方式和工具方面類似于單元測(cè)試。集成測(cè)試可以作為 E2E 測(cè)試的廉價(jià)替代方案,但是,當(dāng)單元測(cè)試和 E2E 的組合已經(jīng)到位時(shí),投資回報(bào)是有爭(zhēng)議的。
性能測(cè)試
在軟件開發(fā)的上下文中使用時(shí),“性能”用于描述軟件項(xiàng)目反應(yīng)的速度和響應(yīng)能力。性能指標(biāo)的一些示例是:“頁(yè)面加載時(shí)間”、“首次呈現(xiàn)時(shí)間”、“搜索結(jié)果響應(yīng)時(shí)間”。軟件性能測(cè)試為這些示例案例創(chuàng)建測(cè)量和斷言。自動(dòng)化性能測(cè)試將跨這些指標(biāo)運(yùn)行測(cè)試用例,然后提醒團(tuán)隊(duì)注意任何回歸或速度損失。