2009-08-19 124 views
1

的实际使用我看了一下压力测试和人在这里有几个问题通常建议ASP.Net压力测试应用

  • AB
  • JMeter的
  • openSTA

但这些似乎都基于Apache和Java和脚本等。

Selenium似乎是最好的选择,因为您记录了模拟UI加载和数据库请求等的网站实际使用情况,然后一遍又一遍地播放它。如果您想使用应用程序模拟100个用户,我不确定如何测试您的应用程序。我知道你应该把它放在其他15台电脑上并运行自动化,但这实际上并不可行。

这些应用程序中的一些实际上只是测试所有页面的HTTPResponse,但并不真正模拟数据库调用,例如,您可能有一个菜单,并且当用户单击它时会进行数据库调用。与此有关的另一个问题是,您的应用程序中可能有一个页面需要参数,然后执行数据库请求,尽管您从加载页面获得了很好的响应,但实际上并未按照您的要求进行操作。

有没有人有任何易于使用的仿真工具来测试一个应用程序与100个并发用户实际使用的应用程序,而不仅仅是渲染测试。我不介意脚本工具,如果它是这样的,但只有在有关如何设置它的良好文档时才推荐它们,因为这是我遇到的另一个问题。

感谢

回答

0

负载测试工具如OpenSTA和的JMeter通过发送HTTP请求模拟用户的活动,因为这是在大多数情况下,浏览器与服务器如何交互。没有必要使用实际的浏览器 - 捕获将要制作的请求,然后在协议级别进行播放。这样,您可以从一台PC模拟多个用户。您需要参与脚本编写,通常需要参数化您发送的数据,并检查页面内容是否正确。

您的应用程序是否直接从浏览器进行数据库调用?如果是这样,它使用什么协议?通常任何数据库调用都是通过某种类型的http请求。

+0

我认为测试asp.net应用程序的挑战在于,实际的http调用通常不太好处理 - 所有会话数据都编码在一个很大的丑陋会话状态变量中,而不是简单地通过url中的脚本化参数。 – 2009-10-27 19:07:04

+0

大多数负载测试工具都会处理会话状态变量,自动为您设置参数,但它可能很大很丑。 – 2009-11-02 12:49:14