一、性能測試?yán)碚撝R
1、常用的七種性能測試方法
(1) 后端性能測試:其實(shí),你平時聽到的性能測試,大多數(shù)情況下指的是后端性能測試,也就是服務(wù)器端性能測試。后端性能測試,是通過性能測試工具模擬大量的并發(fā)用戶請求,然后獲取系統(tǒng)性能的各項(xiàng)指標(biāo),并且驗(yàn)證各項(xiàng)指標(biāo)是否符合預(yù)期的性能需求的測試手段。
(2) 前端性能測試:通常來講,前端性能關(guān)注的是瀏覽器端的頁面渲染時間、資源加載順序、請求數(shù)量、前端緩存使用情況、資源壓縮等內(nèi)容,希望借此找到頁面加載過程中比較耗時的操作和資源,然后進(jìn)行有針對性的優(yōu)化,最終達(dá)到優(yōu)化終端用戶在瀏覽器端使用體驗(yàn)的目的。
其中幾個最典型也是最重要的規(guī)則,來幫助你理解前端性能測試優(yōu)化的關(guān)注范圍:
① 減少 http 請求次數(shù):http 請求數(shù)量越多,執(zhí)行過程耗時就越長,所以可以采用合并多個圖片到一個圖 片文件的方法來減少 http 請求次數(shù),也可以采用將多個腳本文件合并成單一文件的方式減少 http 請求次數(shù);
② 減少 DNS 查詢次數(shù):DNS 的作用是將 URL 轉(zhuǎn)化為實(shí)際服務(wù)器主機(jī) IP 地址,實(shí)現(xiàn)原理是分級查找,查找過程需要花費(fèi) 20~100ms 的時間,所以一方面我們要加快單次查找的時間,另一方面也要減少一個 頁面中資源使用了多個不同域的情況;
③ 避免頁面跳轉(zhuǎn):頁面跳轉(zhuǎn)相當(dāng)于又打開一個新的頁面,耗費(fèi)的時間就會比較長,所以要盡量避免使用頁面跳轉(zhuǎn);n
④ 使用內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN):使用 CDN 相當(dāng)于對靜態(tài)內(nèi)容做了緩存,并把緩存內(nèi)容放在網(wǎng)絡(luò)供應(yīng)商 (ISP)的機(jī)房,用戶根據(jù)就近原則到 ISP 機(jī)房獲取這些被緩存了的靜態(tài)資源,因此可以大幅提高性能;
⑤ Gzip 壓縮傳輸文件:壓縮可以幫助減小傳輸文件的大小,進(jìn)而可以從網(wǎng)絡(luò)傳輸時間的層面來減少響應(yīng)
時間;
(3) 代碼級性能測試:代碼級性能測試,是指在單元測試階段就對代碼的時間性能和空間性能進(jìn)行必要的測試和評估,以防止 底層代碼的效率問題在項(xiàng)目后期才被發(fā)現(xiàn)的尷尬。
(4) 壓力測試:壓力測試,通常指的是后端壓力測試,一般采用后端性能測試的方法,不斷對系統(tǒng)施加壓力,并驗(yàn)證系統(tǒng)化處于或長期處于臨界飽和階段的穩(wěn)定性以及性能指標(biāo),并試圖找到系統(tǒng)處于臨界狀態(tài)時的主要瓶頸點(diǎn)。
(5) 配置測試:配置測試,主要用于觀察系統(tǒng)在不同配置下的性能表現(xiàn),通常使用后端性能測試的方法:通過性能基準(zhǔn)測試建立性能基線;在此基礎(chǔ)上,調(diào)整配置;基于同樣的性能基準(zhǔn)測試,觀察不同配置條件下系統(tǒng)性能的差異,根本目的是要找到特定壓力模式下的最佳配置。這里需要注意的是,“配置”是一個廣義配置的概念,包含了以下多個層面的配置:宿主操作系統(tǒng)的配置;服務(wù)器的配置;數(shù)據(jù)庫的配置;JVM 的配置; 網(wǎng)絡(luò)環(huán)境的配置等;
(6) 并發(fā)測試:在實(shí)際項(xiàng)目中,我建議在要求的并發(fā)數(shù)上進(jìn)行適當(dāng)放大,比如要求的并發(fā)數(shù)是 100,那我們集合點(diǎn)并發(fā)數(shù)可以設(shè)置為 120。
(7) 可靠性測試:可靠性測試,是驗(yàn)證系統(tǒng)在常規(guī)負(fù)載模式下長期運(yùn)行的穩(wěn)定性。雖然可靠性測試在不同公司的叫法不同,但其本質(zhì)就是通過長時間模擬真實(shí)的系統(tǒng)負(fù)載來發(fā)現(xiàn)系統(tǒng)潛在的內(nèi)存泄漏、鏈接池回收等問題。
2、性能測試應(yīng)用的幾大領(lǐng)域
(1) 能力驗(yàn)證
① 能力驗(yàn)證是最常用,也是最容易理解的性能測試的應(yīng)用領(lǐng)域,主要是驗(yàn)證“某系統(tǒng)能否在 A 條件下具有B 能力”,通常要求在明確的軟硬件環(huán)境下,根據(jù)明確的系統(tǒng)性能需求設(shè)計(jì)測試方案和用例。能力驗(yàn)證這個領(lǐng)域最常使用的測試方法,包括后端性能測試、壓力測試和可靠性測試。
(2) 能力規(guī)劃
① 能力規(guī)劃關(guān)注的是,如何才能使系統(tǒng)達(dá)到要求的性能和容量。通常情況下,我們會采用探索性測試的方式來了解系統(tǒng)的能力。能力規(guī)劃解決的問題,主要包括以下幾個方面:①能否支持未來一段時間內(nèi)的用戶增長;②應(yīng)該如何調(diào)整系統(tǒng)配置,使系統(tǒng)能夠滿足不斷增長的用戶數(shù)需求;③應(yīng)用集群的可擴(kuò)展性驗(yàn)證,以及尋找集群擴(kuò)展的瓶頸點(diǎn);④數(shù)據(jù)庫集群的可擴(kuò)展性驗(yàn)證;⑤緩存集群的可擴(kuò)展性驗(yàn)證;
(3) 性能調(diào)優(yōu)
① 這個領(lǐng)域最常用的測試方法,涵蓋了我在上面分享的七大類測試方法,即后端性能測試、前端性能測試、代碼級性能測試、壓力測試、配置測試、并發(fā)測試和可靠性測試。文章來源:http://www.zghlxwxcb.cn/news/detail-774454.html
(4) 缺陷發(fā)現(xiàn)
① 缺陷發(fā)現(xiàn),是一個比較直接的應(yīng)用領(lǐng)域,通過性能測試的各種方法來發(fā)現(xiàn)諸如內(nèi)存泄露、資源競爭、不合理的線程鎖和死鎖等問題。 缺陷發(fā)現(xiàn),最常用的測試方法主要有并發(fā)測試、壓力測試、后端性能測試和代碼級性能測試文章來源地址http://www.zghlxwxcb.cn/news/detail-774454.html
(5) 各個應(yīng)用領(lǐng)域需要用到的測試方法,如下圖所示:
總結(jié)
最后如果你想學(xué)習(xí)軟件測試和需要軟件測試資料,歡迎加入筆者的交流群:731789136,里面可以免費(fèi)領(lǐng)取軟件測試+自動化測試資料+軟件測試面試寶典+簡歷模版+實(shí)戰(zhàn)項(xiàng)目+面試刷題工具和大佬答疑解惑,我們一起交流一起學(xué)習(xí)!
到了這里,關(guān)于【性能測試入門必看】性能測試?yán)碚撝R的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!