9

We have around 15 wcf services hosted in windows service. Some of the are in .NET 4.0 and some in .NET 3.5.

I would like to know how to perform load/stress/performance testing of wcf services hosted in windows service. The client uses .net tcp binding to communicate with the services. Also, most of the API's return a stream for performance's sake.

I was able to find some tools for wcf service testing hosted in IIS but dont know a way to do load/stress/performance testing for services hosted in window service.

Any help is appreciated. Thank you.

Tad Donaghe
  • 6,625
  • 1
  • 29
  • 64
Everything Matters
  • 2,672
  • 4
  • 25
  • 42
  • 1
    if you like to share what tools did you find for WCF services hosted in IIS – Surjit Samra Nov 22 '11 at 14:29
  • 2
    @SurjitSamra - see [this post](http://stackoverflow.com/questions/221973/load-testing-wcf-service-hosted-on-iis) related to WCF testing in IIS. – SliverNinja - MSFT Nov 22 '11 at 15:37
  • @SurjitSamra - But my services are hosted as windows services and i use net.tcp binding. – Everything Matters Nov 30 '11 at 13:01
  • When its Services then I prefer Service Unit Test cases which actually means to perform one Business Event eg, 1) CreateACustomer 2) CheckValidCustomer 3) ValidAddress 4) etc. and then I use these tests for both Windows host and Web host Services. These tests as developed as MSTest and then they run as simple Console application. – Surjit Samra Nov 30 '11 at 13:10

3 Answers3

4

You can refer the simple steps from here for load and performance testing of WCF service

Sandeep Kumar
  • 783
  • 1
  • 5
  • 13
2

What about 6 Different Ways to Testing a Web Service?

Here a quick how-to to implement WS testing using jmeter.

And look into these 2 posts - they seem relate to your problem:
1. WCF with tcp.net binding testing with JMeter
2. How to test a WCF Webservice with JMeter?

Community
  • 1
  • 1
Aliaksandr Belik
  • 12,725
  • 6
  • 64
  • 90
1

You should be able test using Visual Studio 2010 Ultimate edition. The basic process is to simulate http requests.

The easiest way I can image would be to create an app to call the web service you want to test in a pattern similar to that way you expect normal applications to call it. Use Fiddler2 to record the https session. Save the session as a visual studio web test. Load the webtest into Visual Studio and convert it to a coded web test. This allows you to control the security etc that is uses against the web service.

Visual Studio 2010 Ultimate edition is required to run the load tests, but webtests are creatable with normal editions. Really hard out testing also requires a licence for the virtual user packs, but the Ultimate edition allows testing up to 250 virtual users with a single CPU. This is enough to get a good idea of the performance profile of the webservice.

Nat
  • 14,175
  • 5
  • 41
  • 64