Re: Is this a bug? Cookies are in the Request Body...
I see the same thing I saw on my test. When I tried your simplified test with 2 requests to "https://www.google.com;... Here's my setup: Test Plan Cookie Manager Thread Group HTTP Request (https://www.google.com) HTTP Request (https://www.google.com) View Results Tree The 2nd request's "Request Headers" look like this (no "Cookie:" header): Connection: keep-alive Host: www.google.com User-Agent: Apache-HttpClient/4.5.13 (Java/1.8.0_333) But the second request's "Request Body" looks like this: GET https://www.google.com/ GET data: Cookie Data: 1P_JAR=2022-07-16-13; AEC= It is the "Cookie Data:" in the request body that is confusing me (and the corresponding lack of a "Cookie:" request header). I was under the impression that there needed to be a 'cookie:' header for the server to see the cookie... If I switch the View Results Tree to show the HTTP view of the request instead of the "Raw" view - it does show the cookie as a request header. So is this just a goofy way the View Results Tree shows the output, or is this a bug? -- Robin D. Wilson CELL: 512-426-3929 rwils...@gmail.com On Sat, Jul 16, 2022 at 5:57 AM Felix Schumacher < felix.schumac...@internetallee.de> wrote: > Without seeing your test, it is a bit difficult to answer without guessing. > > Guessing, I would say, the cookie has a secure flag set and you are using > http (which is not considered secure). > > Try a simple test case for yourself, add a cookie manager, a view results > tree and two samplers to www.google.com (get, no parameters needed). Run > it. You should see the cookie data in the request tab of the second sampler. > > Felix > Am 15.07.22 um 01:08 schrieb Robin D. Wilson: > > I have set up a Cookie Manager config element in my Test Plan. > > I am not seeing the 'cookie:' header value in my request. I'm using a 'View > Results Tree' to view the request/response for a simple HTTP request series > that has a cookie being set. If I look at the 'Raw' Text request data, I > see no 'Cookie:' header in the Request Headers, but I see a "Cookie Data:" > section in the "Request Body" section. I was under the impression that > Cookie was a 'header' in the HTTP request. > > I've only seen cookies set with the "Cookie:" header, so I'm not sure what > I'm misunderstanding here... > > -- > Robin D. Wilson > CELL: 512-426-3929rwils...@gmail.com > >
Is this a bug? Cookies are in the Request Body...
I have set up a Cookie Manager config element in my Test Plan. I am not seeing the 'cookie:' header value in my request. I'm using a 'View Results Tree' to view the request/response for a simple HTTP request series that has a cookie being set. If I look at the 'Raw' Text request data, I see no 'Cookie:' header in the Request Headers, but I see a "Cookie Data:" section in the "Request Body" section. I was under the impression that Cookie was a 'header' in the HTTP request. I've only seen cookies set with the "Cookie:" header, so I'm not sure what I'm misunderstanding here... -- Robin D. Wilson CELL: 512-426-3929 rwils...@gmail.com
Re: Need help with User Defined Variables
Thank you all. I am following your advice, and it is working for me. -- Robin D. Wilson CELL: 512-426-3929 rwils...@gmail.com On Fri, Jul 1, 2022 at 1:29 AM Dmitri T wrote: > As per documentation > < > https://jmeter.apache.org/usermanual/component_reference.html#User_Defined_Variables > >: > > Also, the variables are not available for use until after the element > has been processed, so *you cannot reference variables that are defined > in the same element*. You can reference variables defined in earlier > UDVs or on the Test Plan. > > and > > UDVs are processed in the order they appear in the Plan, *from top to > bottom*. > > so if you want to reference an already defined variable you need to add > another UDV element below the "initial" one and it should start working. > > More information: Using User Defined Variables > < > https://guide.blazemeter.com/hc/en-us/articles/207421395-Using-User-Defined-Variables > > > > > On 6/30/2022 6:58 PM, Robin D. Wilson wrote: > > I'm trying to setup a test with User Defined Variables. > > > > I want to define a variable "ENV" that specifies whether the test will > run > > in the 'dev' environment, or not. (Basically, if set it will modify all > of > > the 'hosts' I hit with '-dev' on their hostnames.) > > > > So I want to setup the following type of variables: > > > > ENV = "-dev" > > HOSTNAME = "myhost${ENV}" > > > > Then when the test runs, if "ENV" = "-dev", the HOSTNAME would be > > "myhost-dev", but if I change "ENV" to "" (null), the HOSTNAME would be > > "myhost". > > > > But the User Defined Variables apparently don't use previously set > > variables in the config? Because what I am getting for "HOSTNAME" is > > "myhost${ENV}"... > > > > -- > > Robin D. Wilson > > CELL: 512-426-3929 > > rwils...@gmail.com > >
Need help with User Defined Variables
I'm trying to setup a test with User Defined Variables. I want to define a variable "ENV" that specifies whether the test will run in the 'dev' environment, or not. (Basically, if set it will modify all of the 'hosts' I hit with '-dev' on their hostnames.) So I want to setup the following type of variables: ENV = "-dev" HOSTNAME = "myhost${ENV}" Then when the test runs, if "ENV" = "-dev", the HOSTNAME would be "myhost-dev", but if I change "ENV" to "" (null), the HOSTNAME would be "myhost". But the User Defined Variables apparently don't use previously set variables in the config? Because what I am getting for "HOSTNAME" is "myhost${ENV}"... -- Robin D. Wilson CELL: 512-426-3929 rwils...@gmail.com
Include controller and Module controller
Am I not allowed to use an include controller within an include controller? That is, I have a test fragment that has include controllers, with module controllers in the test fragment. I try to include the test fragment in a larger test (using an Include controller and a module controller), but the larger test throws an error that it can't find the included file. -- Robin D. Wilson Voice: 512-426-3929 <mailto:rwils...@gmail.com> rwils...@gmail.com
RE: How would you go about creating a new Thread Group type?
The behavior I have explained is observed. I see a test run for 10+ minutes with 100 threads, then I see the active thread count drop off consistently at the end of the test well before I hit the end of the test. If all the threads were on the same loop, then the smallest possible number of completed threads would be the loop count subtracted from the total threads. (E.g, if there were going to be 1 loops for each sampler, I would expect to see the last sampler to have at most 9901 incomplete threads when the test begins to wind down. But I have observed that the test actually begins to wind down with 8000 (give or take a few) and then continues to finish running threads until it finally completes all 1 loops. This means that there are many threads that are not on the last loop when the first thread finishes its last loop. BUT, when I use the CSV file, I don't see the same behavior. I see what I want - which is that I maintain all 100 threads until the number of remaining loops passes the '9900'. Also, your assertion is mistaken, simply because you and I are not apparently talking about the same things. A 'thread-loop' is 1 thread running through all of the steps in a thread group one time. This is the thing that is taking 10-20 seconds. And the timing is variable depending on what is going on in the test. If you want to just simulate the behavior, setup a web page that waits between 0 and 5 seconds to respond (using a random number generator). Then run a test against it with 100 simultaneous threads and 100 loops. You will see what I'm talking about. -- Robin D. Wilson Voice: 512-426-3929 rwils...@gmail.com -Original Message- From: Deepak Goel [mailto:deic...@gmail.com] Sent: Friday, October 21, 2016 9:09 AM To: JMeter Users List <user@jmeter.apache.org> Subject: RE: How would you go about creating a new Thread Group type? your assumption that the slowest thread takes 20sec and the fastest thread takes 10 sec is false. Usually the difference is in milliseconds and over a period of time, it becomes zero. All threads receive their answer in about the same time..they have to wait or queue for the same time On Oct 21, 2016 6:31 PM, "Robin D. Wilson" <rwils...@gmail.com> wrote: > If you have a thread group with 10 HTTP Request samplers in it (or > 100, or 1000, whatever the number is - the more you have, the more > pronounced this concern will become), and you run a thread that steps > through each of the samplers in sequence, some threads will get done > sooner than others - that is practically guaranteed - since there is > no way that the server will respond identically quickly to each request. > > So, after 1 loop through your test plan you will have a bell curve of > times it took for each thread to complete the loop. A few threads will > have completed relatively fast, a few will have completed relatively > slower, and the bulk of the threads will have completed with times > somewhere in the middle. Let's say that the fastest thread completes > the full set of requests for the loop in 10 seconds. And the slowest > thread completes the loop in 20 seconds. For argument's sake, let's > say that the differential between fastest and slowest is not > necessarily due to the capacity of the server, but just an artifact of > random chance - the fastest thread caught all the green lights, and > the slowest thread caught all the red lights (e.g., i/o blocking, lock waits, > network congestion back offs, etc.)... > > If you re-start the loop for each thread, as soon as it completes the > last loop - then the fast threads will restart much earlier than the > loops that are completing on the slower end of the curve. In fact, > given that the 'fastest' time was only 10 seconds, and the slowest > time was 20 seconds - there is a non-zero chance that the fastest > thread could actually complete another full loop by the time the > slowest thread is completing its first full loop. > > If you assign the loops based on a pure division of "number of loops / > number of threads", you will assure that each thread has an equal > number of loops. But you will also assure that some threads complete > their total number of loops well before other threads complete their full set > of loops. > Moreover, the longer your test run is, the wider the disparity will be > between the threads that reach their full loop count early, and the > threads that finish the full loop count last. Such that, the slower > running threads may be running their last several loops while the > faster threads have completely died off - meaning that the last few > threads will be running while the machine is under a progressively lighter > load. > > Clearly, you can't help this from happening during the 'last' loop for &g
RE: How would you go about creating a new Thread Group type?
If you have a thread group with 10 HTTP Request samplers in it (or 100, or 1000, whatever the number is - the more you have, the more pronounced this concern will become), and you run a thread that steps through each of the samplers in sequence, some threads will get done sooner than others - that is practically guaranteed - since there is no way that the server will respond identically quickly to each request. So, after 1 loop through your test plan you will have a bell curve of times it took for each thread to complete the loop. A few threads will have completed relatively fast, a few will have completed relatively slower, and the bulk of the threads will have completed with times somewhere in the middle. Let's say that the fastest thread completes the full set of requests for the loop in 10 seconds. And the slowest thread completes the loop in 20 seconds. For argument's sake, let's say that the differential between fastest and slowest is not necessarily due to the capacity of the server, but just an artifact of random chance - the fastest thread caught all the green lights, and the slowest thread caught all the red lights (e.g., i/o blocking, lock waits, network congestion back offs, etc.)... If you re-start the loop for each thread, as soon as it completes the last loop - then the fast threads will restart much earlier than the loops that are completing on the slower end of the curve. In fact, given that the 'fastest' time was only 10 seconds, and the slowest time was 20 seconds - there is a non-zero chance that the fastest thread could actually complete another full loop by the time the slowest thread is completing its first full loop. If you assign the loops based on a pure division of "number of loops / number of threads", you will assure that each thread has an equal number of loops. But you will also assure that some threads complete their total number of loops well before other threads complete their full set of loops. Moreover, the longer your test run is, the wider the disparity will be between the threads that reach their full loop count early, and the threads that finish the full loop count last. Such that, the slower running threads may be running their last several loops while the faster threads have completely died off - meaning that the last few threads will be running while the machine is under a progressively lighter load. Clearly, you can't help this from happening during the 'last' loop for every thread, since each thread must stop once it has completed a full loop - if there are no more loops left to run. But if you don't really care how many times each thread runs a loop, you could schedule the loops from a queue - where instead of pre-calculating the total loops for each thread, you just maintained the total number of loops you needed for the test to run, and each thread would just decrement the count when it finished its previous loop. Once the count drops all the way to '0', all of the threads still running would complete their final loops, and the test would be done. BUT no threads would be starting new loops while the server was under a lighter load (even though they would complete their last loops while the load steadily declined). Sebb's suggestion of just using a CSV file to count the loops accomplishes this exact requirement. If I want a test to run 100,000 loops, I just supply a CSV file with 10 records it. Then I set the Thread Group to run "Infinite" loops, and set the CSV file to stop on EOF. The test runs until the 10th record is retrieved from the CSV file, and once that loop starts - the threads all stop when they finish their most recent loop because they can't get another record from the CSV. (HINT: you can give the CSV variable a name like 'loop_count', and make your CSV file contain records that count up from 1-10, and you will also gain a variable that tells you which loop you were on for specific sets of requests.) This isn't a huge concern, just a way to make sure that you maintain the same relative server load all through the duration of the test. -- Robin D. Wilson Voice: 512-426-3929 rwils...@gmail.com -Original Message- From: Deepak Goel [mailto:deic...@gmail.com] Sent: Friday, October 21, 2016 1:46 AM To: JMeter Users List <user@jmeter.apache.org> Subject: Re: How would you go about creating a new Thread Group type? I am not sure I understand your problem correctly... Why would the load be reduced to 99 threads? As the threads which haven't finished their earlier cycle are still running...they are spending time finishing their previous request (which would also indicate a problem with the server responding the request) Hey Namaskara~Nalama~Guten Tag~Bonjour -- Keigu Deepak 73500 12833 www.simtree.net, dee...@simtree.net deic...@gmail.com LinkedIn: www.linkedin.com/in/deicool Skype: thumsupdeicool Google talk: deicool Blog: http://lov
RE: How would you go about creating a new Thread Group type?
The idea with the CSV data set works perfectly. Seems like a good workaround... But I'd still like to experiment with building my own Thread Group widget... -- Robin D. Wilson Voice: 512-426-3929 rwils...@gmail.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Monday, October 17, 2016 4:23 PM To: JMeter Users List <user@jmeter.apache.org> Subject: Re: How would you go about creating a new Thread Group type? On 17 October 2016 at 22:08, Robin D. Wilson <rwils...@gmail.com> wrote: > Just throwing this out there - to see if anyone wants to lead a > code-level newbie down the right path. I've been using JMeter for > 8-9 years now, and really like it. But one thing that bugs me is the > way the Thread Group works. Specifically, the idea of the "loops" bothers me. > > > > Consider this scenario: > > > > 1) 100 "users" (e.g., threads) > > 2) 10 loops > > 3) Test has 10 HTTP Requests in it > > > > By this logic, you should end up with 100 (users) X 10 loops X 10 HTTP > Requests = 10,000 requests. > > > > And you do. > > > > BUT, what you actually get when you run the test isn't as clear as you > think. It is basically 100 threads, each running 10 times, and each thread > loop running 10 HTTP requests in sequence. > > > > Here's the problem, if thread 1 completes its 10 loops in 100 seconds, > but threads 2-100 take 200 seconds to complete their 10 loops. The > load will be reduced to only 99 simultaneous threads (users) for the > last 100 seconds of the test run. That's not a 'huge' deal, but it can > affect the perception of the test if you look at it more like threads > 1-50 finish in 100 seconds, and threads 51-100 take an extra 100 > seconds after that to complete. Then only half of your test cycle was > at the required 'max' load you wanted to create, while the other half > was at 50% of the required load. (It is reasonably possible that I'm > just misinterpreting how it actually works, but it appears to work > like this from my experience since I can see threads continuing to > process after some threads appear to stop - and it lasts longer than > it takes to get through the entire cycle - sometimes for several > minutes at the end of a test run.) > > > > I'd like to create a new Thread Group that doesn't assign the thread > to the loop until it starts again at the top of the cycle. So if > thread-1 finishes really fast, and there are still loops to run - it > just picks up another loop and runs it. I would always want to > maintain at least 100 threads executing, so long as there were loops left to > run. So basically, you multiply the number of loops by the number of threads > (1000 in my example), and your 100 threads always restart until there are no > loops left to run. Then the longest period you have where you aren't fully > loading the servers is just the last loop for every thread. > You can probably do this by using a CSV Data set with 1 entries. Each thread picks the next entry (does not matter what it is) and runs the test samples. When all the entries have been used up, stop the test. But the normal way to do this is to make sure that the test runs for long enough that startup and shutdown variations don't affect the results. > > BUT, I am not 100% sure where I would start in the source code. I have > programmed before (a long time ago), but if someone could point me in > the right direction (like, which source files would need to be modified, and > how would I register my new Thread Group as a different option), I think I > could figure it out pretty quickly. > > > > -- > > Robin D. Wilson > > <mailto:rwils...@gmail.com> rwils...@gmail.com > > > - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
How would you go about creating a new Thread Group type?
Just throwing this out there - to see if anyone wants to lead a code-level newbie down the right path. I've been using JMeter for 8-9 years now, and really like it. But one thing that bugs me is the way the Thread Group works. Specifically, the idea of the "loops" bothers me. Consider this scenario: 1) 100 "users" (e.g., threads) 2) 10 loops 3) Test has 10 HTTP Requests in it By this logic, you should end up with 100 (users) X 10 loops X 10 HTTP Requests = 10,000 requests. And you do. BUT, what you actually get when you run the test isn't as clear as you think. It is basically 100 threads, each running 10 times, and each thread loop running 10 HTTP requests in sequence. Here's the problem, if thread 1 completes its 10 loops in 100 seconds, but threads 2-100 take 200 seconds to complete their 10 loops. The load will be reduced to only 99 simultaneous threads (users) for the last 100 seconds of the test run. That's not a 'huge' deal, but it can affect the perception of the test if you look at it more like threads 1-50 finish in 100 seconds, and threads 51-100 take an extra 100 seconds after that to complete. Then only half of your test cycle was at the required 'max' load you wanted to create, while the other half was at 50% of the required load. (It is reasonably possible that I'm just misinterpreting how it actually works, but it appears to work like this from my experience since I can see threads continuing to process after some threads appear to stop - and it lasts longer than it takes to get through the entire cycle - sometimes for several minutes at the end of a test run.) I'd like to create a new Thread Group that doesn't assign the thread to the loop until it starts again at the top of the cycle. So if thread-1 finishes really fast, and there are still loops to run - it just picks up another loop and runs it. I would always want to maintain at least 100 threads executing, so long as there were loops left to run. So basically, you multiply the number of loops by the number of threads (1000 in my example), and your 100 threads always restart until there are no loops left to run. Then the longest period you have where you aren't fully loading the servers is just the last loop for every thread. BUT, I am not 100% sure where I would start in the source code. I have programmed before (a long time ago), but if someone could point me in the right direction (like, which source files would need to be modified, and how would I register my new Thread Group as a different option), I think I could figure it out pretty quickly. -- Robin D. Wilson <mailto:rwils...@gmail.com> rwils...@gmail.com
RE: Retrieve All Embedded Resources from HTML files not working
I think you answered your own question. The Retrieve All Embedded Resources doesn't execute any JavaScript or CSS, it just gets the things that are directly included in pure HTML tags within the page, so things like:
RE: Retrieve All Embedded Resources from HTML files not working
That is hard to say in a void... So many questions come to mind: 1) What version of JMeter are you using? 2) How are you using it (command-line, GUI)? 3) Which OS are you running JMeter from (Windows, Linux, etc.)? 4) How are you observing the behavior (e.g., why do you think it isn't working)? 5) How is your Embed setup (there is a field for a regex to match patterns you want to retrieve - did you setup a pattern for this, and there are other options - what are they set to)? Try to think of all the information you would need to figure out something like this - and then try to provide that as part of your question. -- Robin D. Wilson Voice: 512-426-3929 <mailto:rwils...@gmail.com> rwils...@gmail.com From: Prakash Palnati [mailto:prakash.paln...@snapwiz.com] Sent: Wednesday, April 13, 2016 8:13 AM To: JMeter Users List <user@jmeter.apache.org> Subject: Re: Retrieve All Embedded Resources from HTML files not working Thanks for the quick reply. Tried with simple registration in our webapp. doesn’t seem to be downloading anything. Will there be any other reasons or pre-requisites to make this happen. PFA of my jmx file. On Wed, Apr 13, 2016 at 6:28 PM, Robin D. Wilson <rwils...@gmail.com <mailto:rwils...@gmail.com> > wrote: Have you tried a simplified test with a single page retrieving all embedded resources? I'm guessing the error is not in the feature that works for everyone else - but somewhere else in your 'complex testplan'. The best way to figure out this stuff is to isolate the problem to the simplest test case first, then that will give you a place to focus your attention in your complex test cases. -- Robin D. Wilson Voice: 512-426-3929 rwils...@gmail.com <mailto:rwils...@gmail.com> -Original Message- From: Prakash Palnati [mailto:prakash.paln...@snapwiz.com <mailto:prakash.paln...@snapwiz.com> ] Sent: Wednesday, April 13, 2016 7:42 AM To: JMeter Users List <user@jmeter.apache.org <mailto:user@jmeter.apache.org> > Subject: Retrieve All Embedded Resources from HTML files not working Hi, The checkbox "Retrieve All Embedded Resources from HTML files" not working ..it doesn't download any embedded resources. I have build a complex tesplan with multiple scenarios in it. Now I want to run the performance test with embedded resources included.It is diffiuclt now to record each and every flow now to include them. Thanks in advance. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org <mailto:user-unsubscr...@jmeter.apache.org> For additional commands, e-mail: user-h...@jmeter.apache.org <mailto:user-h...@jmeter.apache.org>
RE: Retrieve All Embedded Resources from HTML files not working
Have you tried a simplified test with a single page retrieving all embedded resources? I'm guessing the error is not in the feature that works for everyone else - but somewhere else in your 'complex testplan'. The best way to figure out this stuff is to isolate the problem to the simplest test case first, then that will give you a place to focus your attention in your complex test cases. -- Robin D. Wilson Voice: 512-426-3929 rwils...@gmail.com -Original Message- From: Prakash Palnati [mailto:prakash.paln...@snapwiz.com] Sent: Wednesday, April 13, 2016 7:42 AM To: JMeter Users List <user@jmeter.apache.org> Subject: Retrieve All Embedded Resources from HTML files not working Hi, The checkbox "Retrieve All Embedded Resources from HTML files" not working ..it doesn't download any embedded resources. I have build a complex tesplan with multiple scenarios in it. Now I want to run the performance test with embedded resources included.It is diffiuclt now to record each and every flow now to include them. Thanks in advance. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Login test always returns success
Actually, you should only need the Response Assertion, the regular expression extractor would be necessary only if you needed to use the variable later in the test script. Keep in mind, adding 'parsers' to responses increases the amount of effort JMeter has to put into running the test - slowing JMeter down. While it is certainly necessary to have some of these elements in your test plan, it is best to keep them to the minimum necessary to complete the objective. -- Robin D. Wilson Sr. Director of Web/Java Engineering KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Vincent Lequertier [mailto:s...@riseup.net] Sent: Friday, June 05, 2015 8:19 AM To: JMeter Users List Subject: Re: Login test always returns success Got it to work through regular expression extractor and variable-based response assertion. Thank you for the pointer :-) --- Vincent Lequertier s...@riseup.net Le 2015-06-05 14:48, Bob Nance a écrit : Use a regular expression extractor to look for that string and act on it. Fail the test if you get that string. --- Bob Nance Novation Systems 256-534-4620 (iPhone-flavored) On Jun 5, 2015, at 7:37 AM, Vincent Lequertier s...@riseup.net wrote: Hi, I'm building a test plan to test login on a web app. I'm using an HTTP request with the POST method. If the credentials are incorrect, the website is returning an alert() in javascript, like this: script language=JavaScript alert('le code utilisateur et/ou le mot de passe sont incorrects'); /script And the URL returned looks like this: x/login.do?login_error=1 Actually, although the login fails, the test returns success because IMHO jmeter does not take care of that. How can I make jmeter analyse the response from the request so it can grab the javascript code and/or URL and then indicates the error? As I'm new to the jmeter world, can someone provide me a step by step to do this? Let me know if you need more infos. Thanks in advance for any help. -- Vincent Lequertier - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: How to generate workload on a server (normal and stress workload)
. Of course, this will encounter a problem if you want to run your test twice against the same data (e.g., the first time you run your test script - you will create users user1 through user1, but then when you start your test over - it will try to create the same users again). So we use a combination of a date stamp and a numerical counter. The date stamp would be different each time I run the test, and the counter would increment for the various threads (simultaneous users) as the test is running. You can also use built-in variables like 'thread number' and things like that for your tests. Once you build up a collection of simple tests, you can use the Include Controller and Module Controllers to create aggregate test scripts that include all of your simpler test scripts to make a more full-featured suite of tests. Hopefully this is enough to get you started. As always, it helps a ton to read the documentation. -- Robin D. Wilson Sr. Director of Web/Java Engineering KingsIsle Entertainment, Inc. www.KingsIsle.com -Original Message- From: Jackeline kordon [mailto:jacky.kor...@gmail.com] Sent: Friday, May 15, 2015 5:13 AM To: user@jmeter.apache.org Subject: How to generate workload on a server (normal and stress workload) Hi am a newbie.and it is an emergency, I have a very close deadline... I want to create a server of application, with a set of dynamic users. users send requets to the server which corresponds to a workload, then I have to test the performance of the server under different types of workloads. I'm sorry, but I do not even know from where I have to start... Thanks. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: the option of Retrieve All embedded resources from html file doesnt load ALL resourses
I guess I don't understand what you mean by 'clutter', but I'm glad you found something that worked for you. -- Robin D. Wilson Sr. Director of Web/Java Engineering KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Jesse Zhang [mailto:ynz...@yahoo.com.INVALID] Sent: Friday, May 08, 2015 2:13 AM To: JMeter Users List Subject: Re: the option of Retrieve All embedded resources from html file doesnt load ALL resourses The scripts recordded by Test Script Recorder is clutter.There is a chrome extension developed by Blazemeter which can record simple scripts.I exported the scripts to local .jmx file,and then used Jmeter to run the test.But the http requests are not all.So i want to find a solution to the problem. On Thursday, May 7, 2015 8:25 PM, Robin D. Wilson rwils...@gmail.com wrote: JMeter does not execute the Javascript, or interpret CSS - both of which may add files to your download. However, you can record what gets downloaded (using the HTTP proxy recorder) and just replay that if you like. -- Robin D.Wilson -Original Message- From: Jesse Zhang [mailto:ynz...@yahoo.com.INVALID] Sent: Thursday, May 7, 2015 1:25 AM To: user@jmeter.apache.org Subject: the option of Retrieve All embedded resources from html file doesnt load ALL resourses Hello everyone, There is an original http request such as http://www.baidu.com/.I checked the option of retrieve all embedded resources from html files.Then I add a View Results Tree to run the test.Comparing the results with those http requests captured by a packetcapture tool,I find that the results are few resources but not all.I dont konw what is the reaon causing that.I guess it is because the browser excute javascript and then send some http requests which cant be parsed from html.Is that right?How can i fix it?Do i need a JS interpreter into Jmeter(is this possible?) or to excute JS like a browser in Jmeter?Or is that some good idea else? Thanks Regards Jesse - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: the option of Retrieve All embedded resources from html file doesnt load ALL resourses
JMeter does not execute the Javascript, or interpret CSS - both of which may add files to your download. However, you can record what gets downloaded (using the HTTP proxy recorder) and just replay that if you like. -- Robin D.Wilson -Original Message- From: Jesse Zhang [mailto:ynz...@yahoo.com.INVALID] Sent: Thursday, May 7, 2015 1:25 AM To: user@jmeter.apache.org Subject: the option of Retrieve All embedded resources from html file doesnt load ALL resourses Hello everyone, There is an original http request such as http://www.baidu.com/.I checked the option of retrieve all embedded resources from html files.Then I add a View Results Tree to run the test.Comparing the results with those http requests captured by a packetcapture tool,I find that the results are few resources but not all.I dont konw what is the reaon causing that.I guess it is because the browser excute javascript and then send some http requests which cant be parsed from html.Is that right?How can i fix it?Do i need a JS interpreter into Jmeter(is this possible?) or to excute JS like a browser in Jmeter?Or is that some good idea else? Thanks Regards Jesse - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: what is the use of assertion
Here's a real-life example: In our web application, many of our pages return a 200 response code, but the actual page returned is an error message to the end user. In our system, all of our end user error messages follow a consistent pattern in the HTML of the returned page. So we have a negative assertion that checks that these patterns don't exist in any returned page - so we know that the system did not return an error during the JMeter run. Likewise, on most pages we have an assertion for some HTML pattern that will only be present if the correct successful page is returned. BUT, assertions are relatively expensive in JMeter - meaning they add a lot of test of processing to the script, and slow down throughput of JMeter. (They use regular expressions to parse the returned data fro the server, which takes a lot of compute power.) So use them efficiently... -- Robin D. Wilson VOICE: 512-777-1861 On Oct 9, 2014, at 4:26 AM, ZK stevesenio...@gmail.com wrote: Hi, Assertions let you check the response you receive are the correct expected responses See here: http://blazemeter.com/blog/how-use-jmeter-assertions-3-easy-steps ZK -- View this message in context: http://jmeter.512774.n5.nabble.com/what-is-the-use-of-assertion-tp5721177p5721178.html Sent from the JMeter - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: what is the use of assertion
Fair enough - perhaps 'expensive' was the wrong wording... Not free is a better wording... The more assertions you use in each response, the higher the overhead will be on processing the response - and the slower your JMeter throughput will be. Therefore, use them _efficiently_ to detect whether your responses are proper for your test conditions. They are like 'seasonings' - not too much, or you'll overpower your test. But too little will make your test ineffective and unable to reveal what you think it is revealing. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Thursday, October 09, 2014 7:56 AM To: JMeter Users List Subject: Re: what is the use of assertion On 9 October 2014 13:44, Robin D. Wilson rwils...@gmail.com wrote: Here's a real-life example: In our web application, many of our pages return a 200 response code, but the actual page returned is an error message to the end user. In our system, all of our end user error messages follow a consistent pattern in the HTML of the returned page. So we have a negative assertion that checks that these patterns don't exist in any returned page - so we know that the system did not return an error during the JMeter run. Likewise, on most pages we have an assertion for some HTML pattern that will only be present if the correct successful page is returned. BUT, assertions are relatively expensive in JMeter - meaning they add a lot of test of processing to the script, and slow down throughput of JMeter. (They use regular expressions to parse the returned data fro the server, which takes a lot of compute power.) So use them efficiently... There are many different Assertions; some are more expensive than others. The Response Assertion only uses regexes for 'Contains' and 'Matches' If 'Substring' can be used, it will be cheaper. -- Robin D. Wilson VOICE: 512-777-1861 On Oct 9, 2014, at 4:26 AM, ZK stevesenio...@gmail.com wrote: Hi, Assertions let you check the response you receive are the correct expected responses See here: http://blazemeter.com/blog/how-use-jmeter-assertions-3-easy-steps ZK -- View this message in context: http://jmeter.512774.n5.nabble.com/what-is-the-use-of-assertion-tp5721 177p5721178.html Sent from the JMeter - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: User Parameters Pre Processor
I think it is because a 'config element' is processed once when the test plan is loaded, but a 'pre-processor' is processed before each sample is run. There is a similar 'config element' called User Defined Variables that are processed at load-time for the test case. But bear in mind, if you use these - only the last one in the whole test plan is valid for a given variable. Whereas, if you use User Parameters those are valid for a specific sample based on the how they are defined as the test case is processing. For example, say you have a test plan that looks like this: User Defined Variables: username = foobar Thread Group 1: (uses '${username}' variable) User Defined Variables: username = notfoobar In this case, when you run the test plan, the ${username} variable will be set to notfoobar - because the User Defined Variables are all processed _before_ the thread group runs - and the value is set to the last one that defined it. In example 2, we see User Parameters at work: Thread Group 1: User Parameter: username = foobar${__threadNum} Sampler A: (uses ${username} variable) Thread Group 2: User Parameter: username = notfoobar${__threadNum} Sampler B: (uses ${username} variable) In this example, Thread Group 1 will increment the 'username' value through foobar1, foobar2, etc. for as many different threads as you run through it. Likewise, thread group 2 will increment the username variable through notfoobar1, notfoobar2, etc. because the User Parameters are evaluated at the sample run time. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Shmuel Krakower [mailto:shmul...@gmail.com] Sent: Monday, March 24, 2014 3:03 AM To: JMeter Users List Subject: User Parameters Pre Processor Hi, I was wondering why the User Parameters is a pre-processor rather than a Config Element? I just spent few minutes looking for it in the wrong place... ;) Best, Shmuel Krakower. www.Beatsoo.org - re-use your jmeter scripts for application performance monitoring from worldwide locations for free. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Exclude URL Patterns
There are a couple of reasons: 1) If you site uses a CDN (Content Data Network - or Edge Servers such as Akamai, Limelight, etc.), the performance of these files will not be something that you directly control in your network - so testing their performance may skew your test results. Moreover, trying to run performance tests against their system will have 2 deleterious effects: 1) introduce an external system to your testing which can adversely affect your test reliability; and 2) run up your costs by making a lot of requests through your testing system to the CDN (eating up the bandwidth you are paying for). 2) If your pages include assets (images, sounds, flash files, CSS, JS, etc.) from third-party sites, you have the same problem as above - fetching those during your testing can adversely affect your testing, and give you erroneous problems to chase down - because you have no control over the performance of those external sites. Moreover, hitting those sites with a significant performance test could really piss off those third-parties. (For example, our marketing department once included a JavaScript widget loaded from a third-party site - that they found by googling. They included that in content without telling us. The third-party site was some guy's blog, and I'm sure they didn't expect to have 1M plus hits per day coming from our users. If I had fired up a big performance test against that site (in addition to our users just pounding on it from normal use), I'm sure that guy would have freaked out.) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Ankit Sethiya [mailto:ankit.seth...@gmail.com] Sent: Friday, March 14, 2014 2:21 PM To: user@jmeter.apache.org Subject: Exclude URL Patterns Hello, My question is what is the real reason behind excluding .css/.js/third party files while recording the script through proxy? Don't these files effect the performance of site? Please let me know. Thanks Ankit Sethiya -- Software Quality Analyst Los Angeles, CA 626.202.5415 - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: Import tests instead of making duplicate copies
There are a few things you need in order to do what you want... 1) test fragments - test fragments are a special kind of controller designed to allow you to include external test procedures into your test plan. 2) the include controller - you use an include controller to add a test fragment stored in an external file into your test plan. 3) the module controller - once you include an external test fragment into your test plan, you can use it multiple times in your test plan with a module controller. Read the documentation on these three things, and you should be able to get what you want. -- Robin D. Wilson VOICE: 512-777-1861 On Mar 11, 2014, at 5:38 AM, Prateek Asthana pary...@gmail.com wrote: Hi, Currently, as part of running the performance test *suite*, we are creating a copy of the original perf *test* and placing it into the perf suite. This is leading to redundant copies of a single perf test. Example: We recently created a new perf test titled SingleTest.jmx to test a new endpoint. A copy of this new test was placed in out test suite: AllTests.jmx. I was wondering if jmeter provides a way to import the tests instead of we making redundant copies leading to maintenance issues. Thanks, Prateek - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: How to control variable substitution in JMeter?
I've noticed this too. Sounds like a feature request. Basically, some way to designate which variables can be used for substitution when using the recording controller. Perhaps just a list. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: keith.cass...@engilitycorp.com [mailto:keith.cass...@engilitycorp.com] Sent: Tuesday, March 11, 2014 9:09 AM To: user@jmeter.apache.org Subject: How to control variable substitution in JMeter? I have some user defined variables: SERVER_NAME myhost.com THE_HTTP_PROTOCOLHTTP USER_COUNT 1 LOOP_COUNT 2 Then, I use a Recording Controller to capture my browser actions. Unfortunately, JMeter does more variable substitution than I'd like it to. For example, it substitutes ${LOOP_COUNT} into a web site name that contains 2, e.g., /host${LOOP_COUNT}/somePage. My favorite example of over-zealous variable substitution is my ${THE_${THE_HTTP_PROTOCOL}_PROTOCOL} Header Manager. Is it possible to make the recording more selective about what variables can be used for substitution? For example, of the variables I've listed, I'd really only like SERVER_NAME to be substituted in. I'm using JMeter 2.11. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: JMeter 2.11 Regular Expression Extractor - Source Field - what is that for?
Very weird... I just re-installed JMeter 2.11, and set it up exactly the same way as before - and the field went away, and the form changed back to the one in documentation. The only plugin I have is the JMeterPlugins.jar - but we only use that for the performance monitoring plugin feature. (And that is installed in the 'reloaded' JM2.11, and it does not seem to affect the Regular Expression Extractor at all. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Thursday, February 13, 2014 5:09 AM To: JMeter Users List Subject: Re: JMeter 2.11 Regular Expression Extractor - Source Field - what is that for? On 13 February 2014 10:53, Adrian Speteanu asp.ad...@gmail.com wrote: I'm working on 2.11 r1554548 (the released version), and I don't have that field in the Regular Expression Extractor GUI. It matches the documentation, in my case. Maybe you have a plugin that adds that? The field is not in the latest trunk either. --Adrian S On Thu, Feb 13, 2014 at 12:58 AM, Robin D. Wilson rwils...@gmail.comwrote: No, I meant Source Field... The Regular Expression Extractor GUI interface has the following setup: Name: [_] Comments: [_] - --- Response Field to check Body O Body (unescaped) O Headers O URL O Response Code O Response Message O - --- Source Field [_] - NEW FIELD Reference Name: [_] Regular Expression: [_] Template: [_] Match No. (0 for Random): [_] Default Value:[_] ---END OF PAGE--- (NOTE: the missing : on the Source Field is intentional - since on the interface, it is actually missing.) I am specifically referring to the Source Field which showed up in the JM2.11 stuff (may have been earlier, but I just now noticed it). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: UBIK LOAD PACK Support [mailto:supp...@ubikloadpack.com] Sent: Wednesday, February 12, 2014 4:09 PM To: JMeter Users List Subject: Re: JMeter 2.11 Regular Expression Extractor - Source Field - what is that for? Hello, Do you mean Response Field to check field ? It is documented in http://jmeter.apache.org/usermanual/component_reference.html#Regular_ Expression_ Extractor : Response Field to check The following response fields can be checked: - Body - the body of the response, e.g. the content of a web-page (excluding headers) - Body (unescaped) - the body of the response, with all Html escape codes replaced. Note that Html escapes are processed without regard to context, so some incorrect substitutions may be made. Note that this option highly impacts performances, so use it only when absolutely necessary and be aware of its impacts - Body as a Document - the extract text from various type of documents via Apache Tika (see View Results Tree http://jmeter.apache.org/usermanual/component_reference.html#View_Res ults_T reeDocument view section). Note that Body as a Document option can impact performances, so ensure it is Ok for your test - Headers - may not be present for non-HTTP samples - URL - Response Code - e.g. 200 - Response Message - e.g. OK Headers can be useful for HTTP samples; it may not be present for other sample types. -- Regards Ubik Load Pack http://ubikloadpack.com Team Follow us on Twitter http://twitter.com/ubikloadpack Cordialement L'équipe Ubik Load Pack http://ubikloadpack.com Suivez-nous sur Twitter http://twitter.com/ubikloadpack On Wed, Feb 12, 2014 at 11:03 PM, Robin D. Wilson rwils...@gmail.com wrote: I was editing an old test case on my system, and I popped into the Regular Expression Extractor to check some stuff, and noticed that there is a new field: Source Field (above the Reference Name field that was already there). I hadn't seen this field before - so I tried to look it up. None of the help pages refer to it, and I couldn't find in the Changes page. So, the question arises - what is that for, and how do I use it? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com
RE: JMeter 2.11 Regular Expression Extractor - Source Field - what is that for?
No, I meant Source Field... The Regular Expression Extractor GUI interface has the following setup: Name: [_] Comments: [_] Response Field to check Body O Body (unescaped) O Headers O URL O Response Code O Response Message O Source Field [_] - NEW FIELD Reference Name: [_] Regular Expression: [_] Template: [_] Match No. (0 for Random): [_] Default Value:[_] ---END OF PAGE--- (NOTE: the missing : on the Source Field is intentional - since on the interface, it is actually missing.) I am specifically referring to the Source Field which showed up in the JM2.11 stuff (may have been earlier, but I just now noticed it). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: UBIK LOAD PACK Support [mailto:supp...@ubikloadpack.com] Sent: Wednesday, February 12, 2014 4:09 PM To: JMeter Users List Subject: Re: JMeter 2.11 Regular Expression Extractor - Source Field - what is that for? Hello, Do you mean Response Field to check field ? It is documented in http://jmeter.apache.org/usermanual/component_reference.html#Regular_Expression_ Extractor : Response Field to check The following response fields can be checked: - Body - the body of the response, e.g. the content of a web-page (excluding headers) - Body (unescaped) - the body of the response, with all Html escape codes replaced. Note that Html escapes are processed without regard to context, so some incorrect substitutions may be made. Note that this option highly impacts performances, so use it only when absolutely necessary and be aware of its impacts - Body as a Document - the extract text from various type of documents via Apache Tika (see View Results Treehttp://jmeter.apache.org/usermanual/component_reference.html#View_Results_T reeDocument view section). Note that Body as a Document option can impact performances, so ensure it is Ok for your test - Headers - may not be present for non-HTTP samples - URL - Response Code - e.g. 200 - Response Message - e.g. OK Headers can be useful for HTTP samples; it may not be present for other sample types. -- Regards Ubik Load Pack http://ubikloadpack.com Team Follow us on Twitter http://twitter.com/ubikloadpack Cordialement L'équipe Ubik Load Pack http://ubikloadpack.com Suivez-nous sur Twitter http://twitter.com/ubikloadpack On Wed, Feb 12, 2014 at 11:03 PM, Robin D. Wilson rwils...@gmail.comwrote: I was editing an old test case on my system, and I popped into the Regular Expression Extractor to check some stuff, and noticed that there is a new field: Source Field (above the Reference Name field that was already there). I hadn't seen this field before - so I tried to look it up. None of the help pages refer to it, and I couldn't find in the Changes page. So, the question arises - what is that for, and how do I use it? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org http://twitter.com/ubikloadpack - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: How do I override the 'Retrieve All Embedded Resources setting in non-gui mode?
Done: 56103 Submitted Need ability to override Retrieve All Embedded Resources from non-gui mode -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Sunday, February 02, 2014 8:29 AM To: JMeter Users List Subject: Re: How do I override the 'Retrieve All Embedded Resources setting in non-gui mode? Hello, Currently I don't think it is possible. Maybe we could add a JMeter property for this ? Could you create an Enhancement request ? Thank you On Wed, Jan 29, 2014 at 7:19 PM, Robin D. Wilson rwils...@gmail.com wrote: Next question, how do I override 'HTTP Request Defaults' for the 'Retrieve All Embedded Resources' checkbox? When the checkbox is set, the following line appears in the testplan's '.jmx' file: boolProp name=HTTPSampler.image_parsertrue/boolProp But when the checkbox is not set, the line is absent from the '.jmx' file. I'd like to be able to override this value from the non-gui command line (so that I don't have to edit the '.jmx' files on the fly during non-gui test runs). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- Cordialement. Philippe Mouawad. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: In non-gui mode, is there a command-line switch to change User Defined Variables
That worked! Thanks 'sebb'... Next question, how would I do the same thing for 'HTTP Request Defaults' for a value that is a 'bool': boolProp name=HTTPSampler.image_parsertrue/boolProp This is just a checkbox on the GUI mode. Moreover, if I save the test plan with this value unchecked - the above line doesn't even show up in the .jmx file. So how would I override the value (or just set the value if the line isn't present in the .jmx file)? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Tuesday, January 28, 2014 7:20 PM To: JMeter Users List Subject: Re: In non-gui mode, is there a command-line switch to change User Defined Variables On 29 January 2014 00:42, Robin D. Wilson rwils...@gmail.com wrote: I have several test cases that I like to with slightly different User Defined Variables configurations. I'd prefer not to have to save multiple versions of the test cases, simply because it makes them harder to maintain. Is there a simple way to override 'User Defined Variable' values from the command line (when running in non-gui mode)? Not exactly. You can define UDVs as property references, with a default if the property is not defined. http://wiki.apache.org/jmeter/JMeterFAQ#How_do_I_pass_parameters_into_my_Test_sc ripts.3F_I_want_to_be_able_to_use_the_same_script_to_test_with_different_numbers _of_threads_and_loops.2C_and_I_don.27t_want_to_have_to_change_the_script_each_ti me. (Specifically, I have a variable for number of threads, and another one for total iterations.) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
How do I override the 'Retrieve All Embedded Resources setting in non-gui mode?
Next question, how do I override 'HTTP Request Defaults' for the 'Retrieve All Embedded Resources' checkbox? When the checkbox is set, the following line appears in the testplan's '.jmx' file: boolProp name=HTTPSampler.image_parsertrue/boolProp But when the checkbox is not set, the line is absent from the '.jmx' file. I'd like to be able to override this value from the non-gui command line (so that I don't have to edit the '.jmx' files on the fly during non-gui test runs). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
In non-gui mode, is there a command-line switch to change User Defined Variables
I have several test cases that I like to with slightly different User Defined Variables configurations. I'd prefer not to have to save multiple versions of the test cases, simply because it makes them harder to maintain. Is there a simple way to override 'User Defined Variable' values from the command line (when running in non-gui mode)? (Specifically, I have a variable for number of threads, and another one for total iterations.) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: How to record Registration page and replay using HTTP Request Sampler and also parameterise some fields in the forms?
You need to import the JMeter certificate file in FireFox, so FireFox will accept JMeter as a trusted certificate authority. -- Robin D. Wilson VOICE: 512-777-1861 On Jan 25, 2014, at 3:54 AM, Jayesh Guru jayeshgur...@gmail.com wrote: I have found the solution for avoiding the above error by Doing Set JAVA_HOME and SET PATH in jmeter.bat. Another issue I am getting is I am able to record the script for http protocol with test recording but HTTPS is not opening from firefox. Can anyone suggest me what settings i need to do in HTTP Request Sampler so that it will work in Firefox? *Thanks * *Jayesh Guru* On Thu, Jan 23, 2014 at 2:54 PM, Jayesh Guru jayeshgur...@gmail.com wrote: I have found a good doc to follow for HTTP test recording. http://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf But when i hit on Start button of Test Recorder i get following error. 2014/01/23 14:10:50 WARN - jmeter.protocol.http.proxy.ProxyControl: Could not open expected file or certificate is not valid C:\JMETER\apache-jmeter-2.11\bin\proxyserver.jks C:\JMETER\apache-jmeter-2.11\bin\proxyserver.jks (The system cannot find the file specified) 2014/01/23 14:10:50 INFO - jmeter.protocol.http.proxy.ProxyControl: Generating standard keypair in C:\JMETER\apache-jmeter-2.11\bin\proxyserver.jks 2014/01/23 14:10:50 ERROR - jmeter.protocol.http.proxy.ProxyControl: Could not initialise key store java.io.IOException: Command :'keytool -genkeypair -alias :jmeter: -dname cn=JMeter Proxy (DO NOT TRUST) -keyalg RSA -keystore proxyserver.jks -storepass {redacted) -keypass {redacted) -validity 7' failed, code: 1 Illegal option: -genkeypair Can anybody help me in solving this? *Thanks * *Jayesh Guru* On Thu, Jan 23, 2014 at 1:04 PM, Jayesh Guru jayeshgur...@gmail.comwrote: I cannot see any of the images in this email chain. Can you please resend and also where Test Script Recorder located? *Thanks * *Jayesh Guru* On Wed, Jan 22, 2014 at 12:25 PM, charan sethi charan.set...@gmail.comwrote: Well you can record the registeration steps using Jmeter Test Script Recorder(Version 2.10) or jmeter proxy server in earlier versions. Now you need to identify in the recorded requests the parameters you need to pass for example username and pasword. Add a CSV data config element in your thread group and add user,pass in it against variables. Now make a csv file and add the username and passwords in it. Put the full path of the csv in the csv data config element. Now to use these values you need to identify the parameters in your request and put the variables you defined in the CSV data config element like this ${user} against username and ${pass} against password. Each thread would read one line in your CSV. You also would need to add a HTTP cookie manager in your thread group to manage cookies for your virtual users. If your having trouble recording, the steps are as follows Add HTTPS test recorder under workbench and set target controller to thread group after inserting a thread group under your test plan. Set the proxy in your browser to localhost and port 8080 Now Press Start button on your Test recorder. Perform actions on your browser and you will see the requests getting recorded. These are the parameters [image: Inline image 3] The path for the csv file and the variables [image: Inline image 2] The CSV files [image: Inline image 4] I hope this helps On Wed, Jan 22, 2014 at 6:17 AM, Jayesh Guru jayeshgur...@gmail.comwrote: I have to record a Registration Page and parameterise some of the fields so that it can take unique value each iteration. I tried this couple of times with HTTP request recording but could not get any luck. Could anyone please guide me in this as i need to load test this registration site(there are 4-5 pages in this)? *Thanks * *Jayesh Guru* - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
In the non-gui mode 'csv' log file, how would I calculate throughput?
I'm using the non-gui mode for some testing, and I'd like to attempt to replicate closely what I get on the gui-mode summary report. The only thing I'm missing is the 'throughput' values... From the standard data available in the non-gui log file, can someone tell me how to calculate throughput that is similar to the gui-mode summary report's throughput numbers? (BTW, 'iterations/duration' doesn't work at all...) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Peoplesoft load testing...
We are not testing PeopleSoft here, but we do use Apache in front of our Tomcat servers... The way we avoid having to reconfigure all of our JMeter tests for every update is simply to build our tests as a set of 'Test Fragments'. So we include the test fragments in other tests. That way, if our 'login' process changes, we don't have to update all of our tests that require logins - we just fix the 'login' test fragment - then all of our test cases automatically inherit that fix. We even have test fragements that are made up of other test fragments. For example, if one of our users wanted to change their email address - they would 'login', 'go to My Accounts page', and 'change email address'. So we have multiple layers of test fragments for this this fragment: Login - stand-alone test fragment Go to My Accounts - includes: Login test fragment goes to My Accounts URL Change Email Address - includes: Go to My Accounts test fragment Goes to Change Email tab in My Accounts pages POSTs update to email address We have several functions in our My Accounts pages, so each of them start with the Go to My Accounts test fragment, and then perform another function. Our Test My Accounts test case then combines all of the My Accounts test fragments into a single unified test case, and we can run that as a single test. But if any part of the My Accounts system changes - we can fix _only_ that part, and the rest of the overall My Accounts test case remains unmodified for the next test cycle. I will point out - we only use JMeter to test performance and load/stress conditions - not to perform 'functional' tests. And we use a different tool (Selenium) to test for functional 'regression'. So perhaps you were using it differently than we are. I'm not sure about how much changes in your releases, but we find this keeps our JMeter 'fixing' to a minimum, and we can roll out new releases with only minor fixes to our JMeter scripts. We have (on occasion) needed to perform mass-updates to our JMeter scripts (when we updated JMeter versions), but those are rare, and they usually are easily handled with direct edits to the 'jmx' files - once we identify the specific changes needed to make everything work right. Those fixes haven't ever taken more than a few hours of time - basically just going through each 'jmx' file and altering the XML to match the updated spec. for the new version of JMeter we're using (or the new controller/config we're using in place of the old one). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. http://www.kingsisle.com -Original Message- From: Natalie Maines [mailto:natalie.mai...@duke.edu] Sent: Tuesday, January 07, 2014 2:48 PM To: JMeter Users List; Tony Anecito; JMeter Subject: RE: Peoplesoft load testing... Duke used Jmeter for load testing two years ago. We are on PeopleSoft Campus Solutions 9.0. JMeter worked well for our testing with the exception - whenever anything changed (ie - tools version, apache updates, shibboleth updates), we'd have to re-tool our scripts (which is not necessarily easy, since we had many parameter related scenarios). You probably don't have shibboleth or apache in front of your PeopleSoft application, which would make the maintenance of jmeter scripts much easier, but PTools upgrades were an issue. When the jmeter scripts worked, they worked very well, but we were spending a lot of time re-generating our load testing scripts. We are currently contracting with Oracle's OATS product for our load testing. Regards, Natalie Maines Senior IT Analyst Duke University natalie.mai...@duke.edu -Original Message- From: Tony Anecito [mailto:adanec...@yahoo.com] Sent: Tuesday, January 07, 2014 2:59 PM To: JMeter Subject: Peoplesoft load testing... Hi All, Has anyone use JMeter for peoplesoft 9.2 load testing? Thanks, -Tony - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Jmeter Regex advice - qualifier string after regex
Try this: a href=([^]*)spanFoo2 That tells Regex to get everything in the () that doesn't include a '' character... Your other regex is actually getting this string: 12354spanFoo1a href=12357 That's because by nature, the 'regex' is 'greedy' in its match. So it is matching all characters after the first 'href=', and up to the 'spanFoo2' string. Try googling regex non greedy match, you will find multiple ways to handle this. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Gavin Maselino [mailto:gavinmasel...@hotmail.com] Sent: Wednesday, November 13, 2013 11:11 AM To: user@jmeter.apache.org Subject: Jmeter Regex advice - qualifier string after regex Hi So here is an example of the JMeter response I am struggling with: diva href=12354spanFoo1a href=12357spanFoo2/div The text I need to use regex on is the ahref next to Foo2 (12357).When I do this regex on RegexTester.com (a href=(.*)spanFoo2), it returns the href value for Foo1. Can anyone advise how I can get the ahref for Foo2? I cannot use XPath extraction as the real response I am using has hexademical in it so a '' is actually encoded as '\u003C'. Thanks - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: JMeter Regex advice - qualifier string after regex
One other thing about getting stuff in post-processors using regex... You want to try to make your expression as generic as possible - while still being specific enough to get what you want. This is so your test case won't break if there are slight variations in the response data being returned - to the point that the variations are not actually a functional change in the code. For example, in our systems, we have a generic Test Fragment for logging into the web site we're testing. We include this test fragment in dozens of other tests - that need the user logged in before we can step through the test procedure. We get a few variables that can be used by subsequent tests through Regular Expression Post Processors. But if we code our regex patterns too specifically in that login system - slight changes in the login system will break all of our test cases (until we modify the login test and retest everything). So we've learned to setup our regex patterns to get what we need in the most 'flexible' way possible. Take a look at the following returned string, and see the patterns we used: Returned string: a href=/some/path/to/a/link id=my_id name=my name style=color: red;This is the link text/a If I setup my regex to be very specific for this pattern: pattern=a href=([^]*) id=my_id name=my name style=color: red; It will surely match when I first setup my tests. But if a future code update changes anything in that link, I will break the regex... On the other hand, if I _know_ that the link I need is the one with the 'id=my_id' in the anchor tag, I can make my expression a little less picky, and still match so long as the changes made to the code don't swap the order of the 'href' and 'id' parameters in the anchor tag: pattern=a[^]*href=([^]*)[^]*id=my_id This pattern will match any anchor tag that has an 'href=...' in it, and is followed by an 'id=my_id' somewhere after the href in the same anchor tag. (The '[^]*' pattern matches anything up to the closing character in the anchor tag - so it can never jump out of this same anchor tag.) Based on this pattern, if the developers change the name or the style - my regex will still get the variable I need. Likewise, if they do something incredibly subtle - like change the SPACE between the parameters to TABS (or add extra spaces or tabs), it will still work. (Of course, if they swap the order of the parameters - so that 'id' comes before 'href', I still break - but at least I've limited the ways in which I will break...) Just a suggestion when building out your test cases. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Deepak Shetty [mailto:shet...@gmail.com] Sent: Wednesday, November 13, 2013 1:01 PM To: JMeter Users List Subject: Re: Jmeter Regex advice - qualifier string after regex Hi I guess your expression is too greedy (Im assuming you are getting a lot more than 12354 a href=([^]*)spanFoo2 Note that your snippet is invalid html and people tend to put in quotes or apostrophes or add spaces or more attributes and if you want to write an expression that doesnt break easily youll have to change the regex. the other way would be to modify your expression to have .*? - that would work but it would be inefficient On Wed, Nov 13, 2013 at 9:11 AM, Gavin Maselino gavinmasel...@hotmail.comwrote: Hi So here is an example of the JMeter response I am struggling with: diva href=12354spanFoo1a href=12357spanFoo2/div The text I need to use regex on is the ahref next to Foo2 (12357).When I do this regex on RegexTester.com (a href=(.*)spanFoo2), it returns the href value for Foo1. Can anyone advise how I can get the ahref for Foo2? I cannot use XPath extraction as the real response I am using has hexademical in it so a '' is actually encoded as '\u003C'. Thanks - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Include within an module within an include?
So, in JMeter 2.9, we had the following scenario that worked fine: 1) File Login: 2) Test Fragment 3) Controller - Login 4) Regex - Get Variables 5) 6) File Simple Test Scenario: 7) Test Fragment 8) Include File Login 9) Controller Do stuff after logging in 10) 11) 12) 13) File Main Test Suite: 14) Test Fragment 15) Include File Simple Test Scenario 16) 17) Thread Group 1 18) User Parameters - Setup vars for Simple Test Scenario 19) Module - Simple Test Scenario 20) 21) Thread Group 2 22) User Parameters - Setup vars for Simple Test Scenario differently 23) Module - Simple Test Scenario So, Simple Test Scenario was a test fragment that includes the Login file first, then the Controller Do stuff after logging in runs. This basically allows us to abstract the 'Login' functionality and re-use it in lots of other test cases. File Main Test Suite just includes Simple Test Scenario, then runs different thread groups that run Simple Test Scenario from a Module Controller differently based on the User Parameters it has setup. In JMeter 2.10 the above doesn't work. Here's what we have noticed: the Login functionality (line #8) runs, but we have some 'Regex' Post-Processors within that login functionality that get variables used by the subsequent requests (line #9) in the process. The variables normally filled in by the Login request post-processors don't seem to be passed to the subsequent steps anymore. We can work around this - but it means re-coding a lot of our test cases. The question is, was this an intentional change in the JMeter 2.10 version, or is it a bug that will eventually get fixed (if I report it)? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: JMeter 2.10 Include Controller doesn't seem to be working
So let me understand, do I need to put the Test Fragment inside the included file, or do I put the Include Controller inside a Test Fragment? -- Robin D. Wilson VOICE: 512-777-1861 On Oct 22, 2013, at 6:52 AM, Nicola Ambrosetti Brolin ambrosetti.nic...@gmail.com wrote: I might add (since I was the reporter of bug 55464) that it is confusing that when using Save selection as the produced jmx project has the selected steps sitting right under the test plan, instead of being under a test fragment. Thus one could be led to believe that the saved selection could be included as is. However this is not the case: the include controller will completely ignore anything in the included project that is not child of a test fragment. Cheers, Nicola On 22 October 2013 10:58, UBIK LOAD PACK Support supp...@ubikloadpack.comwrote: Hello, I think you are misusing Test Fragments. Test Fragment should be in INCLUDED Test Plan not INCLUDER. So in your case they should be Login.jmx and Timer.jmx. While according to what you show and to log file they are in INCLUDED Test Plan. I think this is what changes mentions: - The correct way to include Test Elements is to use *Test Fragment *as stated in documentation of *Include Controller *. - The include controller is designed to use an external jmx file. To use it, create a Test Fragment underneath the Test Plan and add any desired samplers, controllers etc. below it. Then save the Test Plan. = The file is now ready to be included as part of other Test Plans.= Regards On Tue, Oct 22, 2013 at 4:13 AM, Robin D. Wilson rwils...@gmail.com wrote: That is exactly what I'm using (Test Fragments)... -- Robin D. Wilson VOICE: 512-777-1861 On Oct 21, 2013, at 6:49 PM, UBIK LOAD PACK Support supp...@ubikloadpack.com wrote: Hello, Incompatible changes explains your issue: - jmeter.apache.org/changes.html - In previous versions, *IncludeController *could run Test Elements located inside a *Thread Group *, this behaviour ( *which was not documented *) ould result in weird behaviour, it has been removed in this version (see Bug 55464https://issues.apache.org/bugzilla/show_bug.cgi?id=55464 ). The correct way to include Test Elements is to use *Test Fragment *as stated in documentation of *Include Controller *. Regards @ubikloadpack On Tuesday, October 22, 2013, Robin D. Wilson wrote: I have a test that includes some test fragments using an 'Include Controller', and then those test frags are used throughout the thread groups by being added in a 'Module Controller'. When I load my test, I get these messages in the log: --- 2013/10/21 18:20:33 INFO - jmeter.gui.action.Load: Loading file: X:\Tests\JMeter\WizardHome\TestSuites\Stress Test\W101 Login Stress Generator_wTestFrag.jmx 2013/10/21 18:20:33 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Login.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Utility\Timer.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Login.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Utility\Timer.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree -- NOTE: The repeat of the INFO+WARN messages about trying to load the IncludeController is puzzling, since there are only 2 Include Controllers in the test plan... Not sure why it appears to be trying to load each of them twice. This same test works perfectly on JMeter 2.9 (and earlier). FYI, the test looks like this: Test Plan Setup stuff (User Defined Vars, Requests Defaults, Cookie Manager, etc.) Includes Test Fragment Include
RE: JMeter 2.10 Include Controller doesn't seem to be working
It figures... That works. Now I'll have to go through all my Includes and change them from simple controllers to Test Fragments. Is this documented somewhere - clearly? I read through the Test Fragment stuff, and it was as clear as muddy water... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Nicola Ambrosetti Brolin [mailto:ambrosetti.nic...@gmail.com] Sent: Tuesday, October 22, 2013 8:40 AM To: JMeter Users List Subject: Re: JMeter 2.10 Include Controller doesn't seem to be working The test fragment must be inside the included file, for the include controller will ignore any test element not placed under a test fragment. You can however have a test fragment as parent of the include controller, which includes a file containing another test fragment. I use this setup for example to be able to point to the include controller from a module controller in the thread group. To summarize this is the way to do it: Included file: Test Plan |--Test fragment |-- sampler 1 |-- sampler 2 Test project: Test Plan |--Test fragment | |-- Include controller (pointing to included file above) |-- Thread group |-- Sampler 3 |-- Module controller (pointing to Test Fragment Include controller) |-- Sampler 4 This will be run as: Sampler 3 sampler 1 sampler 2 Sampler 4 On 22 October 2013 14:49, Robin D. Wilson rwils...@gmail.com wrote: So let me understand, do I need to put the Test Fragment inside the included file, or do I put the Include Controller inside a Test Fragment? -- Robin D. Wilson VOICE: 512-777-1861 On Oct 22, 2013, at 6:52 AM, Nicola Ambrosetti Brolin ambrosetti.nic...@gmail.com wrote: I might add (since I was the reporter of bug 55464) that it is confusing that when using Save selection as the produced jmx project has the selected steps sitting right under the test plan, instead of being under a test fragment. Thus one could be led to believe that the saved selection could be included as is. However this is not the case: the include controller will completely ignore anything in the included project that is not child of a test fragment. Cheers, Nicola On 22 October 2013 10:58, UBIK LOAD PACK Support supp...@ubikloadpack.comwrote: Hello, I think you are misusing Test Fragments. Test Fragment should be in INCLUDED Test Plan not INCLUDER. So in your case they should be Login.jmx and Timer.jmx. While according to what you show and to log file they are in INCLUDED Test Plan. I think this is what changes mentions: - The correct way to include Test Elements is to use *Test Fragment *as stated in documentation of *Include Controller *. - The include controller is designed to use an external jmx file. To use it, create a Test Fragment underneath the Test Plan and add any desired samplers, controllers etc. below it. Then save the Test Plan. = The file is now ready to be included as part of other Test Plans.= Regards On Tue, Oct 22, 2013 at 4:13 AM, Robin D. Wilson rwils...@gmail.com wrote: That is exactly what I'm using (Test Fragments)... -- Robin D. Wilson VOICE: 512-777-1861 On Oct 21, 2013, at 6:49 PM, UBIK LOAD PACK Support supp...@ubikloadpack.com wrote: Hello, Incompatible changes explains your issue: - jmeter.apache.org/changes.html - In previous versions, *IncludeController *could run Test Elements located inside a *Thread Group *, this behaviour ( *which was not documented *) ould result in weird behaviour, it has been removed in this version (see Bug 55464https://issues.apache.org/bugzilla/show_bug.cgi?id=55464 ). The correct way to include Test Elements is to use *Test Fragment *as stated in documentation of *Include Controller *. Regards @ubikloadpack On Tuesday, October 22, 2013, Robin D. Wilson wrote: I have a test that includes some test fragments using an 'Include Controller', and then those test frags are used throughout the thread groups by being added in a 'Module Controller'. When I load my test, I get these messages in the log: --- 2013/10/21 18:20:33 INFO - jmeter.gui.action.Load: Loading file: X:\Tests\JMeter\WizardHome\TestSuites\Stress Test\W101 Login Stress Generator_wTestFrag.jmx 2013/10/21 18:20:33 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Login.jmx 2013/10/21 18:20:34 WARN
JMeter 2.10 Include Controller doesn't seem to be working
I have a test that includes some test fragments using an 'Include Controller', and then those test frags are used throughout the thread groups by being added in a 'Module Controller'. When I load my test, I get these messages in the log: --- 2013/10/21 18:20:33 INFO - jmeter.gui.action.Load: Loading file: X:\Tests\JMeter\WizardHome\TestSuites\Stress Test\W101 Login Stress Generator_wTestFrag.jmx 2013/10/21 18:20:33 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Login.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Utility\Timer.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Login.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Utility\Timer.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree -- NOTE: The repeat of the INFO+WARN messages about trying to load the IncludeController is puzzling, since there are only 2 Include Controllers in the test plan... Not sure why it appears to be trying to load each of them twice. This same test works perfectly on JMeter 2.9 (and earlier). FYI, the test looks like this: Test Plan Setup stuff (User Defined Vars, Requests Defaults, Cookie Manager, etc.) Includes Test Fragment Include Controller - Login.jmx Include Controller - Timer.jmx Timer Start Thread Group User Parameters - Timer Start Module Controller - Timer (from Includes/Timer module above) Login Thread Group User Parameters - Login Module Controller - Login (from Includes/Login module above) Timer End Thread Group User Parameters - Timer End Module Controller - Timer (from Includes/Timer module above) Tree Listener (only shows 'errors') Summary Report Listener Near as I can tell, each thread group runs - for as many threads as I expect - but nothing happens within the thread group (e.g., none of the 'Module Controllers' actually do anything). BTW, if I merge the two Included test fragments - into the Includes Test Fragment - and re-configure my module controllers to point to the merged stuff, it works. So it appears to be a problem with the Include Controller not actually loading my stuff. I have noted a significant performance boost on this new version of JMeter, but I can't use it if I can't get the Include Controller to work... So any help would be very appreciated. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: JMeter 2.10 Include Controller doesn't seem to be working
That is exactly what I'm using (Test Fragments)... -- Robin D. Wilson VOICE: 512-777-1861 On Oct 21, 2013, at 6:49 PM, UBIK LOAD PACK Support supp...@ubikloadpack.com wrote: Hello, Incompatible changes explains your issue: - jmeter.apache.org/changes.html - In previous versions, *IncludeController *could run Test Elements located inside a *Thread Group *, this behaviour ( *which was not documented *) ould result in weird behaviour, it has been removed in this version (see Bug 55464https://issues.apache.org/bugzilla/show_bug.cgi?id=55464 ). The correct way to include Test Elements is to use *Test Fragment *as stated in documentation of *Include Controller *. Regards @ubikloadpack On Tuesday, October 22, 2013, Robin D. Wilson wrote: I have a test that includes some test fragments using an 'Include Controller', and then those test frags are used throughout the thread groups by being added in a 'Module Controller'. When I load my test, I get these messages in the log: --- 2013/10/21 18:20:33 INFO - jmeter.gui.action.Load: Loading file: X:\Tests\JMeter\WizardHome\TestSuites\Stress Test\W101 Login Stress Generator_wTestFrag.jmx 2013/10/21 18:20:33 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.services.FileServer: Set new base='X:\Tests\JMeter\WizardHome\TestSuites\Stress Test' 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Login.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Utility\Timer.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Login.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree 2013/10/21 18:20:34 INFO - jmeter.control.IncludeController: loadIncludedElements -- try to load included module: X:\Tests\JMeter\WizardHome\TestSuites\Functional Units\Utility\Timer.jmx 2013/10/21 18:20:34 WARN - jmeter.control.IncludeController: No Test Fragment was found in included Test Plan, returning empty HashTree -- NOTE: The repeat of the INFO+WARN messages about trying to load the IncludeController is puzzling, since there are only 2 Include Controllers in the test plan... Not sure why it appears to be trying to load each of them twice. This same test works perfectly on JMeter 2.9 (and earlier). FYI, the test looks like this: Test Plan Setup stuff (User Defined Vars, Requests Defaults, Cookie Manager, etc.) Includes Test Fragment Include Controller - Login.jmx Include Controller - Timer.jmx Timer Start Thread Group User Parameters - Timer Start Module Controller - Timer (from Includes/Timer module above) Login Thread Group User Parameters - Login Module Controller - Login (from Includes/Login module above) Timer End Thread Group User Parameters - Timer End Module Controller - Timer (from Includes/Timer module above) Tree Listener (only shows 'errors') Summary Report Listener Near as I can tell, each thread group runs - for as many threads as I expect - but nothing happens within the thread group (e.g., none of the 'Module Controllers' actually do anything). BTW, if I merge the two Included test fragments - into the Includes Test Fragment - and re-configure my module controllers to point to the merged stuff, it works. So it appears to be a problem with the Include Controller not actually loading my stuff. I have noted a significant performance boost on this new version of JMeter, but I can't use it if I can't get the Include Controller to work... So any help would be very appreciated. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org javascript:; For additional commands, e-mail: user-h
RE: Establishing baseline metrics
of performance issues - no matter what form of performance testing you use. I will say that we have served over 130M web pages in 1 month, using only 5 servers (4 tomcats, and 1 DB server)... Those pages represented about 10X in GET requests to our servers... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. http://www.kingsisle.com -Original Message- From: nmq [mailto:nmq0...@gmail.com] Sent: Monday, July 01, 2013 2:33 PM To: JMeter Users List Subject: Establishing baseline metrics Hi all This is not a JMeter specific questions but since this user list comprises of experts in performance testing, I figured it would be a good place to ask this question. My question is how do you establish baselines for a website's performance if you do not have any historic data? Lets say this is a new website and its for a limited number of customers. How do you determine what should be the number of concurrent users you should simulate. Lets say the executives say off at the top of their heads, that the maximum number of concurrent users would be 50 at peak times. Does that mean I should not go beyond 50 or should I still do tests with a higher number? How can I go about establishing baselines for page load times, if I do not have any historic data and have no industry benchmarks or competitor data. Would it make sense to say let's see how the website is doing throughout the development phase and establish our baseline using the current response times? I would appreciate any input. Regards Sam - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: System configuration
You also need to evaluate _all_ of the potential bottlenecks when running multiple threads from the same machine. For example, the network interface - if you are requesting pages that return 1MB of data, and you try to do 1000 threads - it is unlikely that your load-generating system can handle 1GB of data from each simultaneous page as easily as say 10 machines can handle 100MB each. (Of course, then you have to look at the test servers - to make sure that they are not similarly bottlenecked. Likewise, if your threads do a lot of pre and post processing (essentially parsing the data that comes back from the servers) and have a lot listeners, can your client machine really handle that amount of workload times 1000? It is unlikely unless you have the most basic of request/response values, and parsing rules. One example would be the 'tree listener'... If you are recording every response in the tree listener, it will eventually run your machine out of memory. Not only that, but before it runs you out of memory - it will dramatically slow down your test. So in our tests, we only use the 'tree listener' for recording errors. But even with just that, there is still a measurable difference in performance when it is enabled versus disabled. I run our load from 4 different load-generator machines (all running JMeter), each with Core i7 processors, and 8GB of RAM. We never run more than 200 threads simultaneously (50 per box) - simply because we've found that when we ramp up the testing clients beyond that level, the slowdown comes from the clients - not the servers. But then our tests are pretty involved, with lots of pre/post processors and assertions. What you want to look for is how do you generate sufficient load on the servers - and how many load-generating clients are required for that. You can try 1000 threads on a single client, but you look at the load on the servers and see it nowhere near capacity, and then you look at the load on the load-generating client and see it maxed out in CPU, Memory, I/O, (any single one will block it from generating more load), then you need to lower the number of simultaneous threads on that client until you see the best mix of performance from the client vs. capacity on the server. Then you can add more clients to meet your goal of 1000 simultaneous threads hitting the server. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Deepak Shetty [mailto:shet...@gmail.com] Sent: Monday, June 24, 2013 12:05 PM To: JMeter Users List Subject: Re: System configuration you could probably get it to work , but I doubt your results would be accurate. (i.e. you can run more threads but it might not simulate the same load as if you had as many machines as threads) Usually with a windows client class machine , dont exceed 100-200 threads unless your tests have large wait times In most cases you have to try it out and see and measure - both your client machine and your server since answers to questions like yours are too heavily dependent on environment and script. On Mon, Jun 24, 2013 at 2:36 AM, Saranya C saran...@maveric-systems.comwrote: Hi All, I would like to know the system configuration details to run 1000 threads in jmeter. Physical memory: 2GB OS: Windows XP JVM: 1.7 Jmeter: 2.9 Will the above specification workout? Thanks and regards, Saranya C == == == Disclaimer: This message is intended only for the individual or entity to which it is addressed. It may contain privileged, confidential information which is exempt from disclosure under applicable laws. If you are not the intended recipient, please note that you are strictly prohibited from disseminating or distributing this information (other than to the intended recipient) or copying this information. If you have received this communication in error, please notify us immediately by return email. == == == - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Is there a way to set the duration for which JMeter waits for a response
The HTTP sampler includes several 'timeout' values. I use them. It reports an error if the timeout expires, then moves on to the next request (either within the same thread, or in the next - depending on how you setup the thread group). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: nmq [mailto:nmq0...@gmail.com] Sent: Thursday, June 20, 2013 2:30 PM To: JMeter Users List Subject: Is there a way to set the duration for which JMeter waits for a response I googled this but didn't find anything. Is there a way to force JMeter to terminate the current thread and move on to another if an HTTP Sampler receives no response for a certain amount of time? This is a situation where there was no response whatsoever for over an hour and JMeter kept waiting for a response. Regards Sam - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Reusable JMeter Modules
We do this all the time. Our test cases include 'modules' to do things like 'login', and 'registration', etc. You want to use User Variables, and User Parameters, and Include Controllers and Module Controllers in order to accomplish this. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: Wanjun Wang [mailto:wang...@us.ibm.com] Sent: Thursday, June 20, 2013 4:16 PM To: user@jmeter.apache.org Subject: Reusable JMeter Modules Is it possible to design reusable modules within JMeter? For example, there are 3 pages with same design. Each has main response and an additional AJAX request. I'd like to have one module that takes a parameter to navigate to the specified page. This way, if there's any change, I just need to change one place instead of 3. Can JMeter test be written just through Java API's without using the GUI, as the GUI doesn't seem to support any modularization? Thanks. Regards, Wanjun - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Login failed - javascript
First, this isn't really a limitation of JMeter, it is an artifact of the way web sites work. Keep in mind, JMeter is designed to test the 'server' part of the web system, but web systems include the 'browser' in the application logic (often times incorporating a lot of logic in the JavaScript code that runs in the browser, or in other coding systems such as Flash and Silverlight). You could call that a 'limitation' of JMeter, but that would be like saying that a chainsaw is limited because it can't be used as a good hammer. There are a couple of ways this is measured, depending on the site in question. If it is coming from the server, it is probably looking at a header in the request to figure out if you have JavaScript enabled. Add an HTTP Header Manager element to your test plan, and set a User-Agent value... We use the following User-Agent value: User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0) This essentially tells the server that you are making requests with the IE9.0 browser (which supports JavaScript by default). (NOTE: we use this because it is still our most popular browser (actually, that's not quite true - it is the most common version of the most popular browser 'type' (IE)) - for users hitting our sites.) But if you have a different user population, you might prefer to use Chrome or Firefox or Safari as your 'standard test' User-Agent. You can look up their User-Agent strings here: http://www.useragentstring.com/pages/useragentstring.php If the HTTP Header Manager + User-Agent value configuration doesn't work, you will need to figure out how the server is determining that the browser supports JavaScript, and mimic that with your test. It is usually easier to setup the 'HTTP Proxy Server', and just collect a session from your browser than it is to try to figure it out manually though. To setup the proxy and capture a session: 1) Create a new Test Plan. 2) Right-Click on Workbench and select: Add-Non-Test Elements-HTTP Proxy Server 3) Make sure Capture HTTP Headers is checked 4) Click Start on the HTTP Proxy Server configuration page (at the bottom of the page) 5) In your browser, set your Proxy Server address to localhost, and use the port specified in your HTTP Proxy Server configuration (default is 8080). 6) Visit your site, and perform some functions you want in your test. These should start to record your requests in the test plan, below the workbench section. You can click on one of the requests and see what the HTTP Header Manager looks like, and use that as your default HTTP Header Manager for your tests. You can also see what sort of interactions are taking place between the browser and the server - some of which may be under-the-covers (hidden from the user) and allowing the server to figure out whether the site supports JavaScript. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: nmq [mailto:nmq0...@gmail.com] Sent: Tuesday, June 11, 2013 2:41 PM To: JMeter Users List Subject: Login failed - javascript Hi everyone I have run into an issue running my basic login script for the AUT. It was working fine till we got a new build this week. Now, I have been a functional tester my whole career. My company wanted me to do some performance test for them and I figured why the heck not. I'll learn along the way, so basically I'm a newbie in this area. Since JMeter is an open-source (translated: free of cost) tool that is supposedly powerful, we decided to use it (stupidly, without finding out its limitations). I've invested quite some time in learning the tool so I'm not ready to give up or switch to another. I'm also not a programmer and don't have much info on java or javascript. Anyways, getting back to the point. I looked at the response in ResultsTree in HTML format and this is the message I'm getting on the Login page: This website requires JavaScript Please activate JavaScript and press F5 HELP!! Regards Sam - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Login failed - javascript
If you use the Proxy setup, you can then just 'replay' the previous requests and see if they have the same problem as you were having. Basically, disable your test requests, and copy/paste the ones from the Proxy recording in their place. Run the test using the recorded requests, and watch the Tree Listener for the responses from the server. If the recorded requests have the same problems as your test plan did, then you will definitely need to discuss with your developers (maybe it's just a bug in their code?). If the recorded proxy script works normally, then you have a problem in your JMeter test plan setup - and you can use the proxy requests to figure out what is missing from your test plan. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: nmq [mailto:nmq0...@gmail.com] Sent: Tuesday, June 11, 2013 3:31 PM To: JMeter Users List Subject: Re: Login failed - javascript I meant they're encoding the request using javascript. Should I have a talk with the developers? Problem is they're offshore *sigh*. On Tue, Jun 11, 2013 at 4:27 PM, nmq nmq0...@gmail.com wrote: Hi Deepak Thanks for all that info. I installed fiddler quickly. This is what I got in request header: /UpdateCheck.aspx?isBeta=True HTTP/1.1 which I don't think is significant OR I could be wrong. Correct me if I am. It also says response is encoded and may need to be decoded before inspection when I clicked on Inspectors tab. Do you think this might be the problem? They're encoding the password using javascript? If yes, what can I do to bypass this? Hey Robin, I've done all of that. I used a tool called badboy to capture the script, so didn't need to use the proxy. I've tried both Firefox and Chrome strings for the user-agent in HTTP Header Manager. Everything was working fine before they deployed the current build yesterday. Regards Sam On Tue, Jun 11, 2013 at 4:18 PM, Robin D. Wilson rwils...@gmail.comwrote: First, this isn't really a limitation of JMeter, it is an artifact of the way web sites work. Keep in mind, JMeter is designed to test the 'server' part of the web system, but web systems include the 'browser' in the application logic (often times incorporating a lot of logic in the JavaScript code that runs in the browser, or in other coding systems such as Flash and Silverlight). You could call that a 'limitation' of JMeter, but that would be like saying that a chainsaw is limited because it can't be used as a good hammer. There are a couple of ways this is measured, depending on the site in question. If it is coming from the server, it is probably looking at a header in the request to figure out if you have JavaScript enabled. Add an HTTP Header Manager element to your test plan, and set a User-Agent value... We use the following User-Agent value: User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0) This essentially tells the server that you are making requests with the IE9.0 browser (which supports JavaScript by default). (NOTE: we use this because it is still our most popular browser (actually, that's not quite true - it is the most common version of the most popular browser 'type' (IE)) - for users hitting our sites.) But if you have a different user population, you might prefer to use Chrome or Firefox or Safari as your 'standard test' User-Agent. You can look up their User-Agent strings here: http://www.useragentstring.com/pages/useragentstring.php If the HTTP Header Manager + User-Agent value configuration doesn't work, you will need to figure out how the server is determining that the browser supports JavaScript, and mimic that with your test. It is usually easier to setup the 'HTTP Proxy Server', and just collect a session from your browser than it is to try to figure it out manually though. To setup the proxy and capture a session: 1) Create a new Test Plan. 2) Right-Click on Workbench and select: Add-Non-Test Elements-HTTP Proxy Server 3) Make sure Capture HTTP Headers is checked 4) Click Start on the HTTP Proxy Server configuration page (at the bottom of the page) 5) In your browser, set your Proxy Server address to localhost, and use the port specified in your HTTP Proxy Server configuration (default is 8080). 6) Visit your site, and perform some functions you want in your test. These should start to record your requests in the test plan, below the workbench section. You can click on one of the requests and see what the HTTP Header Manager looks like, and use that as your default HTTP Header Manager for your tests. You can also see what sort of interactions are taking place between the browser and the server - some of which may be under-the-covers (hidden from the user) and allowing the server to figure out whether the site
Re: Login failed - javascript
It appears to me that the way this works is to hide/unhide some elements on the page using JavaScript. The way that would work is to hide an element that says you must enable JavaScript and unhide an element that has the login form on it. If that is the case, then you can just ignore the you must enable JavaScript warning, and just submit the form anyway. The server has no way to know whether the browser hid/un-hid anything, so if you submit the login form it will assume you saw the login form. When you are looking in the tree listener, are you looking at the text of the response, or are you looking at the rendered HTML? You really need to look at the text since that's what JMeter actually sees. It may be a red herring to assume that the JavaScript warning makes a difference since you are looking at the response in a tool (the Tree Listener) that doesn't execute the JavaScript, and never will. -- Robin D. Wilson VOICE: 512-777-1861 On Jun 11, 2013, at 9:41 PM, nmq nmq0...@gmail.com wrote: Take a look at this code snippet I found for the login page. script type=text/javascript // activate login feature if script is activated and browser is supported if ($.browser.msie $.browser.version 8) { $('#browser-redirection').css('display', ''); } else { $('.script-checking').css('display', ''); $('#warnings').css('display', 'none'); } /script So my understanding is that the login feature is not getting activated at all as JMeter does not run javascript. Is that correct? Is there any way for me to simulate a user logging in with this situation? On Tue, Jun 11, 2013 at 5:10 PM, Deepak Shetty shet...@gmail.com wrote: . If the recorded requests have the same problems as your test plan did, which is fairly common when you have dynamic data and is not a good indicator. On Tue, Jun 11, 2013 at 1:52 PM, Robin D. Wilson rwils...@gmail.com wrote: If you use the Proxy setup, you can then just 'replay' the previous requests and see if they have the same problem as you were having. Basically, disable your test requests, and copy/paste the ones from the Proxy recording in their place. Run the test using the recorded requests, and watch the Tree Listener for the responses from the server. If the recorded requests have the same problems as your test plan did, then you will definitely need to discuss with your developers (maybe it's just a bug in their code?). If the recorded proxy script works normally, then you have a problem in your JMeter test plan setup - and you can use the proxy requests to figure out what is missing from your test plan. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: nmq [mailto:nmq0...@gmail.com] Sent: Tuesday, June 11, 2013 3:31 PM To: JMeter Users List Subject: Re: Login failed - javascript I meant they're encoding the request using javascript. Should I have a talk with the developers? Problem is they're offshore *sigh*. On Tue, Jun 11, 2013 at 4:27 PM, nmq nmq0...@gmail.com wrote: Hi Deepak Thanks for all that info. I installed fiddler quickly. This is what I got in request header: /UpdateCheck.aspx?isBeta=True HTTP/1.1 which I don't think is significant OR I could be wrong. Correct me if I am. It also says response is encoded and may need to be decoded before inspection when I clicked on Inspectors tab. Do you think this might be the problem? They're encoding the password using javascript? If yes, what can I do to bypass this? Hey Robin, I've done all of that. I used a tool called badboy to capture the script, so didn't need to use the proxy. I've tried both Firefox and Chrome strings for the user-agent in HTTP Header Manager. Everything was working fine before they deployed the current build yesterday. Regards Sam On Tue, Jun 11, 2013 at 4:18 PM, Robin D. Wilson rwils...@gmail.com wrote: First, this isn't really a limitation of JMeter, it is an artifact of the way web sites work. Keep in mind, JMeter is designed to test the 'server' part of the web system, but web systems include the 'browser' in the application logic (often times incorporating a lot of logic in the JavaScript code that runs in the browser, or in other coding systems such as Flash and Silverlight). You could call that a 'limitation' of JMeter, but that would be like saying that a chainsaw is limited because it can't be used as a good hammer. There are a couple of ways this is measured, depending on the site in question. If it is coming from the server, it is probably looking at a header in the request to figure out if you have JavaScript enabled. Add an HTTP Header Manager element to your test plan, and set a User-Agent value... We use the following User-Agent value: User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0) This essentially tells
Re: Login failed - javascript
By the way, this is where recording a login using the HTTP Proxy Recorder would help up you figure this problem out. -- Robin D. Wilson VOICE: 512-777-1861 On Jun 11, 2013, at 10:54 PM, Robin D. Wilson rwils...@gmail.com wrote: It appears to me that the way this works is to hide/unhide some elements on the page using JavaScript. The way that would work is to hide an element that says you must enable JavaScript and unhide an element that has the login form on it. If that is the case, then you can just ignore the you must enable JavaScript warning, and just submit the form anyway. The server has no way to know whether the browser hid/un-hid anything, so if you submit the login form it will assume you saw the login form. When you are looking in the tree listener, are you looking at the text of the response, or are you looking at the rendered HTML? You really need to look at the text since that's what JMeter actually sees. It may be a red herring to assume that the JavaScript warning makes a difference since you are looking at the response in a tool (the Tree Listener) that doesn't execute the JavaScript, and never will. -- Robin D. Wilson VOICE: 512-777-1861 On Jun 11, 2013, at 9:41 PM, nmq nmq0...@gmail.com wrote: Take a look at this code snippet I found for the login page. script type=text/javascript // activate login feature if script is activated and browser is supported if ($.browser.msie $.browser.version 8) { $('#browser-redirection').css('display', ''); } else { $('.script-checking').css('display', ''); $('#warnings').css('display', 'none'); } /script So my understanding is that the login feature is not getting activated at all as JMeter does not run javascript. Is that correct? Is there any way for me to simulate a user logging in with this situation? On Tue, Jun 11, 2013 at 5:10 PM, Deepak Shetty shet...@gmail.com wrote: . If the recorded requests have the same problems as your test plan did, which is fairly common when you have dynamic data and is not a good indicator. On Tue, Jun 11, 2013 at 1:52 PM, Robin D. Wilson rwils...@gmail.com wrote: If you use the Proxy setup, you can then just 'replay' the previous requests and see if they have the same problem as you were having. Basically, disable your test requests, and copy/paste the ones from the Proxy recording in their place. Run the test using the recorded requests, and watch the Tree Listener for the responses from the server. If the recorded requests have the same problems as your test plan did, then you will definitely need to discuss with your developers (maybe it's just a bug in their code?). If the recorded proxy script works normally, then you have a problem in your JMeter test plan setup - and you can use the proxy requests to figure out what is missing from your test plan. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.kingsisle.com -Original Message- From: nmq [mailto:nmq0...@gmail.com] Sent: Tuesday, June 11, 2013 3:31 PM To: JMeter Users List Subject: Re: Login failed - javascript I meant they're encoding the request using javascript. Should I have a talk with the developers? Problem is they're offshore *sigh*. On Tue, Jun 11, 2013 at 4:27 PM, nmq nmq0...@gmail.com wrote: Hi Deepak Thanks for all that info. I installed fiddler quickly. This is what I got in request header: /UpdateCheck.aspx?isBeta=True HTTP/1.1 which I don't think is significant OR I could be wrong. Correct me if I am. It also says response is encoded and may need to be decoded before inspection when I clicked on Inspectors tab. Do you think this might be the problem? They're encoding the password using javascript? If yes, what can I do to bypass this? Hey Robin, I've done all of that. I used a tool called badboy to capture the script, so didn't need to use the proxy. I've tried both Firefox and Chrome strings for the user-agent in HTTP Header Manager. Everything was working fine before they deployed the current build yesterday. Regards Sam On Tue, Jun 11, 2013 at 4:18 PM, Robin D. Wilson rwils...@gmail.com wrote: First, this isn't really a limitation of JMeter, it is an artifact of the way web sites work. Keep in mind, JMeter is designed to test the 'server' part of the web system, but web systems include the 'browser' in the application logic (often times incorporating a lot of logic in the JavaScript code that runs in the browser, or in other coding systems such as Flash and Silverlight). You could call that a 'limitation' of JMeter, but that would be like saying that a chainsaw is limited because it can't be used as a good hammer. There are a couple of ways this is measured, depending on the site in question. If it is coming from the server, it is probably looking at a header in the request to figure out if you have JavaScript enabled. Add an HTTP Header
Re: Assert Checkbox value if checked
You need to create all of your response assertions as direct children of the response, and then (after collecting all of the values) check them with the if statement(s). -- Robin D. Wilson VOICE: 512-777-1861 On May 24, 2013, at 3:39 PM, Aaron Tracy aaron.tr...@octanner.com wrote: Hi all! Hopefully this question is easy to answer :D My webpage contains a bunch of checkmarks on it so I was hoping to do a regular expression extraction on each checkbox, then in an If controller check if the checkbox is to be checked (I have a .csv file that tells me which checkboxes are to be checked). If it is to be checked, then verify the regular expression that was extracted contains checked in it. To do this validation, I'm using an IF controller and it appears that once I jump into the IF controller (I only check the checkbox if it is supposed to be checked), the response assertion loses scope and no longer can see the http request to perform the evaluation on. I don't need to use a response assertion but I'm not sure which assertion type I can use to compare two variables to each other. I was thinking of a beanshell assertion, does anyone have a good example of a beanshell or other method where I can evaluate these two strings and have the assertion pass if both variables are equal and fail if they aren't? Thanks! Aaron - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: How to acheive load
Another thing to consider is how much network bandwidth you are using. If each request is returning 100K in data, your 25 rps rate is ~2.5MB per second (which is ~25 M bits per second). Depending on your network interface and infrastructure that could be a fraction of the available bandwidth or all of it. Keep in mind, your are limited by the slowest hop in the network. For example, we test on a separated and isolated network switch that has 2Gbps of total throughput. But we have several machines on that switch (all part of our test) and they have to share the 2Gbps between themselves. Moreover, each machine has only a 1Gbps NIC. That is generally more than enough for our testing, so we aren't usually constrained by network capacity. However, If we tried to run this same test to our production system, even though those servers have much higher capacities than our test environment, our internal network has only our 25Mbps ISP connection to the Internet (which is shared by the whole company), and we'd be throttled by that connection to our production servers (which are in a hosting facility in a different city). So even though our test environment is not nearly as beefy as our production setup, our tests to the production systems would be much slower because of the limited network capacity. Also, the fact that the Internet connection is shared with people who are not part of the test means that we would get widely varying results depending on what other people are doing when we fire up a test (for example, downloading updates to Windows or streaming movies/music). But in our test environment we share the network only with our own test servers, so we can control that variable during testing. Another thing to check is how much your load generator is recording during the tests. We have a tree listener in our test plans, but we found that if we record all responses, the our Jmeter load generation is severely reduced. Moreover, it degrades even further the longer the test runs. However, if we use the tree listener to only record errors instead of everything, it works without interfering in the test, and we still get enough information to figure out what broke when something goes wrong. (Although I'd still like to see a feature to record the whole thread when any iteration of the thread has a failure.) The best thing to remember is that you are testing a system, and it is constrained by the most limited part during your test. Figuring out which part is the bottleneck is all the fun... -- Robin D. Wilson VOICE: 512-777-1861 On May 23, 2013, at 4:34 AM, Adrian Speteanu asp.ad...@gmail.com wrote: Hi, Not being able to achieve target throughput is not always related to things that are wrong on the test client (considering that 25 rps seems rather low ), but rather with applications deployed in a state that is not ready to handle the generated traffic. The advise below is very good, so that you eliminate common/obvious mistakes client-side. But I also suggest you keep an eye for possible application setup specific problems. Cheers, Adrian S On Thu, May 23, 2013 at 12:30 AM, Shmuel Krakower shmul...@gmail.comwrote: Things you may try: 1. Remove the Throughput controller and see what happens. 2. Add more threads and see what happens. 3. Is your load machine is overkilled (CPU at 100%, etc...)? 4. If all above leaves you with same limit of about 25MPS it might be the target service which cannot handle anymore load. Try: a. Running at the same time, the same load from another machine and see if you get to 50MPS in total or still you get about 25... b. Look into the service under load and try to figure out what is the bottleneck c. Maybe something else between the two machines which runs JMeter and the Service is limiting you? (i.e. internet connection limits) Shmuel Krakower. www.Beatsoo.org - re-use your jmeter scripts for application performance monitoring from worldwide locations for free. On Wed, May 22, 2013 at 6:48 PM, Sameera Rao P samee...@techmahindra.com wrote: Hi I Am using soap sample xml / RPC and trying to post ebxml messages. I am not able to achieve my load of 100 Messages Per second running from GUI. I tried using constant throughput timer with 15 threads ,but still not able to go beyond 25MPS. Can you please suggest the solution for achieving the load Thanks Regards Sam Disclaimer: This message and the information contained herein is proprietary and confidential and subject to the Tech Mahindra policy statement, you may review the policy at a href= http://www.techmahindra.com/Disclaimer.html http://www.techmahindra.com/Disclaimer.html/a externally and a href= http://tim.techmahindra.com/tim/disclaimer.html; http://tim.techmahindra.com/tim/disclaimer.html/a internally within Tech
Re: Unable to record using HTTP Proxy Server
That's great, you should probably file a bug on the error, make sure you spell out the details of how to recreate it (e.g. Make requests by IP address instead of hostname). -- Robin D. Wilson VOICE: 512-777-1861 On Mar 20, 2013, at 3:21 AM, rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, We are now able to record the tests as the steps suggested by you with some additions. Earlier I was accessing the application either through IP or localhost (deployed on my machine) and now I have tried by server name or machine name and it is working now. But solution is, we should know the server name for recording the application deployed on it through JMeter. Thanks, Rohit Soni Hi Robin, I have tried to run the jmeter by exactly mapping your steps suggested. Someything have been recorded but getting the error as ... java.lang.NullPointerException at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.getConnectionHeaders(HTTPHC4Impl.java:706) at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:363) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:62) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1088) at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:211) ... Thanks, Rohit Soni I would suggest a simpler setup to get started... 1) on your proxy configuration (on IE) uncheck the Bypass proxy for local... Basically use the JMeter proxy for ALL requests. Keep in mind, if your JBoss server is on your local network, checking the Bypass proxy for local... setting will not use the proxy for local IP addresses - so it would never record on your proxy... 2) on JMeter, start JMeter, and only add the Proxy (nothing else). Do not make any other config changes. Click Start (at the bottom of the proxy config page). 3) on IE hit your page (from your JBoss server). -- Robin D. Wilson VOICE: 512-777-1861 On Mar 19, 2013, at 12:45 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, To ease, I have deployed a dummy project on my machine using JBoss. Project contains 4 html pages with links. Attached are the steps that I have performed for recording through JMeter. Hope now it becomes easier for you to understand as what I am doing for recording. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 16 March 2013 23:11 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server I have a feeling we are not communicating clearly... Does your system work from the browser to the IIS server when the JMeter proxy is not used? If it does, please setup the JMeter proxy, start it, and send pictures of the JMeter setup (while it is running) and the browser's proxy configuration, and what you see on the browser when you make a request to the IIS server with the proxy enabled... Also, send you JMeter log file... -- Robin D. Wilson VOICE: 512-777-1861 On Mar 16, 2013, at 12:49 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, I have re-verified that the browser is making the request to IIS server with both the ports 80 8080. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 15 March 2013 20:21 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server So can you verify for me that the browser can make requests to the IIS server? -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 11:13 PM, rohit.s...@hqcc.sahara.co.in wrote: Yes Robin, the case is actually as mentioned by you Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine Regards, Rohit Soni Based on your diagram, I can't tell if you are running JMeter on the same machine as the browser (end user). Can you please clarify if this is the case? Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine You need to verify that our browser can make requests to your IIS without the proxy enabled. -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 1:31 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: 1- Browser (used to make requests for URLs) We are using IE 9 and Mozilla 5.0 2- JMeter Proxy We are having HTTP Proxy Server ? Global Settings ? 8080 3- Web Server:- IIS 6 4- App Server:- ASP using .NET framework 5- Database Server:- Oracle 11g Attached is the architecture for accessing the app through servers. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 13 March 2013 18:15 To: JMeter Users List
Re: Unable to record using HTTP Proxy Server
By the way, as a general rule, ALWAYS simplify your system to the very minimum configuration necessary when you are having problems. Once you identify the source of the problem, you can add back in the complexities. This is true for nearly all forms of testing and software development. -- Robin D. Wilson VOICE: 512-777-1861 On Mar 20, 2013, at 7:20 AM, Robin D. Wilson rwils...@gmail.com wrote: That's great, you should probably file a bug on the error, make sure you spell out the details of how to recreate it (e.g. Make requests by IP address instead of hostname). -- Robin D. Wilson VOICE: 512-777-1861 On Mar 20, 2013, at 3:21 AM, rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, We are now able to record the tests as the steps suggested by you with some additions. Earlier I was accessing the application either through IP or localhost (deployed on my machine) and now I have tried by server name or machine name and it is working now. But solution is, we should know the server name for recording the application deployed on it through JMeter. Thanks, Rohit Soni Hi Robin, I have tried to run the jmeter by exactly mapping your steps suggested. Someything have been recorded but getting the error as ... java.lang.NullPointerException at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.getConnectionHeaders(HTTPHC4Impl.java:706) at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:363) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:62) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1088) at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:211) ... Thanks, Rohit Soni I would suggest a simpler setup to get started... 1) on your proxy configuration (on IE) uncheck the Bypass proxy for local... Basically use the JMeter proxy for ALL requests. Keep in mind, if your JBoss server is on your local network, checking the Bypass proxy for local... setting will not use the proxy for local IP addresses - so it would never record on your proxy... 2) on JMeter, start JMeter, and only add the Proxy (nothing else). Do not make any other config changes. Click Start (at the bottom of the proxy config page). 3) on IE hit your page (from your JBoss server). -- Robin D. Wilson VOICE: 512-777-1861 On Mar 19, 2013, at 12:45 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, To ease, I have deployed a dummy project on my machine using JBoss. Project contains 4 html pages with links. Attached are the steps that I have performed for recording through JMeter. Hope now it becomes easier for you to understand as what I am doing for recording. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 16 March 2013 23:11 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server I have a feeling we are not communicating clearly... Does your system work from the browser to the IIS server when the JMeter proxy is not used? If it does, please setup the JMeter proxy, start it, and send pictures of the JMeter setup (while it is running) and the browser's proxy configuration, and what you see on the browser when you make a request to the IIS server with the proxy enabled... Also, send you JMeter log file... -- Robin D. Wilson VOICE: 512-777-1861 On Mar 16, 2013, at 12:49 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, I have re-verified that the browser is making the request to IIS server with both the ports 80 8080. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 15 March 2013 20:21 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server So can you verify for me that the browser can make requests to the IIS server? -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 11:13 PM, rohit.s...@hqcc.sahara.co.in wrote: Yes Robin, the case is actually as mentioned by you Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine Regards, Rohit Soni Based on your diagram, I can't tell if you are running JMeter on the same machine as the browser (end user). Can you please clarify if this is the case? Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine You need to verify that our browser can make requests to your IIS without the proxy enabled. -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 1:31 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: 1- Browser (used to make requests for URLs) We are using IE 9 and Mozilla 5.0 2- JMeter Proxy
Re: Unable to record using HTTP Proxy Server
I would suggest a simpler setup to get started... 1) on your proxy configuration (on IE) uncheck the Bypass proxy for local... Basically use the JMeter proxy for ALL requests. Keep in mind, if your JBoss server is on your local network, checking the Bypass proxy for local... setting will not use the proxy for local IP addresses - so it would never record on your proxy... 2) on JMeter, start JMeter, and only add the Proxy (nothing else). Do not make any other config changes. Click Start (at the bottom of the proxy config page). 3) on IE hit your page (from your JBoss server). -- Robin D. Wilson VOICE: 512-777-1861 On Mar 19, 2013, at 12:45 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, To ease, I have deployed a dummy project on my machine using JBoss. Project contains 4 html pages with links. Attached are the steps that I have performed for recording through JMeter. Hope now it becomes easier for you to understand as what I am doing for recording. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 16 March 2013 23:11 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server I have a feeling we are not communicating clearly... Does your system work from the browser to the IIS server when the JMeter proxy is not used? If it does, please setup the JMeter proxy, start it, and send pictures of the JMeter setup (while it is running) and the browser's proxy configuration, and what you see on the browser when you make a request to the IIS server with the proxy enabled... Also, send you JMeter log file... -- Robin D. Wilson VOICE: 512-777-1861 On Mar 16, 2013, at 12:49 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, I have re-verified that the browser is making the request to IIS server with both the ports 80 8080. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 15 March 2013 20:21 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server So can you verify for me that the browser can make requests to the IIS server? -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 11:13 PM, rohit.s...@hqcc.sahara.co.in wrote: Yes Robin, the case is actually as mentioned by you Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine Regards, Rohit Soni Based on your diagram, I can't tell if you are running JMeter on the same machine as the browser (end user). Can you please clarify if this is the case? Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine You need to verify that our browser can make requests to your IIS without the proxy enabled. -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 1:31 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: 1- Browser (used to make requests for URLs) We are using IE 9 and Mozilla 5.0 2- JMeter Proxy We are having HTTP Proxy Server ? Global Settings ? 8080 3- Web Server:- IIS 6 4- App Server:- ASP using .NET framework 5- Database Server:- Oracle 11g Attached is the architecture for accessing the app through servers. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 13 March 2013 18:15 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server There is no conflict between port 80 and port 8080, since they are different ports. Also, the conflict would only exist if the process listening to the port were on the same physical box as the JMeter proxy process. So it sounds like we have some other sort of problem here. Can you give us some idea of all the physical boxes you have involved here? You have the following processes listed already, are they on the same box, or different boxes? 1) browser (used to make requests for URLs) 2) JMeter Proxy 3) Web server 4) Application server (PHP, Java, ASP, CGI, etc. based application system) 5) Database server Also, can your browser communicate with the Web server (and Application server) without the JMeter setup? The idea of the JMeter Proxy is that the browser will pass through the Proxy on the way to the Web/Application server. More details about your complete setup will probably help us help you... Even the URL you are trying to hit will possibly give us a clue as to the problem... -- Robin D. Wilson VOICE: 512-777-1861 On Mar 13, 2013, at 4:55 AM, Lokesh K Sharma lokesh.sha...@hqcc.sahara.co.in wrote: Hi Everyone, First of all thank you Robin for your help. Friends with the help of robin's 2nd point the problem got resolved partially, Yes here in our organization we have
Re: Unable to record using HTTP Proxy Server
I have a feeling we are not communicating clearly... Does your system work from the browser to the IIS server when the JMeter proxy is not used? If it does, please setup the JMeter proxy, start it, and send pictures of the JMeter setup (while it is running) and the browser's proxy configuration, and what you see on the browser when you make a request to the IIS server with the proxy enabled... Also, send you JMeter log file... -- Robin D. Wilson VOICE: 512-777-1861 On Mar 16, 2013, at 12:49 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Robin, I have re-verified that the browser is making the request to IIS server with both the ports 80 8080. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 15 March 2013 20:21 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server So can you verify for me that the browser can make requests to the IIS server? -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 11:13 PM, rohit.s...@hqcc.sahara.co.in wrote: Yes Robin, the case is actually as mentioned by you Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine Regards, Rohit Soni Based on your diagram, I can't tell if you are running JMeter on the same machine as the browser (end user). Can you please clarify if this is the case? Browser and JMeter on the same machine IIS and ASP (.NET) together on separate machine from browser Oracle on third machine You need to verify that our browser can make requests to your IIS without the proxy enabled. -- Robin D. Wilson VOICE: 512-777-1861 On Mar 14, 2013, at 1:31 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: 1- Browser (used to make requests for URLs) We are using IE 9 and Mozilla 5.0 2- JMeter Proxy We are having HTTP Proxy Server ? Global Settings ? 8080 3- Web Server:- IIS 6 4- App Server:- ASP using .NET framework 5- Database Server:- Oracle 11g Attached is the architecture for accessing the app through servers. Thanks and Regards, Rohit Soni -Original Message- From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: 13 March 2013 18:15 To: JMeter Users List Cc: JMeter Users List Subject: Re: Unable to record using HTTP Proxy Server There is no conflict between port 80 and port 8080, since they are different ports. Also, the conflict would only exist if the process listening to the port were on the same physical box as the JMeter proxy process. So it sounds like we have some other sort of problem here. Can you give us some idea of all the physical boxes you have involved here? You have the following processes listed already, are they on the same box, or different boxes? 1) browser (used to make requests for URLs) 2) JMeter Proxy 3) Web server 4) Application server (PHP, Java, ASP, CGI, etc. based application system) 5) Database server Also, can your browser communicate with the Web server (and Application server) without the JMeter setup? The idea of the JMeter Proxy is that the browser will pass through the Proxy on the way to the Web/Application server. More details about your complete setup will probably help us help you... Even the URL you are trying to hit will possibly give us a clue as to the problem... -- Robin D. Wilson VOICE: 512-777-1861 On Mar 13, 2013, at 4:55 AM, Lokesh K Sharma lokesh.sha...@hqcc.sahara.co.in wrote: Hi Everyone, First of all thank you Robin for your help. Friends with the help of robin's 2nd point the problem got resolved partially, Yes here in our organization we have a proxy server on port 80 so we decided to give a try by removing organizations internet connection and used personal direct internet connection because that i guess do not have any proxy settings. After using personal direct internet connection we changed the browser connection settings as Auto-detect proxy settings for this network and saved the browser settings. Now when we provided server name jmeter.apache.org in Http request defaults and clicked on Start button of HTTP Proxy Server after entering all required fields. It provided us the results in View Result Tree (with green color sign mean success/pass i guess) and created a record in Recording Controller. But now when we tried the same way to record internal website of my organization (which i have to test finally), but we were not able to do the same because the site we tried to access is on intranet and we are using direct internet connection. As per discussion with a colleague we come to know as we have our own proxy server on port 80 might be because of same we are unable to access our internal sites by making localhost on port 8080 so we tried as per Robin suggestion by making it localhost
RE: Analyzing pefr test results and preparing a report
You need to debug the problem by disassembling all the stuff that is actually happening - and trying to test each part as separately as possible. What this means is, start with the simplest case you can think of (perhaps Get Login Page), and figure out why that page is taking 10 seconds. If you hit it with 10 simultaneous users - does it take the same amount of time (or longer, or shorter)? If you hit it with 1 simultaneous user? 50? 75? Try to figure out if the problem is load related, or page/system design related first. Next, if the problem is related to load - is it because of some backend processing that happens when you deliver that page, or is it just a limitation of your server? Try making the page a static page (request it in your browser, then save as an HTML file and store that on your server - then request that file (instead of the regular login page). Just to see if there is a difference. Also, just out of curiosity - do you have Request All Embedded Resources enabled for your test? (This causes JMeter to request all of the images, css, js, etc. that are embedded in the raw HTML of the page.) If those assets are large (big images, movies, sounds, etc.) that can really affect your ability to exercise the application performance of your system. Think about it like this, if you request 500KB of images for every time you deliver a page, you will be running a network load of ~5Mbps (actually a little more - with the IP signaling overhead and all of that) for each 'user' process making that request each second. With 100 simultaneous users, you could easily be reaching several Gbps of network I/O. That may be your bottleneck. For our performance benchmarking, we try to eliminate the network I/O as the bottleneck when we want to test the application throughput. So we disable Request All Embedded Resources on our tests for that part of our benchmarks. We run a separate benchmark where we examine the network throughput - but our sites are highly multimedia, so we know that the network I/O will seriously affect our overall performance results. (Also, for our testing, we setup our load generators (JMeter systems) and our Perf Test Servers on their own network switch - isolated from all other traffic - to make sure that our testing isn't affected by temporary network activity from other (non-test) users. Lastly, the goal of performance benchmarking may be different than your goal... For us, we use benchmarking to set a baseline for our testing into the future. That is, we record our results from today's code, and then compare them to the next release we are working on, to make sure that we didn't slow down significantly (or, if we were trying to improve performance - that we in fact, did improve performance). You can certainly use performance testing to help you figure out which places have bottlenecks (a different purpose), but that requires that you record all sorts of metrics on what is happening when you are running load on your machines. (You have to watch CPU, Disk I/O, Network I/O, Database Activity, etc. - on both the 'servers' and the 'load generators' - to make sure you properly isolate where your system is being throttled. Remember, if your load generator (JMeter) only has a 100Mbps network card, you will never be able to generate more than 100Mbps of network traffic on your server, no matter how fast your server is...) For that kind of testing, it really helps to be able to isolate the specific path of code that is causing the throttling to occur (so minimalistic test designs work better). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Perf Test [mailto:perfs...@gmail.com] Sent: Wednesday, March 13, 2013 1:24 AM To: user@jmeter.apache.org Subject: Analyzing pefr test results and preparing a report Dear experts, This is with regard to analyzing performance test results, I have tested performance of an application and obtained following results from jmeter, For 100 users load; Login page request 10 sec , Login to app 15 sec Creator customer 20 sec I have to prepare a report for the same, I'm not sure about what are the exact or near reasons which are pertaining to my test results (i.e. why app responses such slow) which I could mentioned under 'conclusion'. part in the report. After discussing I have set the benchmarking for the above areas before starting the test I have checked the throughput as well, it is below 1 transaction per second in most cases, Application in test environment and I have analyzed CPU usage, memory, Netwotk I/O etc. I need to suggest our client mentioning areas need to improve in application, what are the areas in app I should mention i need to mention in order to get better performance (which is 3 to 4 sec). Network, the amount of memory, CPU usage seems Ok.what about app? Thanks, Sam
Re: Unable to record using HTTP Proxy Server
You have to setup the proxy in your IE browser to point to your JMeter proxy server... It will be under the Internet Explorer Options menu, in the Connections tab, under the LAN Settings. -- Robin D. Wilson VOICE: 512-777-1861 On Mar 11, 2013, at 4:04 AM, Rohit Soni rohit.s...@hqcc.sahara.co.in wrote: Hi Everyone, Here are the steps we have followed to record a login page of our internal website .aspx Steps: 1) First of all we are using IE 9 and we have changed the browser http proxy settings as: Address: localhost and Port: 8080. 2) Added Http proxy server under workbench (default settings). 3) Started recording by pressing Start button at the bottom of HTTP Proxy Server(step2). 4) Opened the IE 9 and entered the URL to access internal website. 5) Entered the login details and navigated to post login page. 6) Stopped the recording. Nothing happened, it do not recorded and displayed any step from step 4 to 6, Kindly guide me if something is missing or proper way to record this login page via IE 9. Thanks and Regards, Rohit Soni Sahara India Mob: 8896122232 Email: mailto:rohit.s...@hqcc.sahara.co.in rohit.s...@hqcc.sahara.co.in - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Using Jmeter in heterogeneous environment
First, we use POSIX path conventions (e.g., '/' instead of '\' - which works even on Windows). Second, in our scripts, we use 'relative' paths (e.g., './path/to/file') instead of fully qualified path (/path/to/file - the '.' makes all the difference). Third, in our 'user.properties' file (in the JMeter './bin' folder), we add this (Windows style): includecontroller.prefix=X:/Tests/JMeter/controllers/ Or (Unix style): includecontroller.prefix=/mnt/Tests/JMeter/controllers/ This tells JMeter where to start looking for included controllers. You also might be able to configure some variables, and use those (I haven't tried this) in your path names... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Marcelo Jara [mailto:marceloj...@hotmail.com] Sent: Friday, January 25, 2013 12:24 PM To: user@jmeter.apache.org Subject: Using Jmeter in heterogeneous environment This may be a unique situation. I currently develop my test plans on my desktop which is running Microsoft Windows. The load agents that are responsible for the stress tests, however, are on Linux servers. Is there a way Jmeter can detect which OS it's running on? The one case where this is needed is when defining the location of the data files. From my desktop, I define the path to a network share (e.g. \\netshare\jmeter\data). On the Linux agents, we mounted that network share to /mnt. So when the test plan runs on the Linux agent, it needs to get the data files from /mnt/jmeter/data. For now, I've made the data file path a parameter that I can pass in to the test plan, but was hoping a I can define both paths and have Jmeter decide which one to use depending on which OS it's running on. One way is to use an OS sampler in the setUp thread and try to perform a Windows only command (dir ?) and see if it returns and error. I can then assume we're on a Linux server. Thanks, Marcelo - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: JMeter out of memory
An alternative is to use those two listeners, but only capture Errors. I can't imagine any value (for analysis) of reviewing thousands of successful request/responses (can you say data overload?)... But if you check the little box on the listener to just capture errors, then those listeners are quite useful. Of course, you have to make sure that your test returns an error when something goes awry. You can use Assertions for this. In our tests, each request has at least one assert associated with it, looking in the response for some string that should be present if the request was successful, but absent if it fails. This assures we get an error logged in the Tree listener when a request does do what we expected it to do. -- Robin D. Wilson VOICE: 512-777-1861 On Jan 9, 2013, at 3:11 AM, Philippe Mouawad philippe.moua...@gmail.com wrote: Hello, No you don't need these 2 listeners for analysis with 100 threads and 2 hours run. These 2 listeners are to be used during scripting debug with 1 to 5 users max and with few seconds to very few minutes of run, once your script is debugged and OK, you must remove them and absolutely not use them during load test. With 100 threads, I doubt you really need distributed testing Read this: - http://jmeter.apache.org/usermanual/best-practices.html - http://www.ubik-ingenierie.com/blog/jmeter_performance_tuning_tips/ RegardsPhilippe M. On Wed, Jan 9, 2013 at 10:10 AM, Niraj niraj.khatm...@gmail.com wrote: Then use non gui mode. But having these two listeners in your test plan will consumes lot's of memory. I am not sure why do you need both the listeners? Are you analyzing all the requests responses for 100 users? On Wed, Jan 9, 2013 at 2:34 PM, Srinivasa Tekkatte Shenoy tsrinivas.she...@mimos.my wrote: I am already using distributed testing one master and 3 slaves. We need these two listeners for analysis. Thank You Regards Shenoy -Original Message- From: Niraj [mailto:niraj.khatm...@gmail.com] Sent: Wednesday, 9 January, 2013 5:02 PM To: JMeter Users List Cc: jmeter-u...@jakarta.apache.org Subject: Re: JMeter out of memory View Results in Table and View Results in Tree listeners consumes lot's of memory. Remove this two listeners and re-run the test again. If you are still facing the same issue then use distributed testing. On Wed, Jan 9, 2013 at 2:24 PM, Srinivasa Tekkatte Shenoy tsrinivas.she...@mimos.my wrote: Hi All, I am executing the JMeter for a script with 100 user threads for 2 hours duration and loop count set to Forever. Ramp up and ramp down in of total 100 users in one minute. The min and max Heap size of Jmeter.bat is set as 1GB. It cannot be increase to more. Whether any other way to increase the heap size. We currently have listeners for Summary Report, View Results in Table and View Results in Tree. I am getting out of memory error after 30minutes. Could you please let me know how to fix this. Thank You Regards Shenoy -- - - DISCLAIMER: This e-mail (including any attachments) is for the addressee(s) only and may contain confidential information. If you are not the intended recipient, please note that any dealing, review, distribution, printing, copying or use of this e-mail is strictly prohibited. If you have received this email in error, please notify the sender immediately and delete the original message. MIMOS Berhad is a research and development institution under the purview of the Malaysian Ministry of Science, Technology and Innovation. Opinions, conclusions and other information in this e- mail that do not relate to the official business of MIMOS Berhad and/or its subsidiaries shall be understood as neither given nor endorsed by MIMOS Berhad and/or its subsidiaries and neither MIMOS Berhad nor its subsidiaries accepts responsibility for the same. All liability arising from or in connection with computer viruses and/or corrupted e-mails is excluded to the fullest extent permitted by law. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- Cordialement. Philippe Mouawad. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Re: Performance testing - For diffrent user roles
You can merge independent script fragments into one script from the File menu. You can also create a common test unit (for example, login) and then use an Include Controller to utilize that function within a larger test. In your case, I would create independent functions for each menu option. Then I would create a single script that has separate thread groups for each of you user types, combining the functional units within each thread group using Include Controllers. -- Robin D. Wilson VOICE: 512-777-1861 On Sep 12, 2012, at 6:39 AM, Samaraweera, Ravinda ravindasamarawe...@kpmg.com wrote: Idea is fine, but merging appreciate if you can clarify bit more... -Original Message- From: Garvita Mehta [mailto:garvita.me...@tcs.com] Sent: Wednesday, September 12, 2012 5:02 PM To: JMeter Users List Cc: JMeter Users List Subject: Re: Performance testing - For diffrent user roles Hi All, you can make different scripts as per user roles and then merge various scripts. Thanks and Regards, Garvita Mehta CEG - CSR Project Tata Consultancy Services Ph:- +91 22 67796896 Mailto: garvita.me...@tcs.com Website: http://www.tcs.com Experience certainty. IT Services Business Solutions Outsourcing -Samaraweera, Ravinda ravindasamarawe...@kpmg.com wrote: - To: JMeter Users List user@jmeter.apache.org From: Samaraweera, Ravinda ravindasamarawe...@kpmg.com Date: 09/12/2012 03:58PM Subject: Performance testing - For diffrent user roles Dear Experts, Lets say I have 20 users (20 roles) with different menu functions visible according to the user role. I need to load 20 different users at once to the system and access particular menu functions in the system for a given time. Assume that 'Dash board' page is common to all 20 users and other functions can see be seen only according to the use role. My Q is how do I control 20 users not accessing all functions (i.e. Which is not under their role). What is the best practice to follow. Thanks Chi. *** Disclaimer The information contained in this communication is confidential and may be legally privileged. It is intended solely for the use of the individual or entity to whom it is addressed and others authorised to receive it. If you are not the intended recipient you are hereby notified that any disclosure, copying, distribution or taking action in reliance of the contents of this information is strictly prohibited and may be unlawful. KPMG is neither liable for the proper, complete transmission of the information contained in this communication nor any delay in its receipt. *** =-=-= Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you *** Disclaimer The information contained in this communication is confidential and may be legally privileged. It is intended solely for the use of the individual or entity to whom it is addressed and others authorised to receive it. If you are not the intended recipient you are hereby notified that any disclosure, copying, distribution or taking action in reliance of the contents of this information is strictly prohibited and may be unlawful. KPMG is neither liable for the proper, complete transmission of the information contained in this communication nor any delay in its receipt. *** - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: standard/benchmarking value for loading a web page
I don't know about everyone else, but we use 'benchmark' to evaluate the difference between one release and the next. The value of benchmarking (to us) is to track the change in performance over time of our system. It certainly is nice to compare to some arbitrary standard, but that's only a secondary value - the primary goal is to make sure we are not getting slower with each release. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Shaba K [mailto:shabazi...@gmail.com] Sent: Wednesday, August 22, 2012 7:49 AM To: JMeter Users List Subject: Re: standard/benchmarking value for loading a web page It's different for different business kind of webpage too You'l have to grab this as a NFS from your business. cheers, s On Wed, Aug 22, 2012 at 6:31 AM, Samaraweera, Ravinda ravindasamarawe...@kpmg.com wrote: Dear All, I have completed internal application's performance test and results are with me(Thanks for jmeter), I just need to know what are the standard/benchmarking loading time of a average web page.i.e. loging page, a search page, and a webpage with a grid with 15 rows and 5 columns of data (No images). Any suggestion much appreciated. Thanks. *** Disclaimer The information contained in this communication is confidential and may be legally privileged. It is intended solely for the use of the individual or entity to whom it is addressed and others authorised to receive it. If you are not the intended recipient you are hereby notified that any disclosure, copying, distribution or taking action in reliance of the contents of this information is strictly prohibited and may be unlawful. KPMG is neither liable for the proper, complete transmission of the information contained in this communication nor any delay in its receipt. *** - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Analysing the View Result Tree Listener
My experience with the View Results Tree listener suggest that using it has a big affect on the performance characteristics of the test. I noticed 2 things: 1) The test generally runs slower when the View Results Tree listener is collecting sample results. (I attribute that to the fact that it is having to write all that data to disk). 2) When you reach a certain point (several thousand samples), the test responses are substantially altered by the View Results Tree listener (filling up some buffer somewhere?)... I would suggest that you use the View Results Tree with some caveats: 1) Don't use it for a load-test, or performance-test scenario, it will interfere with the accuracy of your results. 2) Use it for 'Errors' recording only (in load/perf tests), since it will log only the responses that had an error (this is really helpful in debugging what broke). 3) Use other listeners for tracking the performance and load of your system (the perfmon listener is handy, and summary results is useful too). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: ZK [mailto:stevesenio...@gmail.com] Sent: Thursday, July 05, 2012 9:37 AM To: jmeter-u...@jakarta.apache.org Subject: Re: Analysing the View Result Tree Listener Hi, if I were you, I would run the test several times, each time with a higher load start with 100 threads, then the next test 200 and so on After each test look at your Average response times in the Aggregate Report You may notice after a certain load these average response times become unacceptably high thus causing a timeout Also does your application have any timeout value set? you may be able to correlate these 2 points Another point would be if you are getting issues with say 500 threads, try distributed testing, i.e use 2 load injectors with each running 250 threads each and see if the issue still occurs HTH ZK -- View this message in context: http://jmeter.512774.n5.nabble.com/Analysing-the-View-Result-Tree-Listener-tp5713858p5713886.html Sent from the JMeter - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: inquiry about JMeter specification
Yuka, JMeter can send an indefinite number of requests - depending on how you configure your test cases. (If you log a lot, you could run out of disk space from all of your logs, but as a rule you can run as many requests through your JMeter tests as you like.) We regularly run test cases with 200 or 300 simultaneous users (on a single machine), for 3-4 million iterations (loops through the test procedure). So I think the answer to your question is 'yes', but your questing still isn't clear. Rather than trying to re-translate, it might be better to give an example of what you are trying to do. Something like: Test a web application with 5000 simultaneous users, each hitting 1000 different web pages... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: yuka.naga...@accenture.com [mailto:yuka.naga...@accenture.com] Sent: Wednesday, June 27, 2012 12:53 AM To: user@jmeter.apache.org Subject: RE: inquiry about JMeter specification Dear Vance, JMeter User, Thank you very much for your quick reply. I'm sorry for my incorrect translation about No.4 No.4 means that JMeter can send more than 5,800 multiplicity requests or not? I'm not sure this question is still unclear or better. As for No.3, your expression is exactly what I wanted to say. Again, thank you very much for your time. Regards, Yuka -Original Message- From: Vance Zhao [mailto:vancez...@gmail.com] Sent: Wednesday, June 27, 2012 12:47 PM To: JMeter Users List Subject: Re: inquiry about JMeter specification Hi Yuka, My answers: 1. Yes 2. Yes 3. Do u mean run 223 test case scenarios simultaneously? Yes 4. Not a clear question. 5. Yes 2012/6/27 yuka.naga...@accenture.com Dear JMeter Users Hi, My name is Yuka Nagaoka working at Accenture Japan. I'm liking into the load testing tool that can reach our requirements below. Could you help me for the answer? Can JMeter ... 1. execute the sinarios automatically? 2. submit more than 1500 http requests at the same time? 3. register more than 223 sinarios? 4. accept more than 5800 accesses? 5. execute the several sinarios you have set at the same time? Basing on your experiences of the JMeter, I would appreciate if you could answer it can / it cannot or just yes / no for each function above. Thank you for your consideration in advance. Regards, Yuka Accenture Japan Ltd Health and Public Service Group Yuka Nagaoka Email: yuka.naga...@accenture.commailto:yuka.naga...@accenture.com Tel: +81-3-3505-8506 Subject to local law, communications with Accenture and its affiliates including telephone calls and emails (including content), may be monitored by our systems for the purposes of security and the assessment of internal compliance with Accenture policy. __ www.accenture.com Subject to local law, communications with Accenture and its affiliates including telephone calls and emails (including content), may be monitored by our systems for the purposes of security and the assessment of internal compliance with Accenture policy. __ www.accenture.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Jmeter 2.7 - non test element like proxy server are not saved on JMX ?
BTW, I tend to agree that it would be nice to save non-test elements... It is handy to setup a proxy config with exclusions, and stuff - and have it all pre-configured in a template... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: llow...@oreillyauto.com [mailto:llow...@oreillyauto.com] Sent: Monday, June 25, 2012 10:30 AM To: JMeter Users List Subject: Re: Jmeter 2.7 - non test element like proxy server are not saved on JMX ? Nicolas Grossi nicolas.gro...@gmail.com wrote on 06/25/2012 10:16:22 AM: From: Nicolas Grossi nicolas.gro...@gmail.com To: JMeter Users List user@jmeter.apache.org Date: 06/25/2012 10:23 AM Subject: Jmeter 2.7 - non test element like proxy server are not saved on JMX ? Team: I´m using jmeter 2.7 and I have a project on http proxy server but after the project is saved, that section is not saved. I´m doing something wrong ? This is the way that Jmeter has always behaved. Nico -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. This communication and any attachments are confidential, protected by Communications Privacy Act 18 USCS § 2510, solely for the use of the intended recipient, and may contain legally privileged material. If you are not the intended recipient, please return or destroy it immediately. Thank you. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Inserting Cookie Data into URL. (I have googled and looked at guides, it looks correct but fails)
Instead of 'JSESSIONID', to reference the cookie value, don't you need to use ${COOKIE_JSESSIONID}? I think all of the cookies are supposed to be available throught the 'COOKIE_[cookie name]' syntax (by default - you can change the prefix value in a properties file setting if you like). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Dean Lozo [mailto:dean.l...@gmail.com] Sent: Thursday, June 21, 2012 9:20 AM To: user@jmeter.apache.org Subject: Inserting Cookie Data into URL. (I have googled and looked at guides, it looks correct but fails) Hey Note: This is my first time usign JMeter and I am a complete noob. I have done large amount of googling and reading through documentation. After looking at several tutorials, and trying different things they have all failed. I might have forgotten something more basic. It has been a nightmare to use the re-cookie i receive in Sampler Result after logging in. I am trying to do this by using the HTTP URL Re-writing Modifier and Cookie manager feature that JMeter offers. I have enabled saving cookies to true. JSESSIONID keeps staying blank for some reason. Links to pictures can be found below. I am at a loss, and would really love some help! That the URL works at this point is irrelevant, I only wish to generate the correct URL. If there is no time to help, I would greatly appreciate an XML file with the functions working. http://imgur.com/a/Qp13D Cheers Dean - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Preparing LINUX or WIN machines to run Jmeter
On Linux, I'm not sure... I suspect you don't have to do anything special. On Windows, it depends on the OS, but the changes are similar. Mostly, you need to update the registry to change the MAXCONNECTIONSPERSERVER and MAXCONNECTIONSPER1_0SERVER settings to allow for a lot more outbound TCP connections. Also on Win 7 (perhaps Vista as well), you need to increase the MaxUserPort beyond the default. If you are on a 'server' OS (Win2003, Win2008, etc.), you probably don't need to make this change. But on the XP, and Win Vista or Win 7 versions, you will need to do it. Just google those settings, and read the info about the registration hacks you will need. I created a '.reg' file for our Win7 systems, so I paste its contents here - in case you have a Win7 box. You can save the below to a file, then go into Registry Editor and 'Import' the file if you like. It sets all of the 'max connection' values to 2000, and the maxuserport value to 65534 (which is the max possible value). DON'T USE THIS FILE WITH OTHER VERSIONS OF WINDOWS - IT WON'T WORK FOR ANYTHING BUT WIN7. Also, if you have already edited these settings, I believe this will overwrite them. So you would probably just want to manually add stuff from this. Lastly, these changes would not be appropriate for an 'end-user' machine, only for a load-testing machine where you are running less than 2000 simultaneous threads. -CUT HERE Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER] explorer.exe=dword:0800 iexplore.exe=dword:0800 firefox.exe=dword:0800 chrome.exe=dword:0800 java.exe=dword:0800 javaw.exe=dword:0800 ApacheJMeter.jar=dword:0800 sllauncher.exe=dword:0800 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPERSERVER] explorer.exe=dword:0800 iexplore.exe=dword:0800 firefox.exe=dword:0800 chrome.exe=dword:0800 java.exe=dword:0800 javaw.exe=dword:0800 ApacheJMeter.jar=dword:0800 sllauncher.exe=dword:0800 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters] MaxUserPort=dword:fffe CUT HERE-- -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Shay Ginsbourg [mailto:sginsbo...@gmail.com] Sent: Wednesday, June 20, 2012 12:26 PM To: JMeter Users List Subject: Re: Preparing LINUX or WIN machines to run Jmeter I was expecting a professional answer. On Wed, Jun 20, 2012 at 8:22 PM, Deepak Goel deic...@gmail.com wrote: Hey, Depends on the load which you are going to fire the machines with. :) Deepak On 6/20/12, Shay Ginsbourg sginsbo...@gmail.com wrote: Hi, Is there a list of recommended configuration settings for preparing LINUX or WIN machines to run Jmeter load tests? For example, increasing the max number of concurrent TCP connections, etc. thanks, Shay -- Namaskara~Nalama~Guten Tag~Bonjour -- Keigu Deepak +91-9765089593 deic...@gmail.com http://www.simtree.net Skype: thumsupdeicool Google talk: deicool Blog: http://loveandfearless.wordpress.com Facebook: http://www.facebook.com/deicool Contribute to the world, environment and more : http://www.gridrepublic.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- Shay Ginsbourg Regulatory Testing Affairs Consultant WWW.GINSBOURG.COM Providing Regulatory, Medical Performance Testing services since 2008: * IEC 62304 Medical Device Software Life Cycle * IEEE 829 Software Test Documentation * ISO 14971 Medical Device Risk Management * FDA 21 CFR Part 11 Software Validation * IEC 60601-1:2005 3rd ED PEMS - Medical Electrical Equipment * End-to-end verification, validation, and testing (VVT) * FDA and CE submissions * Open source free testing tools implementation * Functionality and regression testing * Software Performance Load testing * Software Testing Advanced Automation * Medical Software Verification Validation * Medical Device Verification Validation * Medical Device Regulatory Submission * Organizational Regulatory Qualification Formerly QA Manager of LoadRunner at Mercury Interactive M.Sc. cum laude in Bio-Medical Engineering M.Sc. in Mechanical Engineering Work: +972(0)3-5185873 Mobile: +972(0)54-6690915 Email: sginsbo...@gmail.com Visit my personal page on LinkedIn at: http://www.linkedin.com/in/shayginsbourg Please consider your environmental responsibility before printing this e-mail. - To unsubscribe, e
RE: Preparing LINUX or WIN machines to run Jmeter
I created a shortcut with the following 'Target:' %JAVA_HOME%\bin\javaw.exe -Xms512m -Xmx1g -XX:NewSize=256m -XX:MaxNewSize=512m -XX:PermSize=128m -XX:MaxPermSize=256m -jar ApacheJMeter.jar But then I run a test case that needs a lot of memory. Also, on my shortcut, the 'Starts in' folder is the JMeter 'bin' folder. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Rodrigo Ramos [mailto:crackdu...@gmail.com] Sent: Wednesday, June 20, 2012 1:55 PM To: JMeter Users List Subject: Re: Preparing LINUX or WIN machines to run Jmeter Hi, You may need to increase the memory parameters of the JVM Greetings 2012/6/20 Robin D. Wilson rwils...@gmail.com On Linux, I'm not sure... I suspect you don't have to do anything special. On Windows, it depends on the OS, but the changes are similar. Mostly, you need to update the registry to change the MAXCONNECTIONSPERSERVER and MAXCONNECTIONSPER1_0SERVER settings to allow for a lot more outbound TCP connections. Also on Win 7 (perhaps Vista as well), you need to increase the MaxUserPort beyond the default. If you are on a 'server' OS (Win2003, Win2008, etc.), you probably don't need to make this change. But on the XP, and Win Vista or Win 7 versions, you will need to do it. Just google those settings, and read the info about the registration hacks you will need. I created a '.reg' file for our Win7 systems, so I paste its contents here - in case you have a Win7 box. You can save the below to a file, then go into Registry Editor and 'Import' the file if you like. It sets all of the 'max connection' values to 2000, and the maxuserport value to 65534 (which is the max possible value). DON'T USE THIS FILE WITH OTHER VERSIONS OF WINDOWS - IT WON'T WORK FOR ANYTHING BUT WIN7. Also, if you have already edited these settings, I believe this will overwrite them. So you would probably just want to manually add stuff from this. Lastly, these changes would not be appropriate for an 'end-user' machine, only for a load-testing machine where you are running less than 2000 simultaneous threads. -CUT HERE Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER] explorer.exe=dword:0800 iexplore.exe=dword:0800 firefox.exe=dword:0800 chrome.exe=dword:0800 java.exe=dword:0800 javaw.exe=dword:0800 ApacheJMeter.jar=dword:0800 sllauncher.exe=dword:0800 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPERSERVER] explorer.exe=dword:0800 iexplore.exe=dword:0800 firefox.exe=dword:0800 chrome.exe=dword:0800 java.exe=dword:0800 javaw.exe=dword:0800 ApacheJMeter.jar=dword:0800 sllauncher.exe=dword:0800 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters] MaxUserPort=dword:fffe CUT HERE-- -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Shay Ginsbourg [mailto:sginsbo...@gmail.com] Sent: Wednesday, June 20, 2012 12:26 PM To: JMeter Users List Subject: Re: Preparing LINUX or WIN machines to run Jmeter I was expecting a professional answer. On Wed, Jun 20, 2012 at 8:22 PM, Deepak Goel deic...@gmail.com wrote: Hey, Depends on the load which you are going to fire the machines with. :) Deepak On 6/20/12, Shay Ginsbourg sginsbo...@gmail.com wrote: Hi, Is there a list of recommended configuration settings for preparing LINUX or WIN machines to run Jmeter load tests? For example, increasing the max number of concurrent TCP connections, etc. thanks, Shay -- Namaskara~Nalama~Guten Tag~Bonjour -- Keigu Deepak +91-9765089593 deic...@gmail.com http://www.simtree.net Skype: thumsupdeicool Google talk: deicool Blog: http://loveandfearless.wordpress.com Facebook: http://www.facebook.com/deicool Contribute to the world, environment and more : http://www.gridrepublic.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- Shay Ginsbourg Regulatory Testing Affairs Consultant WWW.GINSBOURG.COM Providing Regulatory, Medical Performance Testing services since 2008: * IEC 62304 Medical Device Software Life Cycle * IEEE 829 Software Test Documentation * ISO 14971 Medical Device Risk Management * FDA 21 CFR Part 11 Software Validation * IEC 60601-1:2005 3rd ED PEMS - Medical Electrical Equipment * End-to-end verification
RE: Error in Jmeter 207
You can also try hitting the server with a browser when you are getting this error - to see if, in fact, the server is not responding. The error means that your JMeter was unable to connect to your server. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Hari Kishore [mailto:hari.kish...@satmetrix.com] Sent: Wednesday, June 20, 2012 1:26 PM To: JMeter Users List Subject: RE: Error in Jmeter 207 For how many threads you're getting this error .. Please check the URL and port your accessing is correct Check the if the url is https or http. The number of concurrent connections are configured on the server if it is more than the configure so will see this kind of errors Thanks Hari -Original Message- From: Lakshmi Sujatha Chekuri -ERS, HCL Tech [mailto:lakshmisujath...@hcl.com] Sent: Wednesday, June 20, 2012 3:38 AM To: JMeter Users List Subject: RE: Error in Jmeter 207 Hi , When I am running the script in Jmeter 2.6 it is displaying the following error. Response code: Non HTTP response code: java.net.ConnectException Response message: Non HTTP response message: Connection timed out: connect Anyone tell me what is reason for the error. Is there any error in my script. Please tell me... Thanks Regards, Lakshmi Sujatha Chekuri -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Wednesday, June 20, 2012 4:02 PM To: JMeter Users List Subject: Re: Error in Jmeter 207 On 20 June 2012 11:22, Niraj niraj.khatm...@gmail.com wrote: Thanks for the reply. Sorry, read it wrong (very noisy environment here) It's actually the HTTP server which is responding with Error Response Code: 302, Server sent no Errorpage. This is how my test looks like. Test Plan - Stepping Thread Group That is not a standard JMeter test element. - HTTP Cookie Manager - HTTP Header manager - CSV Data Set Config. - Transaction controller (Home Page) - Transaction controller (Login Request) - Transaction controller (Logout) - Summary Report Please let me know if any another information needs to be shared. [There are no HTTP samplers shown in the above summary.] This is not something that can be debugged remotely. You will have to work through the test plan to find out where it starts going wrong, and fix the HTTP settings - or the server, if that is at fault ... I suggest you create the simplest possible test plan which shows the error and compare that with how a browser behaves. Thanks, Niraj On Wed, Jun 20, 2012 at 3:43 PM, sebb seb...@gmail.com wrote: On 20 June 2012 08:04, Niraj niraj.khatm...@gmail.com wrote: Hello All, I am getting below mentioned error in Jmeter version 2.7 when i run the test. Can someone please help me how i can resolve this? Whatever the Java sampler is talking to is returning EOF. Either the Java sampler is not set up correctly, or the server is broken. Not a lot more can be said from the information provided. 2012/06/20 11:19:12 INFO - jmeter.engine.StandardJMeterEngine: Running the test! 2012/06/20 11:19:12 INFO - jmeter.gui.util.JMeterMenuBar: setRunning(true,*local*) 2012/06/20 11:19:12 INFO - jmeter.engine.StandardJMeterEngine: Starting 10 threads for group jp@gc - Stepping Thread Group. 2012/06/20 11:19:12 INFO - jmeter.engine.StandardJMeterEngine: Thread will continue on error 2012/06/20 11:19:12 INFO - jmeter.engine.StandardJMeterEngine: All threads have been started 2012/06/20 11:19:13 INFO - jmeter.threads.JMeterThread: Thread started: jp@gc - Stepping Thread Group 1-1 2012/06/20 11:19:13 WARN - jmeter.config.CSVDataSet: Empty delimiter converted to ',' 2012/06/20 11:19:13 INFO - jmeter.services.FileServer: Stored: test.csv 2012/06/20 11:19:14 ERROR - jmeter.protocol.http.sampler.HTTPJavaImpl: readResponse: java.io.EOFException 2012/06/20 11:19:14 INFO - jmeter.protocol.http.sampler.HTTPJavaImpl: Error Response Code: 302, Server sent no Errorpage 2012/06/20 11:19:16 ERROR - jmeter.protocol.http.sampler.HTTPJavaImpl: readResponse: java.io.EOFException 2012/06/20 11:19:16 INFO - jmeter.protocol.http.sampler.HTTPJavaImpl: Error Response Code: 302, Server sent no Errorpage 2012/06/20 11:19:16 ERROR - jmeter.protocol.http.sampler.HTTPJavaImpl: readResponse: java.io.EOFException 2012/06/20 11:19:16 INFO - jmeter.protocol.http.sampler.HTTPJavaImpl: Error Response Code: 302, Server sent no Errorpage 2012/06/20 11:19:16 ERROR - jmeter.protocol.http.sampler.HTTPJavaImpl: readResponse: java.io.EOFException 2012/06/20 11:19:16 INFO - jmeter.protocol.http.sampler.HTTPJavaImpl: Error Response Code: 302, Server sent no Errorpage 2012/06/20 11:19:20 INFO - jmeter.threads.JMeterThread: Thread started: jp@gc - Stepping Thread Group 1-2 2012/06/20 11:19:20 WARN - jmeter.config.CSVDataSet: Empty delimiter
RE: JMeter threading model
Currently, JMeter will run 100 threads, for 100 iterations each in order to reach 10,000 total passes through my test case. If thread 1 completes its 100 iterations before any of the rest of the threads, it terminates and then I only have 99 threads running until the 10,000 iterations complete. My test will show a performance change at the end - as the number of total simultaneous threads begins to trail off, the performance will appear to improve. For example, I will show the sampler as having completed 9200 requests when the first thread finishes its 100 iterations. This means for the remaining 800 requests, I only have a maximum 99 threads operating. Then at 9300 samples, 19 more threads might have died off - so I only have 80 threads max operating for the remaining 700 requests. As you can imagine, this means that by the end of the test - the performance numbers will start to progressively improve (since fewer threads means less workload on the process being measured, and therefore faster response times). It would be really nice if JMeter just kept a pool of 100 threads operating on requests for the duration of the 10,000 iterations, so that threads would only die off during the final iteration, leaving the server at more-or-less peak load throughout the test. From a code standpoint, this doesn't seem like it would be too hard to setup - just identify how many total iterations need to be run through the thread group, startup the total number of threads you need, and let each thread keep going until all the iterations have been started. (Of course, I say that knowing that I'm just a 'manager' type, and won't be coding it myself...) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Tuesday, June 12, 2012 5:02 PM To: JMeter Users List Subject: Re: JMeter threading model On 12 June 2012 22:57, Kirk Pepperdine kirk.pepperd...@gmail.com wrote: On 2012-06-13, at 12:54 AM, sebb wrote: On 12 June 2012 22:06, Kirk Pepperdine kirk.pepperd...@gmail.com wrote: Hi, I figured thread pooling would be revolutionary so I wasn't suggesting that. I would be very useful just delay the creation of a thread until it was asked for. Not sure I understand how it would help to delay the thread creation, except perhaps for the case where the first threads have finished processing by the time the last threads start running samples. Bingo!!! ;-) So what percentage of use cases need to follow this model? Most of the JMeter testing I have done was long running tests where all threads were active for most of the run. Kirk - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: JMeter threading model
sebb wrote: For tests where a CSV data file is not appropriate or convenient, it might make sense to implement a feature which counts total loops and causes the test to stop when a pre-specified limit is reached. Perhaps at thread group level, which already has a duration limit. Or a test element of some kind. At the thread group level is exactly what I'm suggesting... In the meantime, I will setup a csv file with 0- in it (one number per row), and see if I can get that to work like you suggest. Seems a little clunky, but if it works - no issue. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Tuesday, June 12, 2012 6:07 PM To: JMeter Users List Subject: Re: JMeter threading model On 12 June 2012 23:42, Robin D. Wilson rwils...@gmail.com wrote: Currently, JMeter will run 100 threads, for 100 iterations each in order to reach 10,000 total passes through my test case. If thread 1 completes its 100 iterations before any of the rest of the threads, it terminates and then I only have 99 threads running until the 10,000 iterations complete. My test will show a performance change at the end - as the number of total simultaneous threads begins to trail off, the performance will appear to improve. For example, I will show the sampler as having completed 9200 requests when the first thread finishes its 100 iterations. This means for the remaining 800 requests, I only have a maximum 99 threads operating. Then at 9300 samples, 19 more threads might have died off - so I only have 80 threads max operating for the remaining 700 requests. As you can imagine, this means that by the end of the test - the performance numbers will start to progressively improve (since fewer threads means less workload on the process being measured, and therefore faster response times). It would be really nice if JMeter just kept a pool of 100 threads operating on requests for the duration of the 10,000 iterations, so that threads would only die off during the final iteration, leaving the server at more-or-less peak load throughout the test. JMeter can do this already. Rather than specify a fixed number of loops, use a CSV Config file with 10,000 entries, and set it to stop the thread (not the test, as that would not let some threads complete) when EOF is reached. For tests where a CSV data file is not appropriate or convenient, it might make sense to implement a feature which counts total loops and causes the test to stop when a pre-specified limit is reached. Perhaps at thread group level, which already has a duration limit. Or a test element of some kind. From a code standpoint, this doesn't seem like it would be too hard to setup - just identify how many total iterations need to be run through the thread group, startup the total number of threads you need, and let each thread keep going until all the iterations have been started. (Of course, I say that knowing that I'm just a 'manager' type, and won't be coding it myself...) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Tuesday, June 12, 2012 5:02 PM To: JMeter Users List Subject: Re: JMeter threading model On 12 June 2012 22:57, Kirk Pepperdine kirk.pepperd...@gmail.com wrote: On 2012-06-13, at 12:54 AM, sebb wrote: On 12 June 2012 22:06, Kirk Pepperdine kirk.pepperd...@gmail.com wrote: Hi, I figured thread pooling would be revolutionary so I wasn't suggesting that. I would be very useful just delay the creation of a thread until it was asked for. Not sure I understand how it would help to delay the thread creation, except perhaps for the case where the first threads have finished processing by the time the last threads start running samples. Bingo!!! ;-) So what percentage of use cases need to follow this model? Most of the JMeter testing I have done was long running tests where all threads were active for most of the run. Kirk - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Feature request...
I use the 'GUI' mode for most of my JMeter testing. I configure a 'Tree Listener' to show any errors, to help me debug - I check the Log/Display Only: Errors box, so that it only shows errors encountered. Is it possible to have the tree listener log the entire thread loop when it encounters an error? That is, let's say I have a thread that ends up running through 10 samplers. Currently, when I encounter an error in sampler # 8, only that response is logged in the Tree Listener. I would love to see samplers 1-8 logged when the error occurs in the 8th sampler of the loop - so that I can trace the entire context of the failure through the test plan. As it stands right now, if sampler #1 is 'login', and sampler #2 is show pageX, and sampler #3 is POST formY, ...; by the time I get to sampler #8, the die may have already been cast - and I might not know why sampler #8 broke... But if I could see the entire thread for that loop, I would be able to trace the steps back correctly. Basically, I want to retain the entire set of results for a thread until the thread starts over at the beginning of the loop - then if the loop completes without exception, discard the result set and start over again. If the loop throws an exception, log the retained results in the Tree Listener. Also, while I'm at it. It would be nice if the Tree Listener could group results by thread. That is, create a folder for each thread, so that the results of thread #1 can be reviewed independently from the results of thread #99 (this would be especially useful when logging successful responses _and_ errors since it would keep the request/responses for a given thread in a group with the same thread). As it stands right now - all threads record in groups for the sampler name for each instance of the request, so I see all the results essentially grouped by sampled response by 'time' (I put 'time' in scare quotes because it's not exactly by 'time', it depends on when the sampler gets the chance to write its results - which may or may not be sequenced by time as compared to a different thread - I frequently see the results show up out of order based on their timestamps - but it is relatively close to time ordered). I think this feature would be necessary in order for the above feature request to be useful - otherwise it would take a lot of effort to identify which sampler shown in the response tree matched to each error. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Display total execution time for test plan
I think it depends a lot on what you are testing. If you are trying to benchmark system performance, total test duration can be a good indicator (and a quick-glance check) of system performance. For example, my performance benchmarks are configured to run (without ramp up) between 10 and 300 threads (depending on the test), in such a way as to guarantee that I am exercising the system at near capacity (for each benchmark). Because I am running the benchmarks for each release of our system, I have a history of the test performance. The total test duration is a good overall measure of the performance of any given benchmark. And it is what I used to figure out that JMeter wasn't properly reporting the 'average' sample times - until I changed my config to use the following settings: sampleresult.useNanoTime=false sampleresult.nanoThreadSleep=0 I was seeing the same 'average' times, but the total execution time for a thread group was increasing with each successive new release of code. This suggested that something was slowing things down in my code-base. After I made the above config change to JMeter (2.6) I could see that the average sample times were actually much higher than my benchmarks had been recording. Without being able to explicitly see the execution duration times (or using the average sample times to calculate the test duration), I would have missed the fact that my benchmarks were getting worse. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Adrian Speteanu [mailto:asp.ad...@gmail.com] Sent: Wednesday, March 21, 2012 6:03 AM To: JMeter Users List Subject: Re: Display total execution time for test plan Hi, I suspect you weren't interested in start of / end of test. But usually this is how you get total test time :). It doesn't make sense to have a test that gradually starts 1000 users and test stops when all finished their planned sessions. Its not even useful to measure how long the test took. Why: no live application works likes this in production conditions. At the beginning and end of test you have less than 1000 users logged in. What if the ramp up of the 1000 threads affect average results, or even total execution time? Check out Sergio's reply. You simulate what users do - true, but at macro level, and you design your test plan in such a manner to respect your requirements: 1000 sessions logged in and a maximum of 10 hits / s. When you have such a test, than you check out the statistics from Aggregate Graph, Summary Report + make some nice graphs with some of the cooler things that you monitor. Don't forget CPU, RAM, Network usage on the server side. That's what you measure and compare before and after a change. And if a change affects a particular request, focus measurements and reporting on that specific request. Its good to know what one user does, but its better to know what workload your app receives: - 1000 logged in, unique and active sessions - 80% make page views in section X - 10% use the forum (or whatever) - 1% upload files - 2% download stuff during their session etc - this is just an example... If you get this right for your particular application, then you need to measure the statistics of the response time: avg, median, 90th line. See how they evolve during the test (this is even better than looking at the values for the entire period) and so on. But all this makes measuring total time very irrelevant in 90% of tests or more. Adrian On Wed, Mar 21, 2012 at 12:06 AM, sergio ser...@bosoconsulting.it wrote: Hi Adrian and Eric, maybe I'm missing some point, but to me the total duration of the test is rarely important nor predictable. If you need it as a baseline, you can use an aggregate result listener, run some test (maybe with one or two users) and then you can multiply the number of samples (eventually divided the number of loops executed) by the average execution time. So you can easily have the net time you need to do a single loop. This is net of time spent on timers. But when you start having 1000 users, you have a lot of parallelizaton, but obviously not the 100% (that would be ideal). Also in some case, you have to add the ramp-up time. In my experience, we usually end up measuring the behaviour of few key transactions (e.g. submit the order, or login/logout), under different situations and loads, The relationship between average, mean, 90nth % and max return an idea of the way things go. Note that these transactions are also the longest. A static page or an image takes few msec to download, and most of the time spent is due to the network latency, which is not something we can easily optimize. This is my point of view, feel free to share your thoughts. best regards Sergio Il 20/03/2012 17:55, Erik Pragt ha scritto: Hi Adrian, Thanks for the super quick reply
RE: Display total execution time for test plan
Sorry, didn't mean to offend with the 'summarily closed' comment. Poor choice of words. As for reproducing the problem - I have more-or-less confirmed that the problem is related to that setting somehow. Since JMeter 2.4 doesn't have that setting, I can't test it with that. But basically what I was seeing is that in JMeter 2.4, I got substantially higher 'throughput' and lower 'average' times - but when I started calculating the times and throughput based on the overall test duration - the average and throughput numbers didn't make sense. When I tested the same test case on JMeter 2.6, I had similar problems with the average times, but the throughput numbers (much lower than with JM2.4) lined up properly with the overall test duration I was seeing. After changing that setting, both the throughput and average numbers were inline with the overall test duration. Recall that I also mentioned an issue where I created a test case that inserts a 2 second delay into the response of a web request (at the web server). When I tested a simple test case against that request - it was showing average times of ~600ms - which was impossible because the minimum time was 2 seconds (the built-in delay in the response). Once I changed that setting, average response times showed ~2400ms, which was in-line with what I expected. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Wednesday, March 21, 2012 10:34 AM To: JMeter Users List Subject: Re: Display total execution time for test plan Hello, This is the original thread: - http://www.mail-archive.com/user@jmeter.apache.org/msg01008.html Regarding the (*it was summarily closed* when they couldn't reproduce the same problem), it was not summarily closed !!!, it was closed after investigation of 3 commiters , see: - https://issues.apache.org/bugzilla/show_bug.cgi?id=52189 See Rainer Jung comment and investigation. And I on my side did profiling on 2 versions and comparison that didn't show the mentionned difference. Sebb also did. Sebb finaly answered that the 2 settings (I gave you) : - sampleresult.useNanoTime=false - sampleresult.nanoThreadSleep=0 were not an explanation for the problem you mention, although you answered they had fixed the issue on response time you faced (which is another issue). BUT, if you are able to reproduce the slowliness between 2.5.1 (2.6 ?) and 2.4 with a usable Test Plan, then feel free to reopen issue. Regards Philippe M. http://www.ubik-ingenierie.com On Wed, Mar 21, 2012 at 4:23 PM, Robin D. Wilson rwils...@gmail.com wrote: I did raise a thread on this list when I noticed the behavior. I even created a bug for it (it was summarily closed when they couldn't reproduce the same problem). I eventually narrowed down the problem to the config settings I showed. (I can't remember for sure, but I think you even responded to my thread... I know sebb did, but I think I even recall you responding too.) NOTE: this problem is apparent _only_ when running JMeter on WinXP. I did not see the same issue on Win7. All that being said, I completely disagree about all other factors affecting the test times - that assumes a complex test, and that I haven't accounted for those in my script. My benchmarks are specifically configured for a very limited set of test variables, and they are designed to test the same thing each time. My test environment is configured so that I can limit other variables from influencing my tests. I can virtually guarantee that if I run the same test 10 times (or 100 times), the test duration will vary by less than 1% on each iteration (and less than 1% between any given test runs). If it does vary by more than that, I start looking for problems in my test or my code. As an example, I have tests that test only login on my web system. I get the home page, POST a login, and get the home page again (after the user has logged in). My site is a very high volume web site (millions of pages per day). I need to know if I've introduce any delays in the login process - because that will adversely affect the end-user experience for my customers. On multiple occasions I've identified DB queries that had been improperly indexed because of this test. Likewise I have specific test cases for 'registrations', 'forgot password', 'forums reply' and many other use cases - each one very limited in scope, and each one very specific in its test configuration. Each one exercises a very specific portion of the system - and each one tells me if my developers have screwed up something in the code they've delivered for the 'next' release. I run each of these test cases for each new version of our system. I get a benchmark of the performance of each version. The overall test duration is a good 'aggregate' measure of that benchmark. I
RE: Display total execution time for test plan
=displayJMeterVariablesfalse/boolProp boolProp name=displaySystemPropertiesfalse/boolProp /DebugSampler hashTree/ /hashTree ThreadGroup guiclass=ThreadGroupGui testclass=ThreadGroup testname=TG Timer enabled=true stringProp name=ThreadGroup.on_sample_errorcontinue/stringProp elementProp name=ThreadGroup.main_controller elementType=LoopController guiclass=LoopControlPanel testclass=LoopController testname=Loop Controller enabled=true boolProp name=LoopController.continue_foreverfalse/boolProp stringProp name=LoopController.loops1/stringProp /elementProp stringProp name=ThreadGroup.num_threads1/stringProp stringProp name=ThreadGroup.ramp_time0/stringProp longProp name=ThreadGroup.start_time1320342967000/longProp longProp name=ThreadGroup.end_time1320342967000/longProp boolProp name=ThreadGroup.schedulerfalse/boolProp stringProp name=ThreadGroup.duration/stringProp stringProp name=ThreadGroup.delay/stringProp /ThreadGroup hashTree UserParameters guiclass=UserParametersGui testclass=UserParameters testname=User Parameters enabled=true collectionProp name=UserParameters.names stringProp name=1185546556PrevStartTime/stringProp stringProp name=-1987142487PrevTGCount/stringProp stringProp name=0/stringProp stringProp name=1182835273ElapsedTime/stringProp stringProp name=-1999321243threadStartTime/stringProp stringProp name=-1409654180tgCount/stringProp stringProp name=1984987727setTime/stringProp stringProp name=647878586setTGCount/stringProp /collectionProp collectionProp name=UserParameters.thread_values collectionProp name=-1451951225 stringProp name=-2078679218${__P(ThreadStartTime,0)}/stringProp stringProp name=46204838${__P(TGCount,1)}/stringProp stringProp name=0/stringProp stringProp name=-1898455245${__javaScript(var ms = new Date; ms.getTime() - ${PrevStartTime};)}/stringProp stringProp name=1008029728${__javaScript(var ms = new Date; ms.getTime();)}/stringProp stringProp name=-1527117377${__javaScript(${PrevTGCount} + 1)}/stringProp stringProp name=1759500564${__setProperty(ThreadStartTime, ${threadStartTime})}/stringProp stringProp name=-1525630572${__setProperty(TGCount, ${tgCount})}/stringProp /collectionProp /collectionProp boolProp name=UserParameters.per_iterationfalse/boolProp /UserParameters hashTree/ DebugSampler guiclass=TestBeanGUI testclass=DebugSampler testname=TG ${tgCount} Start: ${threadStartTime} - Elapsed: ${ElapsedTime} enabled=true boolProp name=displayJMeterPropertiesfalse/boolProp boolProp name=displayJMeterVariablesfalse/boolProp boolProp name=displaySystemPropertiesfalse/boolProp /DebugSampler hashTree/ /hashTree ResultCollector guiclass=SummaryReport testclass=ResultCollector testname=Summary Report enabled=true boolProp name=ResultCollector.error_loggingfalse/boolProp objProp namesaveConfig/name value class=SampleSaveConfiguration timetrue/time latencytrue/latency timestamptrue/timestamp successtrue/success labeltrue/label codetrue/code messagetrue/message threadNametrue/threadName dataTypetrue/dataType encodingfalse/encoding assertionstrue/assertions subresultstrue/subresults responseDatafalse/responseData samplerDatafalse/samplerData xmltrue/xml fieldNamesfalse/fieldNames responseHeadersfalse/responseHeaders requestHeadersfalse/requestHeaders responseDataOnErrorfalse/responseDataOnError saveAssertionResultsFailureMessagefalse/saveAssertionResultsFailureMessage assertionsResultsToSave0/assertionsResultsToSave bytestrue/bytes /value /objProp stringProp name=filename/stringProp /ResultCollector hashTree/ /hashTree /hashTree /jmeterTestPlan -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: erik.pr...@gmail.com [mailto:erik.pr...@gmail.com] On Behalf Of Erik Pragt Sent: Tuesday, March 20, 2012 11:55 AM To: JMeter Users List Subject: Re: Display total execution time for test plan Hi Adrian, Thanks for the super quick reply. I'm a bit surprised by your first remark though, so maybe I'm having a wrong approach here. I'm currently developing an application which might have some performance issues. Our current target is around 1000 simultaneous
Re: Default value for collapse
I agree with this! -- Robin D. Wilson On Mar 13, 2012, at 2:50 PM, Oliver Lloyd oliver_ll...@hotmail.com wrote: Actually, I also find myself pressing CMD minus every time I open a testplan. In an ideal world, the testplan would open with the tree expanded to the testplan level and no further. In JMeter utopia, the focus would also default to the root of the tree so when I hit the arrow keys they let me traverse without having to mouse click their first. - http://www.http503.com/ -- View this message in context: http://jmeter.512774.n5.nabble.com/Default-value-for-collapse-tp5560230p5562360.html Sent from the JMeter - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Cookie manager not getting more than one set-cookie per response?
OK, I have setup a test case for this... My test script returns 2 cookies, here's a look at the response headers from a request to that page: Response headers: HTTP/1.1 200 OK Date: Thu, 23 Feb 2012 14:51:51 GMT Server: Apache/2.2.17 (Unix) Expires: Thu, 02 Feb 2012 23:59:59 GMT Set-Cookie: theCookie1=value1; Expires=Wed, 09 Jun 2021 12:00:00 GMT Set-Cookie: theCookie2=value2 Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Transfer-Encoding: chunked Content-Type: text/html; charset=UTF-8 My second sampler in the test attempts to use the cookies set above in the POST of the request - using ${COOKIE_theCookie1} and ${COOKIE_theCookie2}. But when I look at the values posted, I get this instead: POST data: POSTVARCOOKIE1=%24%7BCOOKIE_theCookie1%7DPOSTVARCOOKIE2=%24%7BCOOKIE_theCookie2%7D However, in the request headers of the second sampler, I can see that the cookies are both actually set: Cookie Data: theCookie1=value1; theCookie2=value2 They just aren't being accessed by the ${COOKIE_cookie_name} convention anymore... Did this change in JM2.6? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Wednesday, February 22, 2012 3:37 PM To: JMeter Users List Subject: Re: Cookie manager not getting more than one set-cookie per response? Can you give an example of the page that returns the 3 cookies (attach the HTML response for example) and extract from your Test Plan the part that manages the Cookie ? Regards Philippe On Wed, Feb 22, 2012 at 10:19 PM, Robin D. Wilson mailto:rwils...@gmail.com rwils...@gmail.comwrote: I'll try to get a test case out there - but the failing test case is pretty complicated, and stripping everything down to a level to show this problem will take me a while. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.KingsIsle.com www.KingsIsle.com -Original Message- From: sebb mailto:[mailto:seb...@gmail.com] [mailto:seb...@gmail.com] Sent: Wednesday, February 22, 2012 3:03 PM To: JMeter Users List Subject: Re: Cookie manager not getting more than one set-cookie per response? On 22 February 2012 20:53, Robin D. Wilson mailto:rwils...@gmail.com rwils...@gmail.com wrote: I have a test case that used to work fine in JMeter 2.4 (still does). But it started failing when I upgraded to JMeter 2.6. The failure is a direct result of the test case failing to find a cookie that is set early in the test samples. It is from a response that contains 3 Set-Cookie: headers. Apparently, JM2.6 Cookie Manager is only storing the first cookie being set in the response. Subsequent Set-Cookie: response headers are being ignored. I am able to work around the issue by using a Regular Expression Extractor and getting the cookies manually through a regular expression, but this means that I have to go back a re-code a bunch of test cases. Is there a setting that I'm missing? Not that I know of. Can you provide a test case via Bugzilla? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.KingsIsle.com www.KingsIsle.com - To unsubscribe, e-mail: mailto:user-unsubscr...@jmeter.apache.org user-unsubscr...@jmeter.apache.org For additional commands, e-mail: mailto:user-h...@jmeter.apache.org user-h...@jmeter.apache.org - To unsubscribe, e-mail: mailto:user-unsubscr...@jmeter.apache.org user-unsubscr...@jmeter.apache.org For additional commands, e-mail: mailto:user-h...@jmeter.apache.org user-h...@jmeter.apache.org - To unsubscribe, e-mail: mailto:user-unsubscr...@jmeter.apache.org user-unsubscr...@jmeter.apache.org For additional commands, e-mail: mailto:user-h...@jmeter.apache.org user-h...@jmeter.apache.org -- Cordialement. Philippe Mouawad.
RE: Cookie manager not getting more than one set-cookie per response?
Nevermind, I found the issue - it was this setting: CookieManager.save.cookies=true Apparently this was on by default previously in JMeter2.4 (or was configured somewhere that I didn't know about), but adding it to my 'user.properties' fixed the problem. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com From: Robin D. Wilson [mailto:rwils...@gmail.com] Sent: Thursday, February 23, 2012 8:58 AM To: 'JMeter Users List' Subject: RE: Cookie manager not getting more than one set-cookie per response? OK, I have setup a test case for this... My test script returns 2 cookies, here's a look at the response headers from a request to that page: Response headers: HTTP/1.1 200 OK Date: Thu, 23 Feb 2012 14:51:51 GMT Server: Apache/2.2.17 (Unix) Expires: Thu, 02 Feb 2012 23:59:59 GMT Set-Cookie: theCookie1=value1; Expires=Wed, 09 Jun 2021 12:00:00 GMT Set-Cookie: theCookie2=value2 Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Transfer-Encoding: chunked Content-Type: text/html; charset=UTF-8 My second sampler in the test attempts to use the cookies set above in the POST of the request - using ${COOKIE_theCookie1} and ${COOKIE_theCookie2}. But when I look at the values posted, I get this instead: POST data: POSTVARCOOKIE1=%24%7BCOOKIE_theCookie1%7DPOSTVARCOOKIE2=%24%7BCOOKIE_theCookie2%7D However, in the request headers of the second sampler, I can see that the cookies are both actually set: Cookie Data: theCookie1=value1; theCookie2=value2 They just aren't being accessed by the ${COOKIE_cookie_name} convention anymore... Did this change in JM2.6? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Wednesday, February 22, 2012 3:37 PM To: JMeter Users List Subject: Re: Cookie manager not getting more than one set-cookie per response? Can you give an example of the page that returns the 3 cookies (attach the HTML response for example) and extract from your Test Plan the part that manages the Cookie ? Regards Philippe On Wed, Feb 22, 2012 at 10:19 PM, Robin D. Wilson mailto:rwils...@gmail.com rwils...@gmail.comwrote: I'll try to get a test case out there - but the failing test case is pretty complicated, and stripping everything down to a level to show this problem will take me a while. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.KingsIsle.com www.KingsIsle.com -Original Message- From: sebb mailto:[mailto:seb...@gmail.com] [mailto:seb...@gmail.com] Sent: Wednesday, February 22, 2012 3:03 PM To: JMeter Users List Subject: Re: Cookie manager not getting more than one set-cookie per response? On 22 February 2012 20:53, Robin D. Wilson mailto:rwils...@gmail.com rwils...@gmail.com wrote: I have a test case that used to work fine in JMeter 2.4 (still does). But it started failing when I upgraded to JMeter 2.6. The failure is a direct result of the test case failing to find a cookie that is set early in the test samples. It is from a response that contains 3 Set-Cookie: headers. Apparently, JM2.6 Cookie Manager is only storing the first cookie being set in the response. Subsequent Set-Cookie: response headers are being ignored. I am able to work around the issue by using a Regular Expression Extractor and getting the cookies manually through a regular expression, but this means that I have to go back a re-code a bunch of test cases. Is there a setting that I'm missing? Not that I know of. Can you provide a test case via Bugzilla? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 http://www.KingsIsle.com www.KingsIsle.com - To unsubscribe, e-mail: mailto:user-unsubscr...@jmeter.apache.org user-unsubscr...@jmeter.apache.org For additional commands, e-mail: mailto:user-h...@jmeter.apache.org user-h...@jmeter.apache.org - To unsubscribe, e-mail: mailto:user-unsubscr...@jmeter.apache.org user-unsubscr...@jmeter.apache.org For additional commands, e-mail: mailto:user-h...@jmeter.apache.org user-h...@jmeter.apache.org - To unsubscribe, e-mail: mailto:user-unsubscr...@jmeter.apache.org user-unsubscr...@jmeter.apache.org For additional commands, e-mail: mailto:user-h...@jmeter.apache.org user-h...@jmeter.apache.org -- Cordialement. Philippe Mouawad.
Cookie manager not getting more than one set-cookie per response?
I have a test case that used to work fine in JMeter 2.4 (still does). But it started failing when I upgraded to JMeter 2.6. The failure is a direct result of the test case failing to find a cookie that is set early in the test samples. It is from a response that contains 3 Set-Cookie: headers. Apparently, JM2.6 Cookie Manager is only storing the first cookie being set in the response. Subsequent Set-Cookie: response headers are being ignored. I am able to work around the issue by using a Regular Expression Extractor and getting the cookies manually through a regular expression, but this means that I have to go back a re-code a bunch of test cases. Is there a setting that I'm missing? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Cookie manager not getting more than one set-cookie per response?
No parallel downloads. In fact, the test case was unmodified from the JM2.4 version when I noticed this problem. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Wednesday, February 22, 2012 3:11 PM To: JMeter Users List Subject: Re: Cookie manager not getting more than one set-cookie per response? Is your Test case using parallel downloads ? (I don't think so cause in 2.4 feature didn't exist) Regards Philippe On Wed, Feb 22, 2012 at 10:03 PM, sebb seb...@gmail.com wrote: On 22 February 2012 20:53, Robin D. Wilson rwils...@gmail.com wrote: I have a test case that used to work fine in JMeter 2.4 (still does). But it started failing when I upgraded to JMeter 2.6. The failure is a direct result of the test case failing to find a cookie that is set early in the test samples. It is from a response that contains 3 Set-Cookie: headers. Apparently, JM2.6 Cookie Manager is only storing the first cookie being set in the response. Subsequent Set-Cookie: response headers are being ignored. I am able to work around the issue by using a Regular Expression Extractor and getting the cookies manually through a regular expression, but this means that I have to go back a re-code a bunch of test cases. Is there a setting that I'm missing? Not that I know of. Can you provide a test case via Bugzilla? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- Cordialement. Philippe Mouawad. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Cookie manager not getting more than one set-cookie per response?
I'll try to get a test case out there - but the failing test case is pretty complicated, and stripping everything down to a level to show this problem will take me a while. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Wednesday, February 22, 2012 3:03 PM To: JMeter Users List Subject: Re: Cookie manager not getting more than one set-cookie per response? On 22 February 2012 20:53, Robin D. Wilson rwils...@gmail.com wrote: I have a test case that used to work fine in JMeter 2.4 (still does). But it started failing when I upgraded to JMeter 2.6. The failure is a direct result of the test case failing to find a cookie that is set early in the test samples. It is from a response that contains 3 Set-Cookie: headers. Apparently, JM2.6 Cookie Manager is only storing the first cookie being set in the response. Subsequent Set-Cookie: response headers are being ignored. I am able to work around the issue by using a Regular Expression Extractor and getting the cookies manually through a regular expression, but this means that I have to go back a re-code a bunch of test cases. Is there a setting that I'm missing? Not that I know of. Can you provide a test case via Bugzilla? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Average times are confusing me...
The test performs a 'POST' to a cgi script that returns ~60K worth of data. All the cgi script does is sleep for 2 seconds, and write output. The cgi script looks like this: #!/bin/bash sleep 2 cat ! Content-type: text/html html head [about 20K bytes of useless stuff goes here] /head body [about 40K bytes of useless stuff goes here] /body /html ! The cgi script doesn't attempt to process the POST at all, it just returns useless data. The purpose of the test was to figure out why JMeter was giving me such 'different' results between JM2.4 and JM2.6. I think I've done that now - JM2.4 (on WinXP) wasn't reporting the correct numbers in the Summary Report. Sadly this means that all my prior benchmarks are nearly useless - since the numbers there can't be trusted. But I can start a fresh set using JM2.6 now and feel pretty comfortable that the numbers are at least accurate now. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Deepak Goel [mailto:deic...@gmail.com] Sent: Thursday, February 16, 2012 1:08 AM To: JMeter Users List Subject: Re: Average times are confusing me... Hey Is it the test considering the CGI Script as an addon which it includes in a different hit to the server. And the average is the Average of two request, one to the original page and one to the CGI Script Your answer is 2.5 seconds. 2 second for the CGI script and 0.5 second for the overall transaction. It just treats the CGI script like an add on file. :) Deepak On 2/16/12, Philippe Mouawad philippe.moua...@gmail.com wrote: These settings were introduced in 2.6. To face cpu impact on Time computing. In 2.4 thé settings i made you set are hère by défault afaik as nano computing was not yet available . Regards Philippe On Wednesday, February 15, 2012, Robin D. Wilson rwils...@gmail.com wrote: On JMeter 2.6, setting the settings you recommended fixed the problem: - sampleresult.useNanoTime=false - sampleresult.nanoThreadSleep=0 But it doesn't do anything for JMeter 2.4. Needless to say, I have a bunch of re-benchmarking to do... I can file a ticket - but I am not sure that it will provide much value, since it is clear that the above settings fix the problem. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Wednesday, February 15, 2012 3:52 PM To: JMeter Users List Subject: Re: Average times are confusing me... Hello, I think you should submit your Test as a bug just for us to check what could explain this. I made many tests on WinXP and never faced this issue so I am not convinced it's the real explanation although you reproduced it. Can you also make a test by setting this in jmeter.properties: - sampleresult.useNanoTime=false - sampleresult.nanoThreadSleep=0 Thanks Regards Philippe On Wed, Feb 15, 2012 at 6:39 PM, Robin D. Wilson rwils...@gmail.com wrote: FYI, I have confirmed that my test case only fails on 'WinXP'. When I run the exact same test on Win7 (x64), it works fine. The sad thing is, I've been benchmarking my systems using WinXP for over a year ... sigh. So now I find out that all my benchmark numbers are essentially bogus. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Monday, February 13, 2012 2:13 PM To: JMeter Users List Subject: Re: Average times are confusing me... Mac OSX 10.6.8. I suggest you open an issue with your attached test plan (exactly the one that has the issue). Regards Philippe On Mon, Feb 13, 2012 at 8:28 PM, Robin D. Wilson rwils...@gmail.com wrote: Just out of curiosity - what type of OS was your JMeter GUI running on? I've been running my tests on Windows XP. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Friday, February 10, 2012 7:41 AM To: JMeter Users List Subject: Re: Average times are confusing me... Hello, I have just made the same test with a JSP (doing a Thread.sleep(2000) = 2s) behind a Tomcat 6 with JMeter 2.6 I put 100 threads that loop 100 times in GUI mode (one JMETER): All results shown in Aggregate report are around 2s . sampler_label,aggregate_report_count,average,aggregate_report_median,aggregate_report_90%_line,aggregate_report_min,aggregate_report _max,aggregate_report_error
RE: Complete difference in results when scaling across multiple boxes
Just out of curiosity, in your Win7 systems, did you change the MAXCONNECTIONSPERSERVER and MAXCONNECTIONSPER1_0SERVER settings in the registry? My experience has been that on all Windows systems - this setting throttles the number simultaneous out-bound connections you can make to the same server. I've increased mine to allow 'java.exe' and 'javaw.exe' to go up to 2048 simultaneous connections - and that does seem to make a difference in JMeter behavior. But I can't actually quantify whether it allows all 2048 connections, or if there is some Windows imposed 'hard limit' at 48 or something... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: James Carr [mailto:jamesc...@carfax.com] Sent: Thursday, February 16, 2012 2:02 PM To: JMeter Users List Subject: Complete difference in results when scaling across multiple boxes Hi All, I ran these tests several times, and each time I come back with the similar results. I really don't get it. I am using JDBC sampler with max connections set to 30 for running across 3 machines and 90 when running on one machine. Here's the results: 30 Threads x 3 Machines for 2 minutes Number of Samples: 176,912 Average Response: 62 Std. Deviation: 436.46% 90 Threads x 1 Machine for 2 minutes Number of Samples: 912,954 Average Response: 11 Std. Deviation: 34.14% Machine Specs: RAM: 8GB Processor: Intel Core i7 CPU 870 @ 2.93Ghz System Type: 64-bit Windows 7 Any idea why I see this huge discrepancy? I have double checked on our database on the server side and I verified that we do have the number of connections we expect to see, but I can't understand why the performance looks so lousy with multiple machines. Thanks, James - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Average times are confusing me...
FYI, I have confirmed that my test case only fails on 'WinXP'. When I run the exact same test on Win7 (x64), it works fine. The sad thing is, I've been benchmarking my systems using WinXP for over a year ... sigh. So now I find out that all my benchmark numbers are essentially bogus. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Monday, February 13, 2012 2:13 PM To: JMeter Users List Subject: Re: Average times are confusing me... Mac OSX 10.6.8. I suggest you open an issue with your attached test plan (exactly the one that has the issue). Regards Philippe On Mon, Feb 13, 2012 at 8:28 PM, Robin D. Wilson rwils...@gmail.com wrote: Just out of curiosity - what type of OS was your JMeter GUI running on? I've been running my tests on Windows XP. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Friday, February 10, 2012 7:41 AM To: JMeter Users List Subject: Re: Average times are confusing me... Hello, I have just made the same test with a JSP (doing a Thread.sleep(2000) = 2s) behind a Tomcat 6 with JMeter 2.6 I put 100 threads that loop 100 times in GUI mode (one JMETER): All results shown in Aggregate report are around 2s . sampler_label,aggregate_report_count,average,aggregate_report_median,aggregate_report_90%_line,aggregate_report_min,aggregate_report _max,aggregate_report_error%,aggregate_report_rate,aggregate_report_bandwidth HTTP Request,1,2006,2004,2012,2001,2195,0.0,49.5793194742609,1224.082013722936 TOTAL,1,2006,2004,2012,2001,2195,0.0,49.5793194742609,1224.082013722936 Summary listener shows this: 2012/02/10 14:36:00 INFO - jmeter.reporters.Summariser: Generate Summary Results + 2655 in 54,8s = 48,4/s Avg: 2010 Min: 2001 Max: 2195 Err: 0 (0,00%) 2012/02/10 14:38:26 INFO - jmeter.reporters.Summariser: Generate Summary Results + 7345 in 148,9s = 49,3/s Avg: 2005 Min: 2001 Max: 2088 Err: 0 (0,00%) 2012/02/10 14:38:26 INFO - jmeter.reporters.Summariser: Generate Summary Results = 1 in 201,7s = 49,6/s Avg: 2006 Min: 2001 Max: 2195 Err: 0 (0,00%) So as you can see, nothing abnormal . JSP Code: %@ page contentType=text/html; charset=UTF-8 % html body % Thread.sleep(2000); % !-- GENERATE around 25Ko page -- %=org.apache.commons.lang.RandomStringUtils.random(25000, abcdefghijklmnopqrstuvwxyz01234567890)% pTest/p /body /html Regards Philippe http://www.ubik-ingenierie.com On Thu, Feb 9, 2012 at 4:52 PM, sebb seb...@gmail.com wrote: On 9 February 2012 15:38, Robin D. Wilson rwils...@gmail.com wrote: Thanks sebb for the replies... Here's the deal, I am running the same test script on JM2.4 and JM2.6. I am running in GUI mode. The test script has 3 thread groups - but the first and the last thread group is just a 'timer' I created to log the total elapsed time of the test (the first and last group has 1 thread, and 1 request, and take less than 1 second each to run). The 'real' test is the middle thread group. It has 100 threads (0 ramp), and runs 100 iterations (10,000 total samples). It simply does a 'POST' to a URL, with 15 So the 'elapsed time' I referring to in my test is actually the timestamp taken in the first thread group (in ms since epoch) subtracted from the timestamp taken in the 3rd (last) thread group. That part of my test may only add 2 total seconds to the test, so while it may skew my results slightly - it doesn't explain the vast difference in the 'average' sample duration. According to the Summary Report docs, the Average is supposed to be the average elapsed time of a set of samples. But clearly, if the minimum time it takes to actually get the page is 2 seconds (due to the built-in delay in the cgi-script), there is no way I could have an 'average' elapsed time of less than 2 seconds, yet I'm showing an average elapsed time of ~750 ms... (My Max elapsed time shows as only 1198!). When I request the page in Firefox, it takes ~2104ms (using a status bar timer), so I think the cgi script is working correctly.) Sebb asked: Again, the throughput calculations are based on total test time. Are you sure the test run times are comparable? The test run times are automatically calculated by the 1st and 3rd thread groups. The ~210 seconds total elapsed time is accurate based on my external measurement too (e.g., it is close to what I can observe with my stopwatch). Both the JM2.4 test and the JM2.6 test are using the exact same .jmx test file. There's clearly something else going on here. I don't believe that the Summary Report
RE: Average times are confusing me...
On JMeter 2.6, setting the settings you recommended fixed the problem: - sampleresult.useNanoTime=false - sampleresult.nanoThreadSleep=0 But it doesn't do anything for JMeter 2.4. Needless to say, I have a bunch of re-benchmarking to do... I can file a ticket - but I am not sure that it will provide much value, since it is clear that the above settings fix the problem. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Wednesday, February 15, 2012 3:52 PM To: JMeter Users List Subject: Re: Average times are confusing me... Hello, I think you should submit your Test as a bug just for us to check what could explain this. I made many tests on WinXP and never faced this issue so I am not convinced it's the real explanation although you reproduced it. Can you also make a test by setting this in jmeter.properties: - sampleresult.useNanoTime=false - sampleresult.nanoThreadSleep=0 Thanks Regards Philippe On Wed, Feb 15, 2012 at 6:39 PM, Robin D. Wilson rwils...@gmail.com wrote: FYI, I have confirmed that my test case only fails on 'WinXP'. When I run the exact same test on Win7 (x64), it works fine. The sad thing is, I've been benchmarking my systems using WinXP for over a year ... sigh. So now I find out that all my benchmark numbers are essentially bogus. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Monday, February 13, 2012 2:13 PM To: JMeter Users List Subject: Re: Average times are confusing me... Mac OSX 10.6.8. I suggest you open an issue with your attached test plan (exactly the one that has the issue). Regards Philippe On Mon, Feb 13, 2012 at 8:28 PM, Robin D. Wilson rwils...@gmail.com wrote: Just out of curiosity - what type of OS was your JMeter GUI running on? I've been running my tests on Windows XP. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Friday, February 10, 2012 7:41 AM To: JMeter Users List Subject: Re: Average times are confusing me... Hello, I have just made the same test with a JSP (doing a Thread.sleep(2000) = 2s) behind a Tomcat 6 with JMeter 2.6 I put 100 threads that loop 100 times in GUI mode (one JMETER): All results shown in Aggregate report are around 2s . sampler_label,aggregate_report_count,average,aggregate_report_median,aggregate_report_90%_line,aggregate_report_min,aggregate_report _max,aggregate_report_error%,aggregate_report_rate,aggregate_report_bandwidth HTTP Request,1,2006,2004,2012,2001,2195,0.0,49.5793194742609,1224.082013722936 TOTAL,1,2006,2004,2012,2001,2195,0.0,49.5793194742609,1224.082013722936 Summary listener shows this: 2012/02/10 14:36:00 INFO - jmeter.reporters.Summariser: Generate Summary Results + 2655 in 54,8s = 48,4/s Avg: 2010 Min: 2001 Max: 2195 Err: 0 (0,00%) 2012/02/10 14:38:26 INFO - jmeter.reporters.Summariser: Generate Summary Results + 7345 in 148,9s = 49,3/s Avg: 2005 Min: 2001 Max: 2088 Err: 0 (0,00%) 2012/02/10 14:38:26 INFO - jmeter.reporters.Summariser: Generate Summary Results = 1 in 201,7s = 49,6/s Avg: 2006 Min: 2001 Max: 2195 Err: 0 (0,00%) So as you can see, nothing abnormal . JSP Code: %@ page contentType=text/html; charset=UTF-8 % html body % Thread.sleep(2000); % !-- GENERATE around 25Ko page -- %=org.apache.commons.lang.RandomStringUtils.random(25000, abcdefghijklmnopqrstuvwxyz01234567890)% pTest/p /body /html Regards Philippe http://www.ubik-ingenierie.com On Thu, Feb 9, 2012 at 4:52 PM, sebb seb...@gmail.com wrote: On 9 February 2012 15:38, Robin D. Wilson rwils...@gmail.com wrote: Thanks sebb for the replies... Here's the deal, I am running the same test script on JM2.4 and JM2.6. I am running in GUI mode. The test script has 3 thread groups - but the first and the last thread group is just a 'timer' I created to log the total elapsed time of the test (the first and last group has 1 thread, and 1 request, and take less than 1 second each to run). The 'real' test is the middle thread group. It has 100 threads (0 ramp), and runs 100 iterations (10,000 total samples). It simply does a 'POST' to a URL, with 15 So the 'elapsed time' I referring to in my test is actually the timestamp taken in the first thread group (in ms since epoch) subtracted from the timestamp taken in the 3rd (last) thread group. That part of my test may
RE: Average times are confusing me...
OK, I just took your exact same 'jsp', removed the RandomStringUtils stuff (I don't have that library handy), and I'm still getting the same weird results. I'll try to package up my test case today and make it available to everyone... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Friday, February 10, 2012 7:41 AM To: JMeter Users List Subject: Re: Average times are confusing me... Hello, I have just made the same test with a JSP (doing a Thread.sleep(2000) = 2s) behind a Tomcat 6 with JMeter 2.6 I put 100 threads that loop 100 times in GUI mode (one JMETER): All results shown in Aggregate report are around 2s . sampler_label,aggregate_report_count,average,aggregate_report_median,aggregate_report_90%_line,aggregate_report_min,aggregate_report _max,aggregate_report_error%,aggregate_report_rate,aggregate_report_bandwidth HTTP Request,1,2006,2004,2012,2001,2195,0.0,49.5793194742609,1224.082013722936 TOTAL,1,2006,2004,2012,2001,2195,0.0,49.5793194742609,1224.082013722936 Summary listener shows this: 2012/02/10 14:36:00 INFO - jmeter.reporters.Summariser: Generate Summary Results + 2655 in 54,8s = 48,4/s Avg: 2010 Min: 2001 Max: 2195 Err: 0 (0,00%) 2012/02/10 14:38:26 INFO - jmeter.reporters.Summariser: Generate Summary Results + 7345 in 148,9s = 49,3/s Avg: 2005 Min: 2001 Max: 2088 Err: 0 (0,00%) 2012/02/10 14:38:26 INFO - jmeter.reporters.Summariser: Generate Summary Results = 1 in 201,7s = 49,6/s Avg: 2006 Min: 2001 Max: 2195 Err: 0 (0,00%) So as you can see, nothing abnormal . JSP Code: %@ page contentType=text/html; charset=UTF-8 % html body % Thread.sleep(2000); % !-- GENERATE around 25Ko page -- %=org.apache.commons.lang.RandomStringUtils.random(25000, abcdefghijklmnopqrstuvwxyz01234567890)% pTest/p /body /html Regards Philippe http://www.ubik-ingenierie.com On Thu, Feb 9, 2012 at 4:52 PM, sebb seb...@gmail.com wrote: On 9 February 2012 15:38, Robin D. Wilson rwils...@gmail.com wrote: Thanks sebb for the replies... Here's the deal, I am running the same test script on JM2.4 and JM2.6. I am running in GUI mode. The test script has 3 thread groups - but the first and the last thread group is just a 'timer' I created to log the total elapsed time of the test (the first and last group has 1 thread, and 1 request, and take less than 1 second each to run). The 'real' test is the middle thread group. It has 100 threads (0 ramp), and runs 100 iterations (10,000 total samples). It simply does a 'POST' to a URL, with 15 So the 'elapsed time' I referring to in my test is actually the timestamp taken in the first thread group (in ms since epoch) subtracted from the timestamp taken in the 3rd (last) thread group. That part of my test may only add 2 total seconds to the test, so while it may skew my results slightly - it doesn't explain the vast difference in the 'average' sample duration. According to the Summary Report docs, the Average is supposed to be the average elapsed time of a set of samples. But clearly, if the minimum time it takes to actually get the page is 2 seconds (due to the built-in delay in the cgi-script), there is no way I could have an 'average' elapsed time of less than 2 seconds, yet I'm showing an average elapsed time of ~750 ms... (My Max elapsed time shows as only 1198!). When I request the page in Firefox, it takes ~2104ms (using a status bar timer), so I think the cgi script is working correctly.) Sebb asked: Again, the throughput calculations are based on total test time. Are you sure the test run times are comparable? The test run times are automatically calculated by the 1st and 3rd thread groups. The ~210 seconds total elapsed time is accurate based on my external measurement too (e.g., it is close to what I can observe with my stopwatch). Both the JM2.4 test and the JM2.6 test are using the exact same .jmx test file. There's clearly something else going on here. I don't believe that the Summary Report is accurately calculating anything except the total number of samples and the Avg. Bytes... What makes you say that? Are the Min and Max really incorrect? Error %? It's easy enough to check the Summary Results if you can provide the CSV sample result files. The cgi-script I'm using definitely takes 2+ seconds to respond after it gets the request (I've measured this with Firefox directly, and it _never_ gets a response in less than 2 seconds). I even changed the 'sleep' to 9 seconds, and JMeter pauses for that long in recording results (e.g., it shows 100 threads run, then waits 9 seconds, shows another 100 threads, etc.), but the numbers just go up to '1758' Average, and '2415' Max (which is impossible since it is taking 9+ seconds to respond to each request
RE: Average times are confusing me...
Thanks sebb for the replies... Here's the deal, I am running the same test script on JM2.4 and JM2.6. I am running in GUI mode. The test script has 3 thread groups - but the first and the last thread group is just a 'timer' I created to log the total elapsed time of the test (the first and last group has 1 thread, and 1 request, and take less than 1 second each to run). The 'real' test is the middle thread group. It has 100 threads (0 ramp), and runs 100 iterations (10,000 total samples). It simply does a 'POST' to a URL, with 15 So the 'elapsed time' I referring to in my test is actually the timestamp taken in the first thread group (in ms since epoch) subtracted from the timestamp taken in the 3rd (last) thread group. That part of my test may only add 2 total seconds to the test, so while it may skew my results slightly - it doesn't explain the vast difference in the 'average' sample duration. According to the Summary Report docs, the Average is supposed to be the average elapsed time of a set of samples. But clearly, if the minimum time it takes to actually get the page is 2 seconds (due to the built-in delay in the cgi-script), there is no way I could have an 'average' elapsed time of less than 2 seconds, yet I'm showing an average elapsed time of ~750 ms... (My Max elapsed time shows as only 1198!). When I request the page in Firefox, it takes ~2104ms (using a status bar timer), so I think the cgi script is working correctly.) Sebb asked: Again, the throughput calculations are based on total test time. Are you sure the test run times are comparable? The test run times are automatically calculated by the 1st and 3rd thread groups. The ~210 seconds total elapsed time is accurate based on my external measurement too (e.g., it is close to what I can observe with my stopwatch). Both the JM2.4 test and the JM2.6 test are using the exact same .jmx test file. There's clearly something else going on here. I don't believe that the Summary Report is accurately calculating anything except the total number of samples and the Avg. Bytes... The cgi-script I'm using definitely takes 2+ seconds to respond after it gets the request (I've measured this with Firefox directly, and it _never_ gets a response in less than 2 seconds). I even changed the 'sleep' to 9 seconds, and JMeter pauses for that long in recording results (e.g., it shows 100 threads run, then waits 9 seconds, shows another 100 threads, etc.), but the numbers just go up to '1758' Average, and '2415' Max (which is impossible since it is taking 9+ seconds to respond to each request!). It takes over 15 minutes to complete 10,000 samples (and that seems about right - 1 samples/100 threads * 9 seconds each = 900 seconds). I even went so far as to inject a 2 second sleep in the middle of the response (e.g., pause 2 seconds - send part of the response - pause 2 more seconds - send the rest), I'm still getting average times of ~1000 ms. (That's with 4 seconds of built-in delays, and 2 of those seconds are in the middle of the response.) The browser shows this delay properly, but JMeter isn't calculating it properly. Please recheck the individual sample response times and see how they compare to the average. I'm not sure how to do that in JMeter. I can manually hit the page, and it takes about 100ms longer than the built-in delay I have. If there still appears to be a problem, create a Bugzilla issue and attach: - JMX test case I'm trying to simplify the test case to the bare minimum case - so the results will be indisputable. I will also include the 'cgi-bin' script that I'm using, so someone else can easily setup the same test. - log files for JMeter 2.4 and 2.6 Which log files are these? Is it just the 'jmeter.log' that gets created in the 'bin' folder when I run the GUI mode, or do you need another log file? - CSV result files for 2.4 and 2.6 I can do this. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Average times are confusing me...
So, I created a test case that simply performs a 'POST' to a cgi-bin test script. The test script simple pauses for 2 seconds, then returns a page that is full of useless text. When I run this on my JMeter 2.6 GUI, I see that the 'average' sample time for this page (this is the only sampler in the test) is ~750ms... BUT I _KNOW_ that each page takes at least 2 seconds to return from the request. Because I have a 'sleep 2' at the top of the page. So is the 'average' time actually measuring the time it takes to receive the response (after the response starts), or is it measuring the time it takes to receive the response after the request ends (which is what I really want)? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Average times are confusing me...
So the note from the manual is actually what I would like to capture (basically the round-trip time for request/response) - but it is clear that's not what JM2.6 is doing... I'm using the Summary Report listener. It shows columns for: Label # Samples Average Min Max Std. Dev. Error % Throughput KB/Sec Avg. Bytes I had assumed that Average was the average of whatever 'elapsed time' JMeter was using for the request, but either I'm mistaken, or JM2.6 isn't correctly measuring the elapsed time for the request. My test cgi script is pretty simple, it just sleeps for 2 seconds, then returns an HTML document that is basically 15,700 (or so) bytes of useless text. I was trying to simulate the slowdown I'm seeing in JMeter2.6 vs. JMeter2.4 from my standard test cases. There is something else I don't understand - related to the 'average' shown in the Summary Report listener... If I do 10,000 iterations of a single request, and spread those over 100 threads - a rough estimate of my elapsed time should be something like '(samples/threads) * average'. But I'm getting numbers that are waaay out of whack with what I'm actually seeing: JM2.6: 1 samples, 100 threads, 756 average ... I should get ~75.6 seconds total elapsed time to run the test. (Plus any JMeter overhead.) The actual time is 210 seconds. JM2.4: 1 samples, 100 threads, 767 average ... I should get ~76.7 seconds total elapsed time to run the test. (Plus any JMeter overhead.) The actual time is 211 seconds So the average is _wy_ off from what I'm thinking it should be, but the total time actually is in-line with the expected 'average' for the request/response I'm sending... While we're at it, the 'throughput' has the same problem - except that it is _vastly_ different from JM2.4 to JM2.6. Specifically, the throughput for the above JM2.6 test says: 48.4/sec, whereas the throughput for the above JM2.4 test is 128.3/sec. The _real_ throughput (based on the samples/elapsed time in seconds) is actually around 47/sec (so JM2.6 appears to be closer to accurate on that). -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Wednesday, February 08, 2012 3:09 PM To: JMeter Users List Subject: Re: Average times are confusing me... On 8 February 2012 20:59, Robin D. Wilson rwils...@gmail.com wrote: So, I created a test case that simply performs a 'POST' to a cgi-bin test script. The test script simple pauses for 2 seconds, then returns a page that is full of useless text. When I run this on my JMeter 2.6 GUI, I see that the 'average' sample time for this page (this is the only sampler in the test) is ~750ms... BUT I _KNOW_ that each page takes at least 2 seconds to return from the request. Because I have a 'sleep 2' at the top of the page. So is the 'average' time actually measuring the time it takes to receive the response (after the response starts), or is it measuring the time it takes to receive the response after the request ends (which is what I really want)? Neither. The average is the average of the response (elapsed) times for the relevant set of results. The response (elapsed) time is described here: http://jmeter.apache.org/usermanual/glossary.html What do the individual elapsed times show? [e.g. use Table or Tree View Listener] Which Listener are you using that shows the average times? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: CTRL+Z as undo
I think if you save the file before deleting anything, you will end up pissing more people off than you will help. I know that I don't want a file saved until I actually save it - this allows me to experiment with all sorts of things - then easily revert to the last saved version. You could save to a temporary file, and that would be better - but it would also be slow and quite costly in terms of performance. Most test cases aren't really that large (in terms of the XML data they store), you could just as easily create an in-memory version of the JMX data, and revert to it when the user hits 'undo' ... And if you're going to do that, you might as well allow multiple levels of undo - just by creating an array of 'checkpoint' objects before every delete operation. Ideally, you would just do this on a per-object basis (instead of the whole test case), and then only revert the object that changed. (But you probably already knew all of this...) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Shay Ginsbourg [mailto:sginsbo...@gmail.com] Sent: Friday, January 20, 2012 6:55 AM To: JMeter Users List Subject: Re: CTRL+Z as undo Total CTRL+Z implementation can be a staged project. Top priority is to allow just an UN-DELETE function for each DELETE operation. Meaning, before deleting anything, save the JMX in the background first. On Fri, Jan 20, 2012 at 1:40 PM, sebb seb...@gmail.com wrote: On 20 January 2012 09:01, apc a...@apc.kg wrote: sebb, could you say something to us on this topic? The community ready to participate in implementing Undo feature, but for now we fail to find a way for doing this. Maybe you can offer us some clues or any other help? If it were easy, it would have been done long ago. Sorry, but I don't have any ideas as to how it could be implemented. Any implementation needs to be done in such a way that it does not impact performance when running tests. - -- Andrey Pohilko JP@GC Maintainer -- View this message in context: http://jmeter.512774.n5.nabble.com/CTRL-Z-as-undo-tp4848249p5159840.ht ml Sent from the JMeter - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- *Shay Ginsbourg* Regulatory Testing Affairs Consultant Formerly QA Manager of LoadRunner at Mercury Interactive M.Sc. cum laude in Bio-Medical Engineering M.Sc. in Mechanical Engineering *Work:* 035185873 *Mobile:* 0546690915 *Email:* sginsbo...@gmail.com *http://il.linkedin.com/in/shayginsbourg* *GINSBOURG.COM* http://www.ginsbourg.com/ -- *P** **Please consider your environmental responsibility before printing this e-mail*. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: How to capture a value in one of the thread and passing it to the other thread in the same test plan
I've used Properties before... I have this in one of my test plans (in a User Parameters pre-processor) : threadStartTime = ${__javaScript(var ms = new Date; ms.getTime();)} theTime = ${__setProperty(ThreadStartTime, ${threadStartTime})} (theTime variable isn't used anywhere). Then I use (in the next thread group - in a User Parameter pre-processor): lastThreadStartTime = ${__P(ThreadStartTime,0)} This method only works when the thread groups run sequentially though... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Bruce Ide [mailto:flyingrhenqu...@gmail.com] Sent: Monday, January 09, 2012 10:07 AM To: JMeter Users List Subject: Re: How to capture a value in one of the thread and passing it to the other thread in the same test plan Hmm. I'm not using semaphores in JmeterThreadSync, but you could easily modify just the CheckPointObject to acquire them. Though it might be easier to check for unreleased semaphores in the Config element at test start or test end time. The couple of tests I wrote with this code were very complex due to the threading and the stuff that was being tested should have been modified to allow for linear testing with a usability defect. I'm not entirely sure that level of IPC should be commonly available in the tool; if you really need it, you should probably have the technical skills to set it up. I think that gives you a better chance to understand and accept the risks involved. That being said, this is probably going to gnaw on me now, so I might end up taking a look at it over some weekend anyway. You know the next guy is going to want it to run across multiple machines, though... -- Bruce Ide flyingrhenqu...@gmail.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: some of the transactions fail during concurrent tests
In all my tests, I add the Results Tree, but I check the Errors only - because having the Results Tree listener really slows down the test a lot if I am recording all the results, but it doesn't slow me down at all if I only record the errors. Then I can view the errors in the results tree - and I can usually get a pretty good idea of what went wrong. (9 times out of 10, it is some variable that I was trying to get through the regular expression extractor, and I didn't have the regular expression quite right.) -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Shaba K [mailto:shabazi...@gmail.com] Sent: Tuesday, December 20, 2011 10:20 AM To: JMeter Users List Subject: Re: some of the transactions fail during concurrent tests Add View resultr tree run ur tests see the results .. It's straight forward On Tue, Dec 20, 2011 at 4:15 PM, Bhuiyan, Hasan (Hasan) mahmud.bhui...@searshc.com wrote: Hi Friends, The test has no problem with 1 user but when I run more than 1 user concurrently some transactions fails sometimes. In the jmeter log I found below: failureMessageTest failed: text expected to contain /Checkout - Contact//failureMessage /assertionResult /httpSample /testResults Can you please help how to pin point the issue. Best regards, Hasan This message, including any attachments, is the property of Sears Holdings Corporation and/or one of its subsidiaries. It is confidential and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it without reading the contents. Thank you. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Strange 'pause' activity during testing
Maybe then there is a problem with the scanning of the HTML to extract the embedded resources, or maybe one of the embedded resources is a tar-pit. If this were the case, I would expect the first sample to show the problem. The fact that it does 600+ iterations without a problem - and _then_ stalls seems like it rules out any problem with the returned HTML (especially since the only difference in the returned result is the username supplied by JMeter). Do all the expected embedded resources get downloaded? Zero errors (even with the pauses there are no errors at all). Are there any unusually long elapsed times for embedded resources? I see the 'max request duration' jump up right after the pause - but it is only 10-11 seconds (not ~35 seconds like the pause). Or large gaps between the parent sample download completion and the start of the first embedded resource? Not that I can see... I'll see if I can get more detail on this. That would suggest the page took a while to parse. I would assume that because this happens ~600+ iterations into the test (the first time), that if it was related to parsing the page, I would see it earlier in the test run cycle. And I wouldn't expect a parsing problem to repeat on such a consistent basis - without happening on every sample. Right now, if it is a parsing problem, it only happens the ~600th time it sees the same page, which seems really surprising to me (then it happens again after another ~600 iterations, etc.). Also, I would expect the parser to take up some CPU and perhaps even some I/O cycles, but the PerfMon shows idle during the pause period. You'll need to select the optiion to save subresults in order to see the embedded samples. ... BTW, you wrote you were running JMeter 2.4.1 - that does not exist, so perhaps you meant the current version, 2.5.1? Sorry, I meant 2.4. I didn't upgrade to 2.5 (and beyond) because of a previously reported problem where 2.5+ slows down my throughput to about 60% of what I get on 2.4. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Strange 'pause' activity during testing
I don't use CacheManager (since that would defeat the purpose of the test - which is to exercise the entire system for all assets from the pages being requested). I have logged the GCs (without removing the plugins), and it doesn't do any GCs at all during the 'pause' period. The GC right before the pause takes less than a second (.26...) and the one right after is in the same ball-park of duration. But during the pause, no GCs at all occur. CPU goes to idle on the JMeter box during the pause (as does network and disk I/O, and swap usage). There is a _little_ activity, but I've been attributing that to the Remote Desktop I'm using to get to the box, and the PerfMon graphs that are still collecting data. But compared to before and after the pause the activity level is less than 2% during the 'pause' period, compared to 75-80% during the 'run' period. I will try to get the thread dump - I'm working on some production issues today, so I haven't had time to setup for a thread dump today. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Thursday, December 15, 2011 2:23 PM To: JMeter Users List Subject: Re: Strange 'pause' activity during testing Do you use CacheManager ? You should remove any plugin and activate GC logs to check it's not GC ? How is CPU on JMeter stack ? Regards Philippe On Thu, Dec 15, 2011 at 9:09 PM, Robin D. Wilson rwils...@gmail.com wrote: Maybe then there is a problem with the scanning of the HTML to extract the embedded resources, or maybe one of the embedded resources is a tar-pit. If this were the case, I would expect the first sample to show the problem. The fact that it does 600+ iterations without a problem - and _then_ stalls seems like it rules out any problem with the returned HTML (especially since the only difference in the returned result is the username supplied by JMeter). Do all the expected embedded resources get downloaded? Zero errors (even with the pauses there are no errors at all). Are there any unusually long elapsed times for embedded resources? I see the 'max request duration' jump up right after the pause - but it is only 10-11 seconds (not ~35 seconds like the pause). Or large gaps between the parent sample download completion and the start of the first embedded resource? Not that I can see... I'll see if I can get more detail on this. That would suggest the page took a while to parse. I would assume that because this happens ~600+ iterations into the test (the first time), that if it was related to parsing the page, I would see it earlier in the test run cycle. And I wouldn't expect a parsing problem to repeat on such a consistent basis - without happening on every sample. Right now, if it is a parsing problem, it only happens the ~600th time it sees the same page, which seems really surprising to me (then it happens again after another ~600 iterations, etc.). Also, I would expect the parser to take up some CPU and perhaps even some I/O cycles, but the PerfMon shows idle during the pause period. You'll need to select the optiion to save subresults in order to see the embedded samples. ... BTW, you wrote you were running JMeter 2.4.1 - that does not exist, so perhaps you meant the current version, 2.5.1? Sorry, I meant 2.4. I didn't upgrade to 2.5 (and beyond) because of a previously reported problem where 2.5+ slows down my throughput to about 60% of what I get on 2.4. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- Cordialement. Philippe Mouawad. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: Strange 'pause' activity during testing
OK, I think I've narrowed the problem down - it appears to be something in Apache (our web server) that is causing the pause. (I made this change based on the note that ba...@baassiri.ca sent asking if I was using HTTPS, I had to change the configuration to get off of HTTPS, and that allowed me to try some other test configurations.) When I re-run the test but skip the Apache (AJP proxy) and go straight to the Tomcat, I get no slowdowns or pauses... It is _not_ a JMeter problem (near as I can tell). Also, I re-ran it so that I get the main page from the tomcat, and the 'embedded' resources from the Apache - and I get no slow downs. So if I had to guess, it is some sort of AJP configuration issue. I'll work on that now. Thank you all for your assistance! -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: Philippe Mouawad [mailto:philippe.moua...@gmail.com] Sent: Thursday, December 15, 2011 2:23 PM To: JMeter Users List Subject: Re: Strange 'pause' activity during testing Do you use CacheManager ? You should remove any plugin and activate GC logs to check it's not GC ? How is CPU on JMeter stack ? Regards Philippe On Thu, Dec 15, 2011 at 9:09 PM, Robin D. Wilson rwils...@gmail.com wrote: Maybe then there is a problem with the scanning of the HTML to extract the embedded resources, or maybe one of the embedded resources is a tar-pit. If this were the case, I would expect the first sample to show the problem. The fact that it does 600+ iterations without a problem - and _then_ stalls seems like it rules out any problem with the returned HTML (especially since the only difference in the returned result is the username supplied by JMeter). Do all the expected embedded resources get downloaded? Zero errors (even with the pauses there are no errors at all). Are there any unusually long elapsed times for embedded resources? I see the 'max request duration' jump up right after the pause - but it is only 10-11 seconds (not ~35 seconds like the pause). Or large gaps between the parent sample download completion and the start of the first embedded resource? Not that I can see... I'll see if I can get more detail on this. That would suggest the page took a while to parse. I would assume that because this happens ~600+ iterations into the test (the first time), that if it was related to parsing the page, I would see it earlier in the test run cycle. And I wouldn't expect a parsing problem to repeat on such a consistent basis - without happening on every sample. Right now, if it is a parsing problem, it only happens the ~600th time it sees the same page, which seems really surprising to me (then it happens again after another ~600 iterations, etc.). Also, I would expect the parser to take up some CPU and perhaps even some I/O cycles, but the PerfMon shows idle during the pause period. You'll need to select the optiion to save subresults in order to see the embedded samples. ... BTW, you wrote you were running JMeter 2.4.1 - that does not exist, so perhaps you meant the current version, 2.5.1? Sorry, I meant 2.4. I didn't upgrade to 2.5 (and beyond) because of a previously reported problem where 2.5+ slows down my throughput to about 60% of what I get on 2.4. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org -- Cordialement. Philippe Mouawad. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
Strange 'pause' activity during testing
I have a marginally complicated test case that performs a 'registration' on my site. It gets the home page, POSTS a form, gets the response, POSTS another form, gets that response, and then completes. The test runs fine with 100 threads, and 3 iterations - IF I don't Retrieve All Embedded Resources from HTML Files. In this mode, I am really testing the throughput of my 'tomcat' application, not the other elements of my system. (I'm assuming that the other elements are being retrieved from our Content Data Network instead of our main system in this case.) If I enable the Retrieve All Embedded Resources from HTML Files flag, and tune the test down to 10 threads with 3000 total iterations, I notice a very strange behavior. The test runs along at a pretty good clip for the first ~600 iterations (about 1 min, 25 seconds into the run), and then it just stops making requests for about 35 seconds. Then, it picks back up again and runs for another 1 m 25s, and then stops again for 35 seconds... (NOTE: with the 10 threads, 3000 total iterations - but with Retrieve All Embedded... disabled - I don't see the 'stop' behavior either - so it isn't caused by tuning it down...) I recently added the Perfmon Metrics Collector to the test script, so I could see if one of the servers was maxed out - but it looks like all the servers are idle during the 'stop' period. Likewise, I added the Perfmon for the localhost (running the JMeter test) to see if it was swamped - but it too is idle during the 'stop'. I swapped out our network switch (the test environment is on an isolated network switch) with a _much_ higher capacity switch - in case there was a network issue, still no change. I'm running out of ideas for things to check - so I thought I'd ask you guys if you have any suggestions of things I should look at. My system consists of: WinXP - running JMeter 2.4.1 - driving the test script in GUI mode Server 1 - running Red Hat Linux, with Apache (2.2.21) as the web server - using AJP Proxy to Server 2 Server 2 - running Red Hat Linux, with Tomcat 7.0.21 as the App Server - connecting through Hibernate to Server 3 Server 3 - running Red Hat Linux with MySQL 5.x as the DB Server All 4 machines are running on a private switched network (32Gbs backplane). The requests are downloading about 3MB total (per thread per iteration) over 4 main URL requests, and 30+ 'Retrieve All Embedded' requests. At first I thought it was the network - but the new switch seemed to deny that thought (the old switch had a much slower backplane). Also, I'm having no trouble collecting the PerfMon data during the 'stop' period - so the network is still functioning just fine... Then I thought it might be garbage collection on the tomcat - but I watched the gc.log - and it doesn't do any GCs during the 'stop' period. Then I thought it might be the garbage collection on the JMeter side, so I started the JMeter.bat from a 'cmd' prompt with gc logging enabled - it doesn't do any GCs during the 'stop' period either. The apache, tomcat, and DB are all 'idle' (no CPU to speak of, no network I/O, no disk I/O, etc.) during the 'stop' period. The JMeter box (WinXP) is doing very little during that time too (I attribute the little bit of activity to displaying the PerfMon graphs, and Remote Desktop display to my desktop computer)... -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
RE: JMeter reporting higher response times
Hopefully this list can handle images... I have included a couple screen snaps of what I'm seeing. I ran a test that requests (GET) the 'homepage' from our test machine. Then it POSTs a login (username + password + special token) to the login form. It is a very simplified test. When I run it on JMeter 2.4, I get throughput of 128.1. When I run it on JMeter 2.5.1 I get throughput of 79.5. The request averages show similar differences: JMeter 2.4 - average times are 744ms JMeter 2.5.1 - average times are 901ms Re-running the tests over and over give very similar results (there's some variability in the response times of the server, so I had to run this a bunch of times to be sure that I wasn't just seeing an anomaly. The results are consistent - each test run shows JMeter 2.4 running significantly faster than JMeter 2.5.1. BTW, just now, when I tried to switch this test to use the HTTP4 client, the cookies stopped working correctly. So I couldn't test that sampler. The above numbers are just for the HTTP3.1 client. I have a cookie value called 'stk', and using the ${COOKIE_stk} variable in the POST fails about 90% of the time when I'm using the HTTP4 client. It works fine with HTTP3.1. -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: sebb [mailto:seb...@gmail.com] Sent: Tuesday, November 15, 2011 10:09 AM To: JMeter Users List Subject: Re: JMeter reporting higher response times On 15 November 2011 15:58, Robin D. Wilson rwils...@gmail.com wrote: Not sure if this will matter, but have you tried testing this in JMeter 2.4.x? The reason I ask is that I have a bunch of test scripts that I regularly run in 2.4 r961953, and I have seen a significant decrease in performance of these same test scripts (both unmodified, and switching to various flavors of the new HTTP Sampler) when I switched to 2.5 and 2.5.1. Can you provide details of these issues please? -- Robin D. Wilson Sr. Director of Web Development KingsIsle Entertainment, Inc. VOICE: 512-777-1861 www.KingsIsle.com -Original Message- From: sasidharsmit [mailto:sasidhars...@gmail.com] Sent: Tuesday, November 15, 2011 9:08 AM To: jmeter-u...@jakarta.apache.org Subject: Re: JMeter reporting higher response times I disabled everything other than the actual sampler. Still, the response time is over 2000 ms. PF attached the screenshot. http://jmeter.512774.n5.nabble.com/file/n4994555/jmeter_only_sampler.p ng jmeter_only_sampler.png Regards, Sasidhar Sekar -- View this message in context: http://jmeter.512774.n5.nabble.com/JMeter-reporting-higher-response-ti mes-tp 4994460p4994555.html Sent from the JMeter - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org - To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org