• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试工具中VSTS性能分析工具Profiler的介绍

发布: 2010-4-22 12:31 | 作者: 网络转载 | 来源: 领测软件测试网编辑 | 查看: 295次 | 进入软件测试论坛讨论

领测软件测试网

下图就是经过VSInstr处理后,反编译后的代码:

after-instr

可以看到VSInstr程序修改了原来的DLL。在检测模式下,只有经过修改后的DLL才能收集到数据。

在VSTS中,一般可以通过Analyze菜单下的Launch Performance Wizard来新建一个性能会话,然后进行性能数据的采集。

对于ASP.NET程序,可以通过以下步骤来进行“采样”

iisreset /stop
VSPerfClrEnv /globalsampleon
VSPerfCmd /start:sample /user:”NETWORK SERVICE” /output:”d:\somewhere\xxxx.vsp”
VSPerfCmd /globaloff
iisreset /start
VSPerfCmd /attach:xxxx
VSPerfCmd /globalon

–run the test scenario–

VSPerfCmd /globaloff
VSPerfCmd /detach
iisreset /stop
VSPerfCmd /shutdown

  1. 第一步是停掉IIS
  2. 然后通过VSPerfClrEnv对环境变量进行设置,具体可以查文档,做完这一步以后通常需要重启一下电脑
  3. 第三步就是通过VSPerfCmd启动性能数据收集
  4. 接下来的VSPerfCmd /globaloff就是暂停性能数据的收集
  5. 然后重启IIS,并且访问一下这个服务器上的页面,使得W3WP进程启动
  6. 查看W3WP.EXE的进程ID,然后通过VSPerfCmd /attach:xxxx把Profiler attach到IIS中
  7. 通过VSPerfCmd /globalon重新让Profiler进行性能数据的采集
  8. 然后就可以运行性能测试的场景
  9. 运行测试完毕以后就用VSPerfCmd /globaloff停止性能数据的采集
  10. 接着用VSPerfCmd /detach让Profiler不要附着在IIS上
  11. 停掉IIS — iisreset /stop
  12. 执行VSPerfCmd /shutdown,这一步执行完毕以后,在d:\somewhere\下就有一个xxxx.vsp的性能报告。

对于ASP.NET程序,可以通过以下步骤来进行“检测”

检测和采样其实是大同小异的,但是有一个关键的步骤就是在进行检测之前,一定要记得用VSInstr命令对需要进行检测的DLL或者EXE文件进行处理,建议一次不要检测太多文件,检测时间不要太长,因为检测所产生的数量是非常大的,产生的文件大小都是按G级别计算了。

iisreset /stop
VSPerfClrEnv /globaltraceon
VSPerfCmd /start:trace /user:”NETWORK SERVICE” /CS /output:”d:\xxx\0422.vsp”
VSPerfCmd /globaloff
iisreset /start
– 预热 –
VSPerfCmd /globalon

–run code–

VSPerfCmd /globaloff
iisreset /stop
VSPerfCmd /shutdown

重复一次,在做以上的步骤之前必须要用VSInstr对目标二进制文件进行处理。这里详细步骤就不做解释了,命令的主要区别就是在做检测的时候,就免去了Attach到IIS这个步骤了。

采样和检测,前者是宏观的性能数据采集,后者是微观的性能数据采集。对于CPU负载较高的程序,用采样会得到比较好的效果;但是如果程序运行过程中并没有消耗很多的CPU资源,那么用采样可能就不能收集到太多有用的信息。所以在不同的场景下需要应用不同的性能数据收集方法。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

22/2<12

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网