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

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

asp性能测试报告(转)(八)

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 17次 | 进入软件测试论坛讨论

领测软件测试网    使用过程和函数对于代码的组织和维护有着很大的好处,特别是页面中部分代码需要多次使用的时候。不过此时为了完成相同的处理任务要多出一次函数(或过程)的调用,这是它的缺点。从理论上看,函数块内的变量具有更好的效率。下面我们来看看这两个问题的测试结果。

   8.1 将Response.Write语句移入子过程

   在这个测试中,我们只把Response.Write语句放到了子过程里面。
...
CALL writeTable()

SUB writeTable()
     Response.Write("< html >" & _
          "< head >" & _
...
          "< tr >< td >< b >EMail:< /b >< /td >< td >" & EMail & "< /td >< /tr >" & _
          "< tr >< td >< b >Birth Date:< /b >< /td >< td >" & BirthDate & "< /td >< /tr >" & _
          "< /table >" & _
          "< /body >" & _
          "< /html >")
END SUB

/app2/function1.asp片断

基  准 = 5.57 毫秒/页
响应时间 = 6.02 毫秒/页
差  额 = +0.45 毫秒 (增加8.1%)




   和预期的一样,子过程调用增加了额外的页面处理负担。

   8.2 将所有脚本移入子过程

   在这个测试中,Response.Write和所有的变量声明都移到了子过程里面。
< % OPTION EXPLICIT
CALL writeTable()

SUB writeTable()
     Dim FirstName
     ...
     Dim BirthDate
     FirstName = "John"
     ...
     BirthDate = "1/1/1950"
     Response.Write("< html >" & _
          "< head >" & _
          "     < title >Response Test< /title >" & _
          "< /head >" & _
          "< body >" & _
          "< h1 >Response Test< /h1 >" & _
          "< table >" & _
          "< tr >< td >< b >First Name:< /b >< /td >< td >" & FirstName & "< /td >< /tr >" & _
          ...
          "< tr >< td >< b >Birth Date:< /b >< /td >< td >" & BirthDate & "< /td >< /tr >" & _
          "< /table >" & _
          "< /body >" & _
          "< /html >")
END SUB

/app2/function2.asp片断

基  准 = 5.57 毫秒/页
响应时间 = 5.22 毫秒/页
差  额 = -0.35 毫秒 (减少6.3%)




   虽然仍旧有着附加的函数调用,把变量声明放到函数内部居然使性能增加到超过基准,这是一个值得关注的结果!我们得到了如下规则:

如果页面中部分代码要使用一次以上,用函数封装它们。
如果合适的话,把变量声明也移到函数里面。

延伸阅读

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


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

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