Our application uses a windows services to send notifications through email, pager, fax and mobile. We want to do performance testing of the windows service like how many notifications can the service handle in a given time perios. What happens if we flood the service with a large number of notifications.
Please recommend a tool, preferably open source for this. We are already evaluating LoadRunner for the same. Web based tools like Open STA do not support the windows service.
What is the protocol for submitting requests to the windows service? That will likely determine which tools are available to you.
Another option you might consider: custom tooling. This requires skills (or access to them) that not everyone has, but it can solve a specific problem when expertise applied to building the application can help with a load driver.
If you can build a test program that builds these requests and sends them (this needs to be highly configurable), and use Perfmon for performance counter monitoring, you are getting close to being ready to load test.
What's left to achieve parity with most tools is response checking, reponse time recording, and a reporting framework. Maybe you can live without response time information, or you can figure out how to derive that information in another way.
Not saying that is a great solution, and in many contexts, it would be a terrible one. In certain contexts (usually more talent and time than budget), it can work.
Be sure and involve the service providers who are going to be impacted by this test in your planning. They may have the ability to stub out calls coming from your system such that the messages are not actually placed on the wire.
You might also consider an interface simulator to replace the calls to the email, pager, fax and mobile gateways to prevent the messages from leaving your test network.