How can I run multiple instances of a SOAP web service in SOA enterprise manager? - oracle

I have created a synchronous SOAP web service in S.O.A. I'm using S.O.A enterprise manager to test it. What I want to do is to run multiple instances of it at a time. In S.O.A EM only one instance can be tested at a time.
Is there a way to run like 1000 instances of it so I can check the workload?
Is there a way to do it in S.O.A EM or do i have to use another software?
What I have tried is to open multiple windows of EM at a time, but it is not applicable when there are 1000 instances.

Enterprise manager is not suitable for advanced testing. You can just check that the service is alive and responds properly.
For functional testing I recommend using SoapUI. SoapUI is also capable for performance testing, but for higher workload I recommend JMeter.

Related

Can we run Jmeter test from different geo location simultaneously?

Can we run Jmeter test from different geo location simultaneously? I want to run laod test for a gaming application,so users have to be generated from different client locations(UK,US) to hit the server simultneously.players from different geolocations should hit the server at the same time.How to do that using Jmeter???
I would not recommend using JMeter distributed testing for that as it is more suitable that jmeter client and servers are in same LAN.
So you have 2 options at least:
orchestrate the running of autonomous JMeter instances using ansible or similar tools
Use a Paas like Redline13 that will allow you to easily do that using AWS with benefit of having all the JMeter setup done and have live aggregated report and final aggregated CSV and JMeter HTML dashboard
If you're load testing a server it doesn't make any difference for it where the request is coming from. In case you need to check how does the server behave under the load and what response time for different geo-locations look like you can do it manually using i.e. Amazon Micro instances which are free.
In case you don't want the manual steps you can run JMeter in distributed mode using a helper script like JMeter ec2 which automates deployment of JMeter slaves onto AWS machines but be prepared to higher connect time and latency metrics

Service Virtualization with JMeter

I am using JMeter for API Testing. Using HTTP Request and Beanshell I am able to achieve this.
There are times where the Services are down for a weeks time.
Since I the have the Request and Response with me, I would like to implement Service Virtualization using JMeter.
Even when the Services are down, I should be able to continue my testing.
Can I achieve Service Virtualization in JMeter? If yes, can I request you to let me know the steps please.
No you can't.
I suggest you check out API simulation tools which will allow you to do service virtualization. You can then use JMeter to run your tests and an API simulation tool to mock the dependencies.
JMeter doesn't do Service Virtualization, but you can use JMeter in recording, see article:
You can import the incoming traffic to JMeter using tcpreplay and
JMeter Proxy. Run a test suite in your performance environment using
JMeter and use the virtual services to decouple yourself from other
dependencies. Just to be safe, repeat the recording process every
week. This could prove to be very easy or very difficult to implement
depending on the specifics of the system you are working with.

What are websites or applications for practicing performance testing from home

