Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何加载测试WinForms应用程序?_C#_Winforms - Fatal编程技术网

C# 如何加载测试WinForms应用程序?

C# 如何加载测试WinForms应用程序?,c#,winforms,C#,Winforms,我正在尝试找出加载测试Windows窗体应用程序的最佳方法,该应用程序将访问服务器并获得响应。我需要为多个用户进行负载测试,我不确定VisualStudio2010中的负载测试工具是否可以工作 非常感谢您的建议。我对此没有任何经验,但如果您有VS2010 ultimate,请试用Microsoft.VisualStudio.QualityTools.LoadTestFramework: 如果您需要一些额外的指导,这里有一个正在使用的框架示例:好吧,我的第一反应是创建一组虚拟机并同时运行一整套程

我正在尝试找出加载测试Windows窗体应用程序的最佳方法,该应用程序将访问服务器并获得响应。我需要为多个用户进行负载测试,我不确定VisualStudio2010中的负载测试工具是否可以工作


非常感谢您的建议。

我对此没有任何经验,但如果您有VS2010 ultimate,请试用Microsoft.VisualStudio.QualityTools.LoadTestFramework:



如果您需要一些额外的指导,这里有一个正在使用的框架示例:

好吧,我的第一反应是创建一组虚拟机并同时运行一整套程序。可能会反弹一点的ip(我不知道这需要多大的规模)

这可能有点粗糙,但如果您一次只添加几个连接,它就会起作用。显然,如果你需要同时打开数千个,这是行不通的。但我希望这有点帮助


-凯内蒂克

这里有一些你可以尝试的东西

  • 在测试应用程序中,编写一个方法a,该方法封装调用服务器并接收响应的代码
  • 在同一个应用程序中,编写一个创建多个线程的方法B。每个线程将执行方法A
  • 确保计算完成每个线程上的工作所需的时间
  • 增加线程数以模拟更多负载
将调用服务器的代码移动到方法A,而不移动应用程序的其余部分,这将使重复测试变得更加容易,并减轻执行测试的客户机上的负载


下面是模拟访问数据库的负载测试的类似想法的示例代码

听起来您真正需要负载测试的是服务器。计算(粗略地)你的应用程序的一个实例实际能够以多快的速度到达服务器,然后乘以预期的用户数,得到要测试的数量。更详细地说,WinForms应用程序本身很少会处于重载状态;它只是一个放在某人电脑上的桌面应用程序。但是,如果多个副本访问同一台服务器,那么服务器上的负载可能会开始降低某些(或所有)用户的性能。这就是为什么我说负载测试服务器在这里似乎更重要。我同意@dlev,但如果我们的假设不正确,请澄清这个问题。我正在做一个web请求,向推送通知服务器注册guid,并获取响应,但我需要测试多个执行相同操作的客户端。Guid是唯一的,并且已注册到应用程序实例,因此我需要模拟多个实例,以便为每个实例生成Guid。@Carl我支持我前面的评论;服务器将处于加载状态。您说要测试多个同时发出请求的客户端。在这种情况下,您首先必须计算出a)在适当的时间跨度内,请求的最大数量可能是多少,以及b)在给定用户无法接受的时间之前,请求的速度(或速度)可以有多快。听起来很有希望……我来检查一下。这种方法的扩展性不太好。负载测试需要非常容易地进行扩展。我理解,我提到这只是小规模测试的一部分,我不知道需要测试多少,我为这个错误的帖子感到抱歉=(我是这个网站的新手,充其量只能算是一个普通程序员。我会在将来更好地考虑我的答案。很好,我们都是新来的。只是答案不符合“负载测试”的基本需求,这意味着大规模。