




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、vs2005 自帶網(wǎng)站壓力測(cè)試(vsts)VSTS提供了一個(gè)豐富、強(qiáng)大的工具平臺(tái),融合了軟件開(kāi)發(fā)領(lǐng)域的各個(gè)角色,涵蓋軟件開(kāi)發(fā)生命周期的各個(gè)階段,包括設(shè)計(jì),開(kāi)發(fā),測(cè)試,管理,而這一整套構(gòu)件的融會(huì)貫通,讓它可以有效地改善軟件開(kāi)發(fā)過(guò)程中各個(gè)階段的弊端,提高團(tuán)隊(duì)之間不同的角色的協(xié)調(diào)能力,提高工作效率。本文就簡(jiǎn)單介紹一下如何利用VSTS給一個(gè)網(wǎng)站做壓力測(cè)試。1建立一個(gè)測(cè)試項(xiàng)目,起名MyTest,口1X|FileEditViewTestToolsWindowCommunityHelpIITl依雪火困口二wlAl事第三言|口卓丁WStartPage-MicrosoftVisualStudio2建立一個(gè)Web
2、TestMyTest-MicrosoftVisualStudioFileEdi:ViewProjectBuildDebugDataTestToolsWindowCommunityHelp為U3/J一DebugReadySolutionExplorer-MyTest五?;鹄*豆平XSolutionMyTest(1project)-I./SolutionItems&localzestrun.testrunconfigIlMyTest,v5mdi豆aRefreshBuildRebuildCleanRunCodeAnalysisAddJNewTest.AddReference.NewItem
3、.AddWebReference.臼ExistingItem.AViewClassDiagram卜一NewFolderSetasStartupProject4LoadTest.DebugWebTest.AddSolutiontoSourceControl.ManualTest(Wordformat)ACut*13OrderedTest心PasteGenericTestXRemove國(guó)WindowsForm.Rename蜀UserControl.VMM.;UnloadProjectProperties*Component.,Class.點(diǎn)擊WebTest.IE馬上就會(huì)彈出一個(gè)窗口,這樣錄制腳本工
4、作就可以開(kāi)始了。3在IE里輸入要測(cè)試的網(wǎng)站地址:比如http:/localhost/WebSite/Default.aspx4對(duì)該網(wǎng)站做一些操作,此時(shí)VSTS會(huì)紀(jì)錄下你的這些操作,用以作為壓力測(cè)試的場(chǎng)景5錄制腳本畢,點(diǎn)擊STOP6點(diǎn)擊生成代碼,可以看到剛才錄制的類似如下的代碼:/Thiscodewasgeneratedbyatool./RuntimeVersion:2.0.50727.42/Changestothisfilemaycauseincorrectbehaviorandwillbelostif/thecodeisregenerated.II/namespaceMyTest兒using
5、System;ILrri噩usingSystem.Collections.Generic;usingSystem.Text;usingMicrosoft.VisualStudio.TestTools.WebTesting;usingMicrosoft.VisualStudio.TestTools.WebTesting.Rules;publicclassWebTest1Coded:WebTestpublicWebTest1Coded()this.PreAuthenticate=truepublicoverrideIEnumeratorGetRequestEnumerator()WebTestRe
6、questrequest1=request1.ThinkTime=1688;ExtractHiddenFieldsrule1=rule1.ContextParameterName=1request1.ExtractValues+=yieldreturnrequest1;newWebTestRequest(http:/localhost/WebSite/Default.aspx);newExtractHiddenFields。;newEventHandler(rule1.Extract);WebTestRequestrequest2=request2.ThinkTime=2;newWebTest
7、Request(http:/localhost/WebSite/Default.aspx);=POST;FormPostHttpBodyrequest2Body=newFormPostHttpBody();request2Body.FormPostParameters.Add(_VIEWSTATE,this.Context$HIDDEN1._VIEWSTATE.ToString();request2Body.FormPostParameters.Add(Button1,GotoTestPage);request2Body.FormPostParameters.Add(_VIEWSTATEENC
8、RYPTED,this.Context$HIDDEN1._VIEWSTATEENCRYPTED.ToSrequest2Body.FormPostParameters.Add(_EVENTVALIDATION,this.Context$HIDDEN1._EVENTVALIDATION.ToString();request2.Body=request2Body;ExtractHiddenFieldsrule2=newExtractHiddenFields();rule2.ContextParameterName=1;request2.ExtractValues+=newEventHandler(r
9、ule2.Extract);yieldreturnrequest2;WebTestRequestrequest3=newWebTestRequest(http:/localhost/WebSite/test.aspx);request3.Method=POST;FormPostHttpBodyrequest3Body=newFormPostHttpBody();request3Body.FormPostParameters.Add(_VIEWSTATE,this.Context$HIDDEN1._VIEWSTATE.ToString();request3Body.FormPostParamet
10、ers.Add(Button1,Gotodefaultpage.);request3Body.FormPostParameters.Add(_EVENTVALIDATION,this.Context$HIDDEN1._EVENTVALIDATION.ToString();request3.Body=request3Body;yieldreturnrequest3;7添加一個(gè)LoadTest.tring();ILrLILIrLriirj_aMyTest-MicrosoftVisualStudioJnJxJFileEditViewProjectBuildDebugDataTestToolsWind
11、owCommunityHelpDebug:口動(dòng)&羽口藥口醫(yī)口聲WebTestlCoded.cs*SolutionExplorer-MyTest用MyTest.WebTestlC二JSGetRequestEnumerThiscodewasgeneratedbyatooRuntimeVersion:2.0.50727.42嗣管同修SolutionMyTest,(1project)日SolutionItems&localtestrun.testrunconfig匕3MyTest.vsmdiChangestothisfilemaycauseithecodeisregenerated.7
12、auto-generated)MyTenamespaceMyTest4ReadyusingusingusingusingusingSystem;System.Collections.Generic;System.Text;Microsoft-VisualStudio.TestToMicrosoft.VisualStudio.TestTopublicclassWebTestlCoded:WebTespublicWebTestlCodedOthis.PreAuthenticate=truepublicoverridelEnumeratorebWebTestReques*requestl=nrequ
13、estl.ThinkTime=1688;ExtractHiddenFieldsrulel=rulel.ContextParameterNamerequestl.ExtractValues+=nyxeldreturnrequestl:PrRt七七-GWWNewTest.NewItem.ExistingItem.NewFolderLjLoadTest.WebTest.3司口LUManualTest(Wordformat)OrderedTestGenericTestWindowsForm.UserControl.Component.Class.8填寫好LoadTest的各項(xiàng)參數(shù)1)第一步是填寫場(chǎng)景名
14、2)第二步是填寫裝載的樣式如果選擇一次裝載固定的用戶數(shù),選擇第一項(xiàng)ConstantLoad如果選擇SetpLoad,表示步增,設(shè)置好開(kāi)始時(shí)的用戶數(shù),以及經(jīng)過(guò)多久每次增加的用戶數(shù)3) TestMix4) BrowserMix5) NetworkMix6)在CounterSets選擇AddCompuer,表示要對(duì)某個(gè)PC進(jìn)行監(jiān)控7)RunSettings9點(diǎn)擊Finish10點(diǎn)擊RunTest,測(cè)試就開(kāi)始了壓力測(cè)試運(yùn)行后,我們就可以選中某個(gè)參數(shù),查看某個(gè)時(shí)刻機(jī)器個(gè)方面的性能。參看下圖:Counters土dOverallScenario13CorrputersXj3INSU-WORKBL_|Memo
15、ryI%CommittedBytesInUse/IAvailableMBytesIPageFaults/sec_jPages/secIPoolNonpagedBytesIPoolPagedBytes/iJNetworkInterface+PhysicalDisk臼_JProcessjd%PrivilegedTime.1%ProcessorTime一,devenvdVSTestHost司乙J%UserTime田_JHandleCountScJPrivateBytes用_ThreadCount_VirtualBytesSt_JWorkingSetBidProcessorEl二J%Privilege
16、dTimed.Total-i_J%ProcessorTimed.Total田J%UserTime田_JSystem圖.IErrcrs%Pr.Time06:3506:4006:4506:5006:5507:0007:0507:1007:1507:2007:2507:3007:3507:4007:4507:5007:5508:0008:0508:1008:1508:2008:2508:3008:3508:4008:4508:5008:5509:0009:0509:1009:15CounterInstanceCategoryComputerColorRangeMinMaxAvgLast3Reques
17、ts/Sec_TotalLoadTe.BINSU-W.一10.000.200.020.000Avg.ResponseTime.TotalLoadTe.BINSU-W.一一10.010.860.10.3%CommittedBytesIn.MemoryBINSU-W.10042.744.643.644.40%PrivilegedTimeJotalProcessorBINSU-W.1002.5O%ProcessorTime_TotalProcessorBINSU-W.1003.854.414.511.90%ProcessorTimedevenvProcessBINSU-W.100
18、0.930.03.86.9Graph:Default我們也可以運(yùn)行perfmon,通過(guò)Performance查看機(jī)器的各項(xiàng)指標(biāo)。(轉(zhuǎn)http:/ .選中測(cè)試項(xiàng)目,右鍵“添加-負(fù)載測(cè)試”彈出歡迎頁(yè)面,點(diǎn)擊“下一步”彈出如下圖頁(yè)面:輸入測(cè)試方案名,選擇思考時(shí)間的配置文件。思考時(shí)間是模擬用戶從打開(kāi)頁(yè)面到執(zhí)行操作之間的時(shí)間。2 .點(diǎn)擊下一步,為測(cè)試方案編輯負(fù)載模式設(shè)置單擊分步負(fù)載”單擊下一步”3 .向方案中添加測(cè)試下一步是向負(fù)載測(cè)試方案中添加測(cè)試并編輯測(cè)試組合單擊添加”選擇測(cè)試。單擊可用測(cè)試”窗格中的測(cè)試,再單擊箭頭將測(cè)試添加到開(kāi)始用戶計(jì)數(shù)”設(shè)置為10個(gè)用戶。單步持續(xù)時(shí)間”設(shè)置為10秒。單步用戶計(jì)數(shù)”
19、設(shè)置為10個(gè)用戶/步。最大用戶計(jì)數(shù)”設(shè)置為100個(gè)用戶。)vs2005負(fù)載測(cè)試技走劃分,計(jì)數(shù)集中有不同的計(jì)數(shù)器,設(shè)置每個(gè)計(jì)選定的測(cè)試”窗格中添加完測(cè)試后,單擊確定”。隨即出現(xiàn)測(cè)試組合??梢允褂没瑝K來(lái)調(diào)整測(cè)試分發(fā)。將滑塊調(diào)整到首選組合后,單擊下一步4 .為測(cè)試方案選擇瀏覽器組合從下拉列表中選擇IE6瀏覽器,將其添加到組合中。還可以添加其他瀏覽器。使用滑塊來(lái)調(diào)整測(cè)試分發(fā)和權(quán)重。單擊下一步為測(cè)試方案選擇網(wǎng)絡(luò)組合選擇局域網(wǎng)連接類型以添加到網(wǎng)絡(luò)帶寬組合中。還可以添加其他網(wǎng)絡(luò)類型。使用滑塊來(lái)調(diào)整測(cè)試分發(fā)和權(quán)重。單擊下一步”5 .指定在負(fù)載測(cè)試運(yùn)行期間要使用計(jì)數(shù)器集監(jiān)視的計(jì)算機(jī)通過(guò)單擊添加計(jì)算機(jī)”選擇要在測(cè)
20、試運(yùn)行期間監(jiān)視的計(jì)算機(jī),并鍵入承載您前面確定的非生產(chǎn)網(wǎng)站的服務(wù)器的名稱。通過(guò)添加主機(jī)名稱,可以收集負(fù)載測(cè)試中重要的性能信息。(在監(jiān)視的每個(gè)服務(wù)器上,都必須具有足夠的用戶權(quán)限以運(yùn)行性能監(jiān)視器。否則,將生成錯(cuò)誤。)可以為承載站點(diǎn)的SQL數(shù)據(jù)庫(kù)的計(jì)算機(jī)添加一個(gè)單獨(dú)的項(xiàng)。如果選擇不添加任何計(jì)算機(jī),則只有本地負(fù)載計(jì)數(shù)器會(huì)添加到測(cè)試中。選擇要監(jiān)視的計(jì)數(shù)器集。將顯示一組預(yù)定義的計(jì)數(shù)器集,它們用于向負(fù)載測(cè)試中添加特定的性能監(jiān)視器。如果所測(cè)試的站點(diǎn)在ASP.net服務(wù)器上運(yùn)行,則請(qǐng)?jiān)凇癆SP.net”和“IIS選擇框中為此測(cè)試放選中標(biāo)記。單擊下一步6 .編輯負(fù)載測(cè)試的運(yùn)行設(shè)置將運(yùn)行持續(xù)時(shí)間”設(shè)置為2分鐘,以便對(duì)
21、負(fù)載測(cè)試執(zhí)行冒煙測(cè)試。生成Web測(cè)試和負(fù)載測(cè)試時(shí),最好通過(guò)運(yùn)行一個(gè)短暫的小負(fù)載測(cè)試來(lái)驗(yàn)證是否一切都已正確配置并可按預(yù)期運(yùn)行。此過(guò)程稱為冒煙測(cè)試。單擊完成”。將在負(fù)載測(cè)試編輯器”中打開(kāi)負(fù)載測(cè)試。7 .運(yùn)行負(fù)載測(cè)試在負(fù)載測(cè)試編輯器”中打開(kāi)一個(gè)負(fù)載測(cè)試,再單擊綠色的運(yùn)行”按鈕。負(fù)載測(cè)試開(kāi)始運(yùn)行。若要使可查看區(qū)域最大化,請(qǐng)從VisualStudio菜單中單擊視圖”,再單擊全屏顯示”。如果測(cè)試模擬超過(guò)所有閾值,則樹(shù)控件節(jié)點(diǎn)中將出現(xiàn)圖標(biāo),以指示閾值沖突。錯(cuò)誤上覆蓋著紅色圓圈,而警告上覆蓋著黃色三角形??梢哉页龀^(guò)閾值的計(jì)數(shù)器,然后通過(guò)將圖標(biāo)拖動(dòng)到關(guān)系圖上來(lái)繪制該計(jì)數(shù)器??稍跍y(cè)試運(yùn)行期間進(jìn)行此操作。通過(guò)觀察
22、圖例中的計(jì)算機(jī)”列,可以確定其所在的計(jì)算機(jī)。如何設(shè)置計(jì)數(shù)器,計(jì)數(shù)器,以及如何設(shè)置閾值。1.有三種計(jì)數(shù)器類別:百分比、計(jì)數(shù)和平均數(shù)。這三種計(jì)數(shù)器類別的例子分別為:CPUusage”(CPU使用百分比)、“SQLServerlockcounts(SQLServer鎖計(jì)數(shù))和IISrequestspersecond(每秒的IIS請(qǐng)求數(shù))。2.計(jì)數(shù)器集:將正在測(cè)試的服務(wù)器添加到需要收集其計(jì)數(shù)器的計(jì)算機(jī)的列表中,這一點(diǎn)很重要。這樣就可以在負(fù)載測(cè)試期間收集和監(jiān)視任何重要的系統(tǒng)數(shù)據(jù)。3.閾值:比較常數(shù):將性能計(jì)數(shù)器的值與一個(gè)常數(shù)值進(jìn)行比較。比較計(jì)數(shù)器:將一個(gè)性能計(jì)數(shù)器的值與另一個(gè)性能計(jì)數(shù)器的值進(jìn)行比較如果超
23、過(guò)則發(fā)出警報(bào):將如果超過(guò)則發(fā)出警報(bào)”屬性設(shè)置為“True”,可指示超出閾值將出現(xiàn)問(wèn)題。例如,如果對(duì)ProcessorTime(處理器時(shí)間百分比(%)設(shè)置閾值規(guī)則,并且希望值大于90時(shí)收到警報(bào),請(qǐng)使用比較常數(shù)”規(guī)則類型,將臨界閾值”設(shè)置為90,并將如果超過(guò)則發(fā)出警報(bào)”設(shè)置為“True。將如果超過(guò)則發(fā)出警報(bào)”屬性設(shè)置為“False,可指示低于閾值將出現(xiàn)問(wèn)題。例如,如果對(duì)“Requests/Sec(請(qǐng)求/秒)設(shè)置閾值規(guī)則,并且希望值低于50時(shí)收到警報(bào),請(qǐng)使用比較常數(shù)”規(guī)則類型,將臨界閾值”設(shè)置為50,并將如果超過(guò)則發(fā)出警報(bào)”設(shè)置為“False”4 .指定計(jì)數(shù)器集:在負(fù)載測(cè)試向?qū)А钡挠?jì)數(shù)器集”頁(yè)上,會(huì)
24、在預(yù)覽選定內(nèi)容”窗格中看到現(xiàn)有計(jì)數(shù)器集。還會(huì)顯示默認(rèn)項(xiàng),包括負(fù)載測(cè)試計(jì)數(shù)器集;默認(rèn)情況下,負(fù)載測(cè)試計(jì)數(shù)器集由控制器收集。(可選)單擊添加計(jì)算機(jī)”添加一個(gè)新的要監(jiān)視的計(jì)算機(jī)。系統(tǒng)會(huì)提示您輸入名稱。鍵入名稱,將在這一新項(xiàng)下看到一些節(jié)點(diǎn),可以選擇這些節(jié)點(diǎn)。例如,“ADO.NET、“IIS、”“SQL等。選中要選擇的節(jié)點(diǎn)前面的復(fù)選框。新的計(jì)數(shù)器將出現(xiàn)在預(yù)覽選定內(nèi)容”窗格中。選擇了計(jì)數(shù)器集之后,單擊下一步”可前進(jìn)到負(fù)載測(cè)試向?qū)А钡倪\(yùn)行設(shè)置”頁(yè)。如何分析測(cè)試結(jié)果包括每秒鐘的請(qǐng)求數(shù)、失敗請(qǐng)求的總數(shù)、平均響應(yīng)時(shí)間以及平均頁(yè)面時(shí)間。如何設(shè)置sql數(shù)據(jù)數(shù)據(jù)存儲(chǔ)。將收集性能計(jì)數(shù)器數(shù)據(jù)并將其存儲(chǔ)在負(fù)載測(cè)試結(jié)果存儲(chǔ)區(qū)中
25、1 .在運(yùn)行SQLExpress的本地服務(wù)器上創(chuàng)建數(shù)據(jù)庫(kù)表cdn:ProgramFilesMicrosoftVisualStudio8Common7IDESQLCMD/Slocalhostsqlexpress/iloadtestresultsrepository.sqlSQL服務(wù)器不在本地機(jī):SQLCMD/SContosoServer1-iloadtestresultsrepository.sql或SQLCMD/SContosoServer1-U-P-iloadtestresultsrepository.sql2 .在測(cè)試”菜單上,單擊管理測(cè)試控制器將顯示管理測(cè)試控制器”對(duì)話框3 .在負(fù)載測(cè)試
26、結(jié)果連接字符串”中,單擊瀏覽按鈕()以顯示連接屬性”對(duì)話框。4 .在服務(wù)器名稱中,鍵入localhostsqlexpress或您在第2步中使用的服務(wù)器的名稱(例如ContosoServer1)。5 .在登錄到服務(wù)器”下,選擇使用Windows身份驗(yàn)證”。6 .在連接到一個(gè)數(shù)據(jù)庫(kù)”下,選擇選擇或輸入一個(gè)數(shù)據(jù)庫(kù)名。從下拉列表框中選擇LoadTest。單擊確定”。7 .在管理測(cè)試控制器”對(duì)話框中單擊關(guān)閉”。安裝 sqlserversqlserver20052005reportingservicereportingservice安裝成功后,在數(shù)據(jù)庫(kù)中有2個(gè)數(shù)據(jù)庫(kù)reportserver和reports,在iis中自動(dòng)配置2個(gè)虛擬
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 郵件實(shí)名收件管理辦法
- 以番茄黃化曲葉病毒為鑰:解鎖植物感知雙生病毒的奧秘
- 2025年電梯安裝改造維修作業(yè)特種作業(yè)操作證考試試卷真題解析與模擬試題
- 2025年初中數(shù)學(xué)八年級(jí)下冊(cè)數(shù)學(xué)競(jìng)賽輔導(dǎo)與訓(xùn)練策略應(yīng)用單元綜合測(cè)試卷
- 以生為本:新津縣W中學(xué)初中班級(jí)氛圍營(yíng)造的策略與實(shí)踐
- 2025年動(dòng)畫繪制員(高級(jí))動(dòng)畫繪制行業(yè)政策法規(guī)解讀考試試卷
- 2025年芳香保健師(初級(jí))職業(yè)技能鑒定專項(xiàng)試題匯編與解析
- 財(cái)政數(shù)據(jù)標(biāo)準(zhǔn)管理辦法
- 中職班主任教師團(tuán)隊(duì)建設(shè)計(jì)劃
- 2025年貴州省事業(yè)單位招聘考試綜合類專業(yè)能力測(cè)試試卷(工程類)模擬試題
- DB14∕T 2163-2020 信息化項(xiàng)目軟件運(yùn)維費(fèi)用測(cè)算指南
- 三年級(jí)下冊(cè)安全教育教案
- 人教版八年級(jí)物理下冊(cè)期末復(fù)習(xí)試題及答案
- Starter Unit 2 Keep Tidy教學(xué)設(shè)計(jì) 2024-2025學(xué)年人教版英語(yǔ)七年級(jí)上冊(cè)
- 簡(jiǎn)易呼吸器的使用-
- 天津市城市道路工程施工及驗(yàn)收標(biāo)準(zhǔn)
- 人教版數(shù)學(xué)七年級(jí)上冊(cè)《整式的加減運(yùn)算》教學(xué)設(shè)計(jì)
- 汽車貼膜太陽(yáng)膜理論知識(shí)培訓(xùn)課件
- 2024版工程總承包聯(lián)合體協(xié)議書
- 《抖音:短視頻與直播運(yùn)營(yíng)(慕課版)》-課件-項(xiàng)目六-抖音直播的復(fù)盤
- 眼科淚器病診療規(guī)范2023版
評(píng)論
0/150
提交評(píng)論