如何对ORM数据驱动的网站进行压力测试?

4

我习惯于为极少量的并发用户(通常不超过10个)在非常好的服务器上开发私有应用程序,因此我从未因压力测试我的应用程序而感到紧迫。尽管如此,这是我想更好地掌握我的应用程序的事情。

顺便提一下,我所有的网站都基于ASP.NET 3.5(WebForms),NHibernate(特别关注多个并发会话时的测试)作为ORM选择,并需要Active Directory身份验证。

提前致谢。


我真的不知道使用ORM和不使用ORM对应用程序进行压力测试有何区别。 - Paco
我是一个新手,正在提问。我不知道,所以我把这个信息包含在内,以防万一。 :) - rebelliard
2个回答

2

如果必须的话,您可以使用多台以不同用户身份登录IE运行的计算机来创建一个Selenium RC集群。想一想,如果您有足够的计算机,这可能是最现实的测试方法...


如果我没有足够的设备怎么办?我只有3-4台电脑可用... - rebelliard
虚拟机是测试人员最好的朋友。 - Wyatt Barnett
有没有什么好的教程可以参考一下?这看起来是可行的。谢谢。 - rebelliard

1

对于ASP.Net,Visual Studio 2010 Ultimate版是首选。不仅可以进行负载测试应用程序,还可以创建性能会话以分析应用程序。这对于了解哪些代码最常被调用(特别是数据库调用)非常有帮助。

由于Web测试可以转换为C#代码,因此您将能够编写一些复杂的测试,通过数据库副本驱动,以完成一些有趣的场景。

Visual Studio 2010 Ultimate具有同时运行多达250个虚拟用户的能力,可能已经足够满足您的需求。


尽管VS显示了同时用户的数量,但每个客户机(Core 2 Duo)最多只有180个并发虚拟用户。我确定这是客户端限制,因为当更多的客户机启动时,服务器请求响应每秒会不断增加。我知道这个数字可能因场景和硬件而异,但如果您需要模拟200多个并发用户,请将其分布在不同的机器上以避免错误结果。 - AntonioR
是的,使用最大化的测试工具CPU来运行测试比实际对目标服务器施加负载更容易使测试过热。 - Nat
哇哦..我在这里运气不佳。在工作中,我们刚刚收到了VS 2010专业版的许可证。:'( - rebelliard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接