二、系統(tǒng)分析
結(jié)合需求分析中第3點(diǎn)梢为,分析系統(tǒng)架構(gòu)渐行。
1)請(qǐng)求順序轰坊、請(qǐng)求之間相互調(diào)用關(guān)系
2)數(shù)據(jù)流向,數(shù)據(jù)是怎么走的祟印,經(jīng)過(guò)哪些組件肴沫、服務(wù)器等
3)預(yù)測(cè)可能存在性能瓶頸的環(huán)節(jié)(組件、服務(wù)器等)
4)明確應(yīng)用類型 IO型蕴忆,還是CPU消耗性颤芬、內(nèi)存消耗型-> 弄清楚重點(diǎn)監(jiān)控對(duì)象
5)關(guān)注應(yīng)用是否采用多進(jìn)程套鹅、多線程架構(gòu)-> 多線程容易造成線程死鎖站蝠、數(shù)據(jù)庫(kù)死鎖卓鹿,數(shù)據(jù)不一致等
6)是否使用集群/是否使用負(fù)載均衡
了解測(cè)試環(huán)境部署和生產(chǎn)環(huán)境部署差異,是否按1:1的比例部署
通常建議測(cè)試時(shí)先不考慮集群吟孙,采用單機(jī)測(cè)試澜倦,測(cè)試通過(guò)后再考慮使用集群,這樣有個(gè)比較杰妓,比較能說(shuō)明問(wèn)題
參考閱讀“淺談web網(wǎng)站架構(gòu)演變過(guò)程 ”:http://blog.csdn.net/qiaqia609/article/details/50809383
三、業(yè)務(wù)分析
1)明確要測(cè)試的功能業(yè)務(wù)中巷挥,功能業(yè)務(wù)占比,重要程度句各。
目的在于
<1>明確重點(diǎn)測(cè)試對(duì)象吸占,安排測(cè)試優(yōu)先級(jí)
<2>建模,混合場(chǎng)景中凿宾,虛擬用戶資源分配矾屯,針對(duì)不同業(yè)務(wù)功能施加不同的負(fù)載初厚。
2)明確下“需求分析-指標(biāo)分析”中相關(guān)業(yè)務(wù)功能所需基礎(chǔ)數(shù)據(jù)及數(shù)據(jù)量問(wèn)題,因?yàn)槟菈K需求分析時(shí)可能只是大致估算下产禾,評(píng)估指標(biāo)是否合理,需要認(rèn)真再分析下
四亚情、用例設(shè)計(jì)
1)用例設(shè)計(jì)
通常是基于場(chǎng)景的測(cè)試用例設(shè)計(jì)
<1> 單業(yè)務(wù)功能場(chǎng)景
運(yùn)行測(cè)試期間,所有虛擬用戶只執(zhí)行同一種業(yè)務(wù)功能某個(gè)環(huán)節(jié)衫生、操作
<2> 混合業(yè)務(wù)功能場(chǎng)景
運(yùn)行測(cè)試期間裳瘪,部分虛擬用戶執(zhí)行某種業(yè)務(wù)的某個(gè)環(huán)節(jié)操作罪针,部分虛擬用戶執(zhí)行該業(yè)務(wù)功能的其它環(huán)節(jié)
或者
運(yùn)行測(cè)試期間,部分虛擬用戶執(zhí)行某種業(yè)務(wù)功能泪酱,部分虛擬用戶執(zhí)行其它業(yè)務(wù)功能
注:這里用例沒(méi)說(shuō)到多少用戶去跑,跑多久等愈腾,這里只是把他當(dāng)作相同場(chǎng)景用例下的的一組組測(cè)試數(shù)據(jù)了。
2)事務(wù)定義
根據(jù)用例合理的定義事務(wù),方便分析耗時(shí)(特別是混合業(yè)務(wù)功能場(chǎng)景測(cè)試)悦即,進(jìn)而方便分析瓶頸。
比如粱甫,購(gòu)買商品,我們可以把下訂單定義為一個(gè)事務(wù)茶宵,把支付也定義為一個(gè)事務(wù)宗挥。
3)場(chǎng)景監(jiān)控對(duì)象
針對(duì)每條用例,結(jié)合“系統(tǒng)分析”第4)點(diǎn)契耿,明確可能的壓力點(diǎn)(比如數(shù)據(jù)庫(kù)瞒大、WEB服務(wù)器),需要監(jiān)控的對(duì)象搪桂,比如tps透敌,耗時(shí)踢械,CPU,內(nèi)存撵术,I/O等