5.6 智能化測試 在介紹智能化測試之前,我們先了解一下“智能”的概念。這里所說的“智能”指人工智能(Artificial Intelligence,AI),這是一種通過普通的計算機程序呈現人類智能的技術。美國麻省理工學院的溫斯頓教授把人工智能定義為研究...
5.5 測試平臺化 DevOps加速了端到端的交付速度,這推動了持續測試的發展。如果要推行持續測試,那么自動化測試會是必要的技術方案之一,但是自動化測試對測試人員、團隊技術成熟度都有著非常高的要求。測試平臺化就是解決自動化測試技術門檻和...
5.4 精準測試 前面已經介紹了黑盒測試和白盒測試。從前面的介紹中可以知道,黑盒測試是一種面向業務流程的測試,針對需求設計測試用例,在運行的系統上執行測試用例,完成測試。整個測試過程中測試工程師對于測試代碼是如何運行的一無所知,只...
5.3 測試代碼生成 測試代碼的開發速度跟不上制品檢測需求增加的速度的問題日益明顯,因此測試工程師開始全力解決該問題,不斷地探索測試腳本生產方法就是其中一個方法! 5.3.1 基于二進制文件的測試代碼生成 在接口測試過程中,絕...
5.2 流量錄制技術 流量錄制技術近年來被越來越多地提及。前面章節介紹測試右移時,提到過測試右移的一種測試方式就是全鏈路壓測,而全鏈路壓測的一個關鍵技術點就是流量錄制技術。流量錄制技術和錄制回放是相互依存的關系,錄制回放是為了解決...
第5章 測試技術和持續測試 持續測試能夠推動快速反饋,從而避免測試工程師提出一個缺陷,開發工程師就要翻出幾周前開發的代碼,重新整理思路再修復對應的缺陷。此外,每次完成測試后,系統的干系人希望能夠確認測試是一個充分并且合適的測試,...
3.4 混沌工程和故障演練 混沌工程是近年來新出現的概念,主要用于穩定性方面的研究,英文全稱為chaos engineering,由網飛公司最先提出。因為最開始混沌工程稱作chaos monkey,形容就像有一只猴子在系統中搗亂一樣,以至于到現在每次提到混沌...
3.3 兼容性測試矩陣 兼容性測試主要對被測系統運行所依賴的各種軟硬件進行組合,然后進行主流程或者約定檢測流程的功能走查。兼容性測試的重點在測試設計階段,兼容性測試設計的主要工作是首先統計兼容性測試因素,然后設計兼容矩陣,最后按照...
3.2 全鏈路壓測 相對于全鏈路壓測而言,本書前面介紹的測試應該稱作單點單鏈路性能測試。也就是說,之前講解的性能測試中,每一個性能測試都是針對某一個業務場景的單鏈路測試,測試過程的所有并發用戶都使用一個業務流入口,而全鏈路壓測會涉...
3.1.5 性能測試實踐方案 當測試工程師接到一個系統需要性能測試的需求時,一般情況下需求描述只有一句話,很少會有具體可供利用的信息,如系統要承載的并發用戶數、系統支持的TPS等。而要開始性能測試,需要的輸入卻遠遠多于這些信息。在開始...
3.1.4 監控工具和結果分享分析 質量特性中性能效率是性能測試的主要保障特性之一,在性能效率特性下的子特性包含時間特性、資源利用特性等。用性能測試可以驗證并發性。怎么驗證時間特性、資源利用特性等質量特性呢?性能測試需要以一整套測試...
部分選項的作用如下! --master用于以主服務模式啟動Locust! --master-bind-host用于為主服務指定IP地址(可選,默認為127.0.0.1)! --master-bind-port用于為主服務設置固定的端口(可選,默認為端口5557)。Locust在啟動后會使用兩個端口...
在性能測試過程中,運行界面的頂部除顯示Locust的Logo之外,還顯示被測系統的根地址、虛擬用戶的運行狀態、RPS(每秒請求數)和實時的失敗率。右上角的兩個按鈕分別用于停止測試和重置統計數據,如圖3-7所示。圖3-7 運行界面中右上角的兩個按鈕 ...
3.1.3 使用Locust完成性能測試 上面講了這么多Locust的優點,那么如何開始使用Locust呢?首先要保證個人計算機上已安裝3.x系列的某個Python版本并且已經配置好,然后通過代碼清單3-2所示的命令安裝Locust。代碼清單3-2 Locust提供了很多開...
3.1.2 Locust和LoadRunner LoadRunner是性能測試領域的標志性工具。LoadRunner以模擬上千萬用戶實施并發負載并進行實時性能監測的方式確認和查找問題,因而能夠對整個軟件架構進行測試。LoadRunner還能最大限度地縮短測試時間、優化性能并縮短...
第3章 持續測試中的非功能測試 持續測試是一種測試實踐,它包含了涉及全部質量特性的測試活動。因此,持續測試也包含非功能測試。眾所周知,軟件質量特性包含功能性、可靠性、可用性、效率等,前面已經介紹了一些功能性在持續測試中的落地方法...
2.7 測試驅動開發 測試技術已經進入了一個快速發展的時期,各種理論、方法和實踐結果層出不窮,這只能說明這個行業正處在高速發展期,在長期的探索中擁有大量的工程實踐。測試驅動開發(Test Driven Development,TDD)在DevOps的推動之下也有...
2.6.2 接口自動化測試的價值 從金字塔模型到橄欖球模型的轉變就是為了彌補單元測試的不足,隨著測試工程師不斷地加大在接口自動化測試上的投入,接口自動化測試逐漸劃分成單接口測試和業務場景測試! 谓涌跍y試不斷地擴大檢測范圍,既保證...
2.6 接口測試和接口自動化測試 接口測試不像UI自動化測試那樣具有一些代表性的測試開發框架,當提到接口測試時,我們首先想到的應該是一些測試工具,如Postman、Fiddler、Charles等! 2.6.1 接口測試 要弄清楚利用接口測試工具完...
2.5 UI自動化新思路 UI自動化測試在很多時候既是測試工程師的技術門檻,又是測試工程實踐的“雞肋”,為什么這么說呢? 首先,現在各大互聯網公司對測試工程師的要求都包含UI自動化測試的內容,無論是Web UI自動化測試還是App UI自動化測試...