軟件測試工具中VSTS性能分析工具Profiler的介紹
在MSDN文檔中,對于VSTS中的Development Edition的介紹主要分兩大塊,第一是“編寫(xiě)高質(zhì)量的代碼”,第二就是“使用分析工具對應用程序性能進(jìn)行分析”。在VSTS里面有一個(gè)工具,叫Profiler,這個(gè)工具可以幫助研發(fā)人員在程序運行的過(guò)程中收集相關(guān)的數據,并且對之進(jìn)行分析,從而達到幫助實(shí)現性能調優(yōu)的目的。本文講述如何在使用命令行工具來(lái)對ASP.NET程序進(jìn)行性能測試相關(guān)數據的收集。
在VSTS的Profiler中,有兩種(VSTS2010好像有5種了)Profiling的方法,第一種是采樣(Sampling),第二種是檢測(Instrumentation)。對于采樣模式,它的工作原理是Profiler定期中斷CPU并且收集函數的調用堆棧信息。在網(wǎng)上找到一個(gè)圖,對于采樣工作方式的描述非常清晰:
對于檢測模式,他的工作原理是用VSInstr程序在原始的代碼中插入一些用于計算時(shí)間的代碼,例如A函數調用B函數,那么在調用B函數的前后都會(huì )被插入用于計算時(shí)間的代碼,具體可以看下圖:
下面我自己寫(xiě)了一個(gè)小的Sample類(lèi),然后把編譯好的代碼用Reflector來(lái)查看,很容易地就能看出區別。第一個(gè)圖是沒(méi)有經(jīng)過(guò)VSInstr處理的原始代碼:
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/