According to Visual Studio: Load testing in the cloud, here are the steps to switch the test from using Visual Studio Online to running locally:
Simply open your existing project using Visual Studio 2013 first.
Within the Solution Explorer, expand the 'Solution Items' folder, then open Local.testsettings.
Edit the test settings file to configure your ...
There is never a general industry-wide answer to this sort of question. What might be "Key" for your company may very well not be "Key" for my company.
To answer this question for your specific context, find out what matters to the stakeholders you serve. Figure out what is important, what is not, and then determine what indicators can help you determine if ...
I have had some luck using Grinder. It is Java based but you can also write your scripts in Jython or Clojure.
You said that you would like to take advantage of your team's current Selenium scripts and expertise performance testing. You did not describe your regression test scripts, but you may want to reconsider whether they are appropriate. In ...
It is very likely you will get differing results. Especially in response times. This is mainly due to latency caused by the Geographical distribution. This will become important if response times is one of the metrics you are using to understand the website's ability to cope/scale under load.
A simple reflection of this is;
go to http://amazon.co.uk/
Answering the comments above,
Well I had Java and Jmeter installed correctly with ClassPath and everything. I also tried running Command Prompt as Administrator but got the same result. There was no problem in that. That is why the GUI version was working properly in first place.
After a lot of R&D and Googling I found out that the problem was with the ...
No. The items you mention scale very differently and there are far too many factors and resources that will get used.
For instance if I time requests on a local server using an application I'll find things like
1 user = 2 second response average (time per request)
10 users = 2.5 second average
100 users = 2.5 second average
1000 users = 20 second average
Does this actually catch, before production, many of the "surprise"
problems we might anticipate? Or is there a more fundamental flaw in
the approach that will cause deleterious changes to pass testing and
You are wise to have a test system that you can use for catching performance issues, but your "scaling" approach is flawed.
From Apache JMeter's website we get this,
Ability to load and performance test many different server/protocol
Web - HTTP, HTTPS
SOAP / REST
Database via JDBC
Message-oriented middleware (MOM) via JMS
Mail - SMTP(S), POP3(S) and IMAP(S)
Native commands or shell scripts
So I'm guessing you can't use it to load test Swing Application.
I'll assume you're just using JMeter as a type of Web Crawler with a fixed set of pages to consume, and you're only measuring response times and http status.
Create a thread group of 100 users
Place a CSV Data Set Config under the thread group
The CSV contains one URL per line
The CSV loads into a parameter named "URL"
A HTTP Sampler is used where the ...
You have 1 Master and 2 Slaves.
The total load being generated is 500 + 500 = 1000.
Since you mention that the server health is good during the test execution. Yet, you are getting an Internal Server Error (Error code 500).
Here's what you should try,
Run a test of maybe 500 user and while the test is running try to access the URL in a browser. If the ...
I learn Gatling using the resources I found online and experimentation. Just google "Gatling tutorial", there are plenty of links to pages showing Gatling basics, many focus on different aspects so it's useful to read a number of them. I
always found official resource helpful, The Gatling documentation 3.0 is pretty good as well, they also have an Advanced ...
Yes, there is a way possible to do this. You need to add a 'HTTP Request Default' configuration element from 'Configuration Elements' option i.e. Right click test plan and add this 'HTTP Request Default'.
In this 'HTTP Request Default' there is an option Connect in 'Timeouts (milliseconds)', you can specify your connection timeout value in this field and ...
You're taking the words out of context:
You should test at the maximum load that you expect to encounter. In order to accurately assess demand, you can run a 1% test to determine how much traffic will flow to your new service.
With regards to this assess demand recommendation, it's more about setting up the environment of proper size.
For example, you ...
If the system needs to scale to many concurrent users or work with lots of data, I would say load testing should be started as early as possible. This way possible problems in the application architecture can be found in a phase where it is still possible to fix them.
Let's say that the database schema is such that some queries will be ...
I would recommend JMeter as:
JMeter: free and open source
MSVS: Test Professional costs around $2000 per developer.
MSVS: Windows only
JMeter: HTTP, FTP, JDBC, SOAP, TCP, JMS, SMTP, POP3, IMSP
However if your company has Microsoft products based development infrastructure, like Team ...
Option 1: You can keep the user count as 1 and Loop count as 100 in your thread group. This way your script will be executed 100 times, without concurrency of users and one user at a time. you can use CSV file if you want to change the user login credentials and other data at each loop starting i.e. different data for different user.
Option 2: Another ...
A web search of the terms resulted in,
Scalability Testing, is the testing of a software application to measure its capability to scale up or scale out in terms of any of its non-functional capability.
Performance, scalability and reliability testing are usually grouped together by software quality analysts.
The main goals of scalability testing are to ...
There are no tools that can provide you client-side rendering times. Client side rendering is not a measurable value, unless all of the devices accessing the system are identical in terms of hardware and network access to the SUT.
However, It is completely viable to do a stopwatch test of the total page rendering time, as long as you communicate to the ...
Assuming the web application accesses a server then the purpose of many web performance tests is to see how the server behaves under load and whether high loads cause unwanted delays in responding to user activity. Also to see whether the system has headroom while coping with that load.
One part of the test could be to see that 95% of all web pages are ...
First you need to define what the "breaking point" is. There are a number of possibilities. The obvious problem would be if the web server itself crashes and stops responding, but there are a number of problems that can occur well before that point that in most cases would still be considered "broken".
Some other problems that could tell you your ...
In some cases transaction can stand for a single request but more often it is a series of requests representing a piece of business logic like:
User opens a site
User opens login page
User performs login
User does some stuff
User logs out
With some think times in between of course as a real life user doesn't hammer application continuously, he needs some ...
This greatly depends on the system you are running jMeter on and how heavy the test is. Your system does not look heavy enough for 10k concurrent users, from the jMeter documentation I get the feeling 1k is the target limit for each machine.
Have a look at http://jmeter.apache.org/usermanual/remote-test.html for running your tests from multiple remote ...
This is not only depended on the CPU of the computer, but also the operating system, memory and maybe disk IO speeds.
There is only one way to find out and that is to try it and ramp up until either the tests are failing or the computer crashes. Be sure to use a simple site that you know can handle more then you expect your single JMeter instance can.
Why your attempts failed:
your first attempt:
WebElement button = driver.findElements(By.cssSelector("button[@class='button' and @type = 'button' and @onclick = 'shippingMethod.save()']")).get(3); button.click();
The CSS selector is not valid - attributes should not start with @, and is not used to join conditions in the CSS selectors.
your second ...
Here you check.
There are 58 (and counting) free and open source load testing tools which you can utilize.
If you are looking for the narrowed-down list check out Open Source Load Testing Tools: Which One Should You Use? article which describes and compares the following tools:
There you will be able to find ...
Before anything, I would recommend you to think about an important point:
What is the main purpose behind your test?
Try to define your SLO/SLIs first (KPIs).
For example if the KPI is "throughput", then you need to think about what should be your scaling policy and allow Autoscaling to do the Adding/Removing instance job for you.
Obviously you can ...
As per Once Only Controller documentation:
The Once Only Logic Controller tells JMeter to process the controller(s) inside it only once per Thread, and pass over any requests under it during further iterations through the test plan.
So each your Thread will execute Once Only Controller's children only once, no matter how many loops your thread group will ...
AirieFenix, welcome to SQA. Here are some possible problems:
Your JMeter machine ran out of resources.
Your server is overwhelmed.
An intermediary (e.g. a proxy server or a load balancer on a DMZ machine) between your JMeter machine and the server is overwhelmed or is intentionally throttling network traffic.
Here are some ways to narrow things down:
You have been developing this system for 2 years and have never performed any load testing at all?
Preparing for expected load is usually part of the design. At this point, you are 2 years in, and may not have any evidence that your design is capable of supporting the required load. You do have performance and load requirements, right?
With any moderately-...
A few thoughts to add to the excellent suggestions others have made:
Yes, full end-to-end load tests should ideally happen after code is stable. These will be used to find bottlenecks in the interfaces between different components of your code. This kind of load test is probably what your QA people are thinking of when you say "load test" - and I'd hazard a ...