日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

AQtime实战

發(fā)布時(shí)間:2023/11/30 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 AQtime实战 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
國內(nèi)私募機(jī)構(gòu)九鼎控股打造APP,來就送?20元現(xiàn)金領(lǐng)取地址:http://jdb.jiudingcapital.com/phone.html
內(nèi)部邀請(qǐng)碼:C8E245J?(不寫邀請(qǐng)碼,沒有現(xiàn)金送)
國內(nèi)私募機(jī)構(gòu)九鼎控股打造,九鼎投資是在全國股份轉(zhuǎn)讓系統(tǒng)掛牌的公眾公司,股票代碼為430719,為“中國PE第一股”,市值超1000億元。? ------------------------------------------------------------------------------------------------------------------------------------------------------------------

?

最近在博客園看到了JustIn兄弟寫的一些列的AQtime文章,非常不錯(cuò),看完了手癢癢于是自己就寫點(diǎn)了。

Justin

[原創(chuàng)]DebugTools系列(1):AQTime初探

[原創(chuàng)]DebugTools系列(2):AQTime配置

[原創(chuàng)]DebugTools系列(3):AQTime實(shí)踐

[原創(chuàng)]DebugTools系列(4):AQTime經(jīng)驗(yàn)總結(jié)

?

?

一、??? 背景介紹

?

AQTime 是一款Code Profile 工具,在2004年即獲得了Sys-Con Magzine的最佳調(diào)試工具獎(jiǎng),它是由AutomatedQA公司(http://www.automatedqa.com)開發(fā)的,支持多種語言的性能測試。結(jié)合公司當(dāng)前情況,將利用 AQTime 測試 .net winApp 性能瓶頸。

二、方法概述

1、??? 確定測試范圍:確定需要分析的業(yè)務(wù)功能范圍;裁剪待分析的類和方法。

2、??? 確定測試粒度:依據(jù)由粗至細(xì)的粒度原則進(jìn)行分析,依次進(jìn)行類、方法、行級(jí)跟蹤;

3、??? 分析結(jié)果數(shù)據(jù):根據(jù)截獲的數(shù)據(jù),分析數(shù)據(jù)確定下一步動(dòng)作。

?

三、操作步驟

1、? File –> New Project(Shift+Ctrl+N) 新建空白測試工程AQtime_Demo_TestPrj.aqt

2、? 選擇測試類型。AQtime可進(jìn)行Allocation profilerCoverage profilerPerformance profiler等多種測試數(shù)據(jù)的采集。由于關(guān)心函數(shù)的執(zhí)行時(shí)間的性能,此處選擇“Performance profile”進(jìn)行數(shù)據(jù)收集策略;

3、? 添加待測文件或模塊(*.dll*.exe) ;在 Setup標(biāo)簽頁中添加待測程序AQTimeDemo.exe

4、? 確定測試區(qū)域范圍。

4.1?? 依據(jù)“由粗至細(xì)”的原則,第一次采取數(shù)據(jù)時(shí),可直接勾選“Full Check by Routines”,此時(shí)將跟蹤捕獲過程中所有方法的執(zhí)行細(xì)節(jié)。為了更有針對(duì)性,也為了減少賽選數(shù)據(jù)量,可手動(dòng)添加待測試區(qū)域 ProcessMethod

4.2?? 添加待測方法

Setup標(biāo)簽的Modules中,選擇待測方法后,右鍵,選中“Add Selected to Aera”菜單中的“ProcessMethod”,即可將待測方法添加到測試區(qū)域。

5、? 設(shè)定數(shù)據(jù)采集動(dòng)作;

5.1?? 添加動(dòng)作:

Triggers and Actions 標(biāo)簽頁中右鍵,選擇“Add Action…”,會(huì)出現(xiàn)“Add Action”對(duì)話框。如圖填寫基本數(shù)據(jù)后,確定即可。

4.3?? 設(shè)置獲取結(jié)果動(dòng)作函數(shù);

Setup標(biāo)簽的Modules中,選中獲取結(jié)果前執(zhí)行的函數(shù)“AQtime.BusinessLayer.Process”后,右鍵,選擇“Add Selected to Action”的“GetResult”,即可將指定方法添加到GetResult動(dòng)作中。目的是在執(zhí)行這些函數(shù)后,獲取數(shù)據(jù)結(jié)果。

6、? F5啟動(dòng)應(yīng)用程序,此時(shí)會(huì)出現(xiàn)“Run Setting”設(shè)置對(duì)話框,直接點(diǎn)擊“Run”即可。在測試*.dll 等內(nèi)容時(shí),需要先設(shè)定運(yùn)行參數(shù)Run -> Parameters 即可出現(xiàn)設(shè)定參數(shù)對(duì)話框。

7、? 按照正常步驟執(zhí)行程序,當(dāng)程序執(zhí)行完成后,AQtime 將自動(dòng)記錄每個(gè)函數(shù)的執(zhí)行細(xì)節(jié):

8、? 分析數(shù)據(jù)

選擇其中的某個(gè)方法,可在底部得到與該方法關(guān)聯(lián)的細(xì)節(jié)。個(gè)人最喜歡的是下面的 Call Graph”,此處可以看到各種函數(shù)的調(diào)用關(guān)系,并顯示出每個(gè)函數(shù)的執(zhí)行時(shí)間和內(nèi)容。


9
、通過分析上面的數(shù)據(jù),確定下一步需要跟蹤的方法為“BusinessLayer::Process”。按照4.2中的方法,將該方法添加到ProcessMethod 區(qū)域中。為了更清楚的分析數(shù)據(jù),雙擊“Areas(Routines,Lines) ”面板中的“ProcessMethod”區(qū)域,更改Level為“Lines”,并取消勾選的“Full Check By Routines”。

10、按 F5 重啟應(yīng)用程序,重新按照正常步驟執(zhí)行程序;

11、重新分析收集到的數(shù)據(jù)。在分析的數(shù)據(jù)底部,切換到“Editor”標(biāo)簽,得到每行命令執(zhí)行的時(shí)間:

通過以上的分析,得到性能瓶頸點(diǎn)在于Source Line 46行的代碼。當(dāng)反復(fù)調(diào)用該方法50000次占64.12%的時(shí)間,因此我們優(yōu)化的方法的重點(diǎn)在于改變Process方法中的瓶頸點(diǎn)。找到瓶頸點(diǎn)后,就是對(duì)癥下藥制定修改策略。

?

四、總結(jié)

???????? 以上就是通過介紹使用 AQtime分析winApp的性能瓶頸點(diǎn)和熱點(diǎn),制定相關(guān)修改策略。使用AQtime不僅僅可以測試 c/s 的性能瓶頸,也可以找到 b/s 的瓶頸,基本上都是大同小異。

?

相關(guān)資料下載:http://download.csdn.net/source/744776

轉(zhuǎn)載于:https://www.cnblogs.com/AloneSword/archive/2008/11/03/2237531.html

總結(jié)

以上是生活随笔為你收集整理的AQtime实战的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。