
這是《落葉》文集里第 112 片落葉,希望你能喜歡,不為別的,只為這份堅(jiān)持。
我從零距離接觸性能測試到今天,也才一年多的時(shí)間,在這上面走過的路崎嶇蜿蜒,個(gè)中滋味只可意會(huì),不可言傳。雖然我已經(jīng)從入門到“放棄”了,但是我一直在思考和尋找,怎么樣才能讓性能測試不再看上去那么“高不可攀”。
性能測試其實(shí)就是測試的一種類別,那么相應(yīng)的,它也是有一套標(biāo)準(zhǔn)流程的,無外乎就是需求分析、測試計(jì)劃制定、測試執(zhí)行、結(jié)果分析等幾個(gè)環(huán)節(jié)。
所以,針對(duì)性能測試流程里的幾個(gè)環(huán)節(jié),我把自己換位到當(dāng)初的小白,去思考自己當(dāng)時(shí)最希望得到什么樣的支持和幫助,再結(jié)合產(chǎn)品化的思維,思考出下面這樣一個(gè)可以被拿來主義“的性能測試框架或指導(dǎo)性體系。
1、是什么?
性能測試?yán)锏某S没靖拍睢y試方法和標(biāo)準(zhǔn)流程的定義和解釋;
2、做什么?
性能測試需求的分析方法,可以采用 checklist 的問題形式來幫助使用者得出對(duì)應(yīng)需求所需要采用的性能測試種類,是壓力測試,是穩(wěn)定性測試,還是健壯性測試等等;
3、怎么做?
3.1 對(duì)應(yīng)著上述第2步,得出來的具體的測試種類,每一種都有相應(yīng)的測試方法說明,包括需要準(zhǔn)備什么樣的數(shù)據(jù)、步驟和如何選取相應(yīng)的腳本進(jìn)行修改或組裝;
3.2 有一套對(duì)應(yīng)的樣例庫,包含腳本(.usr)、參數(shù)化文件(.dat)、場景(.lrs),雖然說不可能百分之百通用或者套用,但至少在同類產(chǎn)品的性能測試中都能套用,它們都是相對(duì)獨(dú)立、結(jié)構(gòu)清晰的一個(gè)一個(gè)的數(shù)據(jù)包,便于更新和管理;
4、怎么樣?
性能測試完成后,系統(tǒng)都會(huì)生成一個(gè)報(bào)告。針對(duì)常用的單分析圖和組合分析圖,有樣圖與我實(shí)際的圖做對(duì)比,并告訴我這些數(shù)據(jù)圖,分別代表著性能的哪些指標(biāo),這些指標(biāo)的值,又分別代表著性能是好還是壞;
5、怎么辦?
對(duì)于常見的性能問題,羅列出通用的解決方案,比如是應(yīng)該檢查并優(yōu)化 SQL,還是應(yīng)該修改服務(wù)端 Tomcat 的連接數(shù)大小等等。
如果能有這樣一套產(chǎn)品化的性能測試框架,那么我想,性能測試這種大山對(duì)于大多數(shù)測試工程師來說,也就不那么”高不可攀“了,對(duì)吧?
具有指導(dǎo)性的作業(yè)文件、測試計(jì)劃模板、獨(dú)立的測試數(shù)據(jù)和測試腳本、分布式測試環(huán)境搭建腳本或手冊、測試報(bào)告和相應(yīng)的分析模板,能支撐一套完整的性能測試框架迅速落地,快速適應(yīng)不同的項(xiàng)目,并且能讓測試工程師以最小的學(xué)習(xí)代價(jià)完成性能測試任務(wù)。
不過,這么一套框架不是一朝一夕就能建立起來的,它必須是在性能測試工程師對(duì)理論有了很深入地理解,并通過多個(gè)項(xiàng)目的實(shí)戰(zhàn),從中總結(jié)、歸納而形成的一套方法論體系,再輔以相對(duì)獨(dú)立的數(shù)據(jù)和腳本、計(jì)劃模板、分析步驟和模板等相關(guān)工具。不斷地打磨、優(yōu)化和改進(jìn),才能形成一套不論是入門級(jí)的小白,還是進(jìn)行中的老鳥,都可以輕松利用它登上高峰的這樣一個(gè)產(chǎn)品。
作者簡介:14 年測試 + 11 年項(xiàng)目管理 + 11 年團(tuán)隊(duì)管理 = 一個(gè)測試?yán)媳?/p>