使用 Visual Studio 2012 Ultimate 进行 Silverlight 4 负载测试

Posted

技术标签:

【中文标题】使用 Visual Studio 2012 Ultimate 进行 Silverlight 4 负载测试【英文标题】:Silverlight 4 Load Testing with Visual Studio 2012 Ultimate 【发布时间】:2013-07-23 15:52:52 【问题描述】:

我知道有类似的问题,但是我找不到我要找的东西

我的任务是为 Silverlight 4 应用程序创建负载测试。

(我不是 Silverlight 开发人员)

我正在使用以下工具:

Microsoft Visual Studio 2012 Ultimate 提琴手 2.4.4.5

我发现创建测试的方法是使用 Fiddler 获取 Silverlight 应用程序发出的 HTTP 请求,然后将它们导出为 Visual Studio Web 测试格式 (*.webtest)

但我认为这不是最佳方法,因为 Silverlight 应用程序上的某些操作没有被 Fiddler 记录,所以我认为它们是在客户端执行的,因此 Fiddler 无法检测到它们,这很有意义,但无论哪种方式,它们都需要一些时间来执行,我觉得我的测试并不完全可靠,因为 Fiddler 没有抓取 Silverlight 应用程序上执行的所有操作

另外,我的测试是通过 WCF 服务获取应用程序发出的 HTTP 请求/响应,而这正是 Fiddler 可以检测到的,所以我的测试实际上只是测试 WCF 服务调用,我认为我' m 缺少向用户显示结果所需的 Silverlight 处理时间

那么有没有更好的方法来为 Silverlight 应用程序创建负载测试? 或检测 Silverlight 应用程序何时加载?

我宁愿继续使用 Visual Studio 2012 Ultimate 而不是第三方工具,因为该公司已经支付了许可证,但我可以评估其他工具...

【问题讨论】:

我发现这个链接非常有用blogs.msdn.com/b/slumley/archive/2007/12/30/… 【参考方案1】:

如果您的目标是测试负载对服务器的影响,那么您唯一需要做的就是模拟流向服务器的流量。服务器只能看到这些消息 - 它不受客户端上发生的任何其他事情的影响。当然,它会受到消息时间的影响……因此,如果客户端中的某些内容导致消息速率发生变化,也应该进行模拟。

如果您的目标是测试客户端(Silverlight 应用)的性能,则无需进行负载测试。客户端不知道还有其他客户端在运行。它只看到它与服务器交换的消息。如果服务器的性能下降,这可能会反映在客户端应用程序中。但是你可以通过改变服务器的响应来模拟它。不需要并发和负载。在大多数情况下,您所需要的只是基本数学来确定服务器端减速对客户端的影响 - 例如。如果服务器响应时间从 2 秒变为 3 秒,则客户端的响应时间(如用户所见)通常会降低相同的量。在某些极端情况下这是不正确的,但通过正确的设置,您可以轻松地改变服务器上的响应时间来模拟任何可能的场景,包括那些难以或不可能通过负载测试持续复制的场景。

希望有帮助!

【讨论】:

以上是关于使用 Visual Studio 2012 Ultimate 进行 Silverlight 4 负载测试的主要内容,如果未能解决你的问题,请参考以下文章

visual studio 2012中如何查看一个工程需要哪些dll文件???

我可以使用 Visual Studio 2012 安装 Visual Studio 2010 SP1 SDK 吗?

Visual Studio 2012 未能检测到 Visual Studio 2008 构建工具

Visual Studio 2010 项目到 Visual Studio 2012

Visual Studio 2012 与 Visual Studio 2005 中的小程序慢得多

使用 Visual Studio 2012 和 SQL Server Management Studio 2012 运行 SQL Server CE 4 查询