A service-level agreement is an agreement between two or more parties, where one is the customer and the others are service providers. This can be a legally binding formal or an informal "contract" (for example, internal department relationships).
The agreement may involve separate organizations, or different teams within ...
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 ...
Well I don't think JMeter will help you do performance or load testing of the click action/event of a button. If the click of a button makes an HTTP request to the server, then you can most definitely do performance or load testing for that.
How JMeter works is, it takes an HTTP request and throws the specified number of instances (threads/users) on the ...
As you have mentioned that when you access the application without a proxy it works fine, but when using via proxy (recording script for JMeter) you are not able to access the application.
From this I understand you are using JMeter's built-in script recorder. Well it does create some problems some times, because some applications don't work well on proxy.
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.
If you already have a .jtl result file you can do it like:
jmeter -g /path/to/jtl/file -o /where/you/want/to/store/dashboard
If you would like the dashboard to be generated after the test run, you can run JMeter in command-line non-GUI mode like:
jmeter -n -t /path/to/testplan -l /path/to/result.jtl -e -o /path/to/dashboard/folder
See Full list of ...
This is not QA decision but business decision. If performance is satisfactory for the customer - it is good enough.
Also remember that the most important speed is speed to the market - deliver most value for your customers to make money to support additional development of the product. If product is late to the market, and is beaten by inferior competition, ...
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 ...
I have put together a really simple article of doing performance testing with Jmeter over here - http://testcy.co.in/performance-testing-jmeter. Even novice users with not much technical knowledge of code can do performance testing using this method.
For more tutorials, here you go,
It's not exactly clear what question you are asking, but let me take a stab.
I would deal with it by creating a bug report. In it, I would mention what you are seeing in Commit A, and Commit B. I'd mention that the combination of the two pushes performance past the prescribed limits.
From a QA point of view, it's not important at all in which Commit the "...
Throughput: This is the number of requests that are successfully executed/serviced per unit of time. For example, if the throughput is 50/minute, this means that on your server, per minute, 50 requests are executed successfully (accepted, processed and responded properly).
Hits per second: This is the load with which the server is being hit. It means x ...
The terms “performance requirement” or “performance attribute” are preferred over “non functional requirement” according to the most recent update of The IEEE Standard for Software Quality Assurance Processes 730-2014 Definitions.
The IEEE Standard for Software Quality Assurance Processes 730-2014 defines Performance requirement as the measurable criterion ...
Please see the following link:
The 'number of threads' are equivalent to the number of concurrent users that you are looking for. In your scenario above, you have 20 concurrent threads (users) and each thread will run 10 times.
First of all, you need to know how to connect your mobile phone with Charles proxy.
Here are the quick and easy steps to set this up (I am using iPhone, but you can also connect android devices using step in this post: Debugging HTTP on an Android phone or tablet with Charles proxy for fun and profit.
Make sure that your iOS device and your laptop are ...
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 ...
The easiest way to resolve this issue is to place the CSV file on all servers (Master and Slaves) inside the Bin directory of JMeter and don't specify any path for the CSV file inside the your JMeter test plan i.e. don't use C:\Data\Files\abc.csv in your test plan, use only abc.csv (and place this file in Bin directory). Also, it will be good to keep the ...
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 ...
It depends on what your test is doing. If it's something long enough - it will be 20, if it's something very short - it'll be 1.
JMeter offers several options to control the load. In particular the most commonly used elemends are:
Synchronizing Timer - to pause threads unless certain number will be reached and fire them all at the same time.
'Also JMeter concurrent threads are not "concurrent users" as real-life people do pauses between actions on web pages. If you don't set any pauses in your tests then 20 concurrent threads will stand for something like 200-250 concurrent users.'
Yes, I am in an argument with a client about this fact. They are thinking 50 Threads = 50 Users. But there are no ...
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 ...
JMeter is a good choice. Kindly find answers on your queries below:
Also, I'm not sure if I can define requests dynamically, based on the results of previous request.
You can. Particularly for REST web services I would recommend installing Extras with Libs Set of JMeter Plugins project which provides JSON Path Extractor so you will be able to work with ...
First ask your client that 'How many users their website intend to support?' From client you should get the number of users during Peak Load (Y) and Normal Load (X) and their expected Response Time, some clients say make it as fast as possible, but never go for this wording, ask him about the numbers.
Then start running your script from 1 to X to Y in an ...
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.
The question of whether a performance bug is a blocker depends entirely on whether it stops a user from doing whatever they are trying to do with the software.
I have worked on software that took over 24 hours to run, during which the machine couldn't be used for anything else; that wasn't considered a bug at all, because the user workflow was to start that ...
A few things to consider come to mind:
Only run in Chrome
Controversial huh? Let me explain more fully though. My question for multi-browser and indeed multi-device (responsive web sites) testing is always what kind of browser / device specific issues have we seen and do we expect to see? How many browser specific errors have occurred in the last year. ...
The answer to this question is obvious: it depends.
As an example, the customer complained on that the report generation pages takes a lot of time ~ 4 minutes to generate the report.
Our developers were not able to fix the performance without rewriting the legacy code from scratch. So they just added “ajax-like” loading indicator. Well… our customers were ...