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

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

如何对web应用程序进行负载测试[2]

发布: 2010-3-10 10:27 | 作者: 不详 | 来源: 领测软件测试网采编 | 查看: 35次 | 进入软件测试论坛讨论

领测软件测试网

  使用超级用户最后,使用我们所称的超级用户。正如前面所提到的,超级用户运行时思考时间设置为零。请记住,思考时间假设是用于常规测试中,以使虚拟用户模拟真实用户。但是,如果将虚拟用户思考时间减半,则服务器的实际负载将加倍。在另一种方法中,服务器真正关心的与负载有关的变量是每秒的请求数。虚拟用户的数量及其思考时间结合起来生成该负载。

  让我们进行一些数学运算以使此概念更清晰。下面的公式计算访问站点的真实用户生成的负载(请求数/秒):

  例如,某个站点有 100 名并发用户,假设下载时间为 10 秒,思考时间为 30 秒,则每秒将生成 2.5 页。如果我们假设每页 3 个请求,则在 Web 服务器上将转化为每秒 7.5 个请求。

  以超级用户运行测试时,观察每秒请求数,并与刚刚计算的值比较。根据我们的经验,真实用户数与超级用户数的比例通常约为 15:1。对于同一个示例,这意味着 (100/15) 名超级用户将生成与 100 名普通用户相同的负载。再举一个例子,假设在 10 名超级用户之后响应时间变得不可接受。请注意转换回真实用户数的该点每秒请求数。现在您可以进行任何希望的思考时间假设,甚至可以更改它而无需重新运行测试。在几天的测试之后,您将能根据直觉从超级用户数转换成真实用户数。此方法允许您保持用户数可控,减少所需的客户端硬件数量,并包含负载测试软件的成本。

  这些超级用户测试用例对于多机测试很有用。要测试站点的可伸缩性,可添加第二台 Web 服务器和一个负载平衡器,并重复超级用户测试。理想情况下,在看见相同的相应次数之前,您将能加倍超级用户数量。

  要回答稳定性问题,可运行测试,以在延长的时间段内维持合理数量的并发且未同步超级用户。我们在上一个项目中熬了很多个通宵,甚至 24 小时昼夜不停,但持续时间与应用程序有关。我们称之为“内置”测试。一旦您已采取步骤识别并潜在地解决了找到的瓶颈,则重复同步点测试,看下限是否有所增长。然后用所支持的新的并发用户数重新运行“内置”测试。以努力提高此数字为目标重复该循环,直到达到质量条。

  但是有多少用户呢?

  尽管此方法向开发团队提供了有价值的信息,但它使得您更难于回答会议室的问题。不过,您可以近似地估计答案。例如,假设站点的最坏情况瓶颈显示,每台计算机多于 20 名超级用户的情况下,响应时间超过 10 秒。根据您从我们建议的公式计算的结果,近似地估计有 300 名真实用户(20 名超级用户 × 15 名真实用户)。此时,您可以做出与常规用例中相同的假设。通常情况下,有百分之多少的用户正在使用站点的此领域?假设预期 50% 的用户正在使用此领域,而其他领域,例如文档或数据库读取,用户比例则没有这么大。这意味着具有一台 Web 服务器的系统将处理大约 600 名用户。

  到目前为止,我们已讨论了在能明确地指向站点的一个瓶颈领域的情况下该如何做,但如果影响性能的领域不止一个时您又应如何做呢?答案是创建单独查看各个领域的测试脚本。首先孤立地运行这些脚本,然后一起运行。再比较结果,看站点的一个领域对另一个领域的影响有多大。

延伸阅读

文章来源于领测软件测试网 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认证国际软件测试工程师认证领测软件测试网