WCF负载/性能测试

时间:2009-07-26 06:00:35

标签: .net wcf

我对模拟试图同时调用WCF服务的许多客户端感兴趣,我需要测量每个客户端的平均响应时间。 是否有任何好的工具可用于负载/压力测试WCF服务,它有多个端点(wsHttp,netTCP等)。我听说SOAPUI是最流行的测试工具,但是我不太确定它在测试WCF服务时有多大的影响,因为SOAPUI只能将服务作为经典的ASMX服务使用(basicHttpBinding) )。

虽然没有直接相关性,但该服务在幕后使用Entity Framework在一个小对象图(5-10个实体)上执行一些Insert操作,我注意到调用SaveChanges并不像我想的那么快它是。 我的场景是大量客户端调用服务传递一个非常小的数据集作为输入(一个50-10 int ID的数组)

PS - 我不打算使用WCF测试客户端

5 个答案:

答案 0 :(得分:2)

我没有使用它,但请查看CodePlex上的WCF Load Test

答案 1 :(得分:0)

您可能会发现,在传统的单元测试运行器下托管您的测试非常简单。特别是,Visual Studio测试框架提供的一个功能是定时性能测试和用于呈现结果的简洁UI。

或者在NUnit或类似的情况下使用自定义时间测量类也非常简单。

答案 2 :(得分:0)

如果您使用Visual Studio Team System it has a Load Test template type。如果你有它,这绝对是你想要的。

答案 3 :(得分:0)

我评估了一个名为Parasoft SOATest的工具。它非常强大,但我只是在玩这个工具时划伤了表面。它可以与Net.Tcp一起使用,并具有各种负载测试功能,包括分布式代理,参数化测试,使用xpath的测试结果断言等。但优先级已更改,工具也非常昂贵,因此我们最终没有使用它。但是你可以随时从他们那里获得一个试用密钥,看看它是否适合你的目的。

答案 4 :(得分:0)

如果您可以购买任何工具,请尝试WCFStrom,否则创建一个自己的工具。

系统化服务输入,通过在工具中读取这些分离的数据并调用相应的服务并记录所需的时间,存储的服务数据以及您需要分析的任何其他数据。