I want to practice performance testing at home using some load testing tool like jmeter. Can anybody tell me some links of websites or applications on which I can practice performance testing by throwing load by load testing tool from home?
It is not a LEGAL way to conduct load/stress test on any live websites/web applications without the permission.
So, you can deploy your own sample application or download sample applications available online and deploy it in your local server like Apache HTTP server or Apache Tomcat etc.
From my knowledge, You can use WebTours sample application from HP LoadRunner as an application to put your load.
Download HP Load Runner community edition from here. free for 50 vusers for life time. You need to create an account in the website.
You can download the webtours application from the HP website (comes with Apache HTTP server, which acts as a Web server).
Setup WebTours as per the instructions here
Confirm the successful installation/configuration by accessing the application from the browser (similar to http://localhost:8080/WebTours). The app is about flight booking (though not in real time ;) ).
Now, you can use the WebTours application as an AUT (Application Under Test)
Either you can continue with Load Runner or download latest JMeter version (3.1 as of now)
JMeter tutorials:
Getting Started
Component Reference
Builiding a Test plan
For Load Runner, there is documentation available in the following link to start with:
http://lrhelp.saas.hpe.com/en/12.53/help/WebHelp/Content/WelcomeContent/c_Welcome.htm
There is community support available managed by HP.
Use the sample applications which ship with the tool
Take your choice of open source application, install them on servers you own, manage and control. Use these applications as targets.
You are welcome to use api.jmeter.ninja. I built it for that purpose. A more formal API declaration is on it''s way but you can start with
http://api.jmeter.ninja/example.html.
http://api.jmeter.ninja/objects.xml
http://api.jmeter.ninja/objects/${OBJECT}.XML
Where ${OBJECT} is taken from the objects.xml page.
Or swap xml for dot json for the same in Jason format.
Exercises/Tutorial is available at http://api.jmeter.ninja/jmeter.pdf
Currently I just use this service for my own training sessions. But I hope to make it more generally available in the near future. There a currently no automatic limits so please just use your common sense and don't run high at throughput for a sustained periods of time. Anything under a total 100k requests is no problem.
Only caveat is that service is provided on a best effort basis at this point. Any abusive/problematic users may be blocked without notice.

Integration testing with Web API - non-InMemory-tests or InMemory tests -

I would like to do integration testing on my Web API Controllers.
When the integration test starts the whole request/response pipeline of the Web API should be processed so its a real integration test.
I have read some blogs about non-InMemory-tests or InMemory tests. I need to know what is the difference and what of those approaches matches my above criteria?
I would really be glad about some explanations from people who really dealt with integration testing on Web API for self-hosting or IIS hosting (if there is a difference in testing...)
Not sure what you mean by non-in-memory testing but with integration testing involving an in-memory hosted web API, the requests are sent directly to the HttpServer, which is basically the first component to run in ASP.NET Web API pipeline. This means, the requests do not hit the network stack. So, you don't need to worry about running on specific ports, etc and also if you write good amount of tests, the time it takes to run all your tests will not be too big, since you deal with in-memory and not network. You should get comparable running times as a typical unit test. Look at this excellent post from Kiran for more details on in-memory testing. In-memory testing will exercise all the components you setup to run in the pipeline but one thing to watch out for is formatters. If you send ObjectContent in the request, there is no need to run media-formatters, since the request is already in deserialized format and hence media formatting does not happen.
If you want to get more closer and willing to take a hit on the running time, you can write your tests using a self-host. Is that what you mean by non-in-memory testing? As an example, you can use OWIN self-hosting. You can use Katana hosting APIs and host your web API and hit it with your requests. Of course, this will use the real HttpListener and the requests do traverse the network stack although it is all happening in the same machine. The tests will be comparatively slower but you get much closer to your prod runs probably.
I personally have not seen anyone using web-hosting and doing lots of integration testing. It is technically possible to fire off your requests using HttpClient and inspect the response and assert stuff but you will not have lot of control over arranging your tests programatically.
My choice is to mix and match, that is, use in-memory tests as much as possible and use Katana-based host only for those specific cases I need to really hit the network.

How to load test web application developed on asp.net mvc3?

I want to load test the web application that we're working on? Can you name some automated load testing tool for a website developed on asp.net mvc3? I would like to develop it for concurrent 100 users, 200 users and so on. We want to test it with many users and test the load that creates on the application and server.
BTW, we're also running profiler at the same time to find the application bottlenecks so that we can find code that is slow that we can improve.
There are a number of different options; they vary in all kinds of exciting ways.
I use the open source Apache JMeter for this kind of testing - it's not hugely user friendly, but is very powerful once you get used to it, and the lack of licensing restrictions means you can use it in all sorts of configurations.
Some of our projects have glued JMeter into the continuous integration cycle, running performance tests on nightly builds. Some projects need to scale to huge numbers of users, and we use JMeter in the cloud (there are some service providers who can do this too).
it works nicely with Asp.Net MVC apps.
We are currently load testing our MVC application and the external company uses a product called LoadRunner.
However, depending on how intricate your testing is you could use the WebClient class as a base to run your own volume tests.
Web Performance Load Tester works very well with .NET apps. We test a lot of them (disclaimer: I work for Web Performance and am closely involved with the product).
We have integrated with Fiddler load testing tool called StresStimulus

Resources