Hello, Thank you very much for all your responses, I will try it.
Regards Philippe On Wed, Oct 12, 2011 at 10:22 PM, sebb <seb...@gmail.com> wrote: > On 12 October 2011 20:43, David Parks <davidpark...@yahoo.com> wrote: > > This is as expected in this scenario, I was using it with an infinite > loop, > > so in the end the percentages are roughly correct (but still randomly > > distributed, which accounts for the error you are noting). But note how > the > > logic works here, each iteration it will pick one controller, and that > > controller may or may not run in that iteration (depending on its > percentage > > probability that it will run). This will randomly distribute load. > > > > If you want to control executions precisely and not just distribute load > in > > percentages then we need to consider another approach. And now I notice a > > few details of your original email that I didn't take into account. > > > > Here are a few other ideas you can play with: > > > > Random Controller > > * Module Controller A [20%] > > * Module Controller A [20%] > > * Module Controller B [20%] > > * Module Controller C [20%] > > * Module Controller C [20%] > > > > In this scenario A & C will run 40% of the time and B will run 20% of the > > time, but one of them is always selected by the Random Controller. You > can > > use the module controller to allow you to define A, B, and C elsewhere > and > > duplicate their use in this sense. > > > > Another idea is the If Controller - I haven't used it so I'm just going > off > > the top of my head here, but I would experiment with creating a random > > variable (0-1.0) using the [Random Variable Configuration Element] to > > determine which IF controller to run, and each IF controller only runs if > > the random variable defined at the beginning of the loop is say: (0-0.3 = > > 30%, A), (0.3-0.4 = 10%, B), etc. This would guarantee 1 and only 1 of > the > > controllers run in a probabilistic pattern. > > Or generate a number in the range 0-9, and use the switch controller > with 10 child samples in the appropriate percentages. > > If you convert the random number 0-9 into 0-3 in the appropriate > percentages, you can use just 4 samples. > > This can be done using a BSF/JSR223/BeanShell Pre-Processor to create > a variable in the appropriate range. > > Pseudo-code: > r=random[0-9] > n={0,1,1,1,1,2,2,2,3,3}[r] // index the array > > Switch Controller ${n} > > Or you can create a CSV file with a suitable random mix of numbers and > use that to define the Switch variable > > > I'll bet you could come up with a couple more ways of tackling it if you > > really tried, but hopefully these give you enough ideas to get by. > > > > > > > > -----Original Message----- > > From: Philippe Bossu [mailto:pbo...@gmail.com] > > Sent: Wednesday, October 12, 2011 11:53 AM > > To: JMeter Users List > > Subject: Re: Question about ThrouputController > > > > Hello, > > Thanks for this I tried it but I doesn't work . > > I set 1 threads running 50 LOOP Count => I get 24 executions > > > > That's not what I want, I want 50 executions with the repartition, > because > > in this case If I have a sampler waiting for RandomController run result, > > it will fail since it may not execute. > > is it something possible ? > > > > By the way, percentages are not well respected. > > 7 / 24 => 30 % => I get 7 executions => OK > > 4 / 24 => 10% => I get 4 executions => KO > > 8/ 24 => I get 8 executions => 33% KO > > 5 / 24 => I get 5 executions => 20% OK > > > > > > Regards > > Philippe > > > > > > On Wed, Oct 12, 2011 at 7:31 PM, David Parks <davidpark...@yahoo.com> > wrote: > > > >> I did this as follows: > >> > >> * Thread group (define how many requests should be going through at one > >> time) > >> * Random Controller (pick any of the sub controllers at random each > >> iteration) > >> * Throughput Controller A [10%, By Percent] > >> * Throughput Controller B [40%, By Percent] > >> * Throughput Controller C [30%, By Percent] > >> * Throughput Controller D [20%, By Percent] > >> > >> This generates randomly distributed load over Controllers A-D according > to > >> the percentages defined. > >> > >> I also threw in a timer at the Random Controller level to limit the > >> requests > >> to once every X seconds, this way I could define the number of threads > as > >> representative of an real-world active user. > >> > >> Hope that gives some food for thought. > >> > >> > >> -----Original Message----- > >> From: Philippe Bossu [mailto:pbo...@gmail.com] > >> Sent: Wednesday, October 12, 2011 10:13 AM > >> To: jmeter-user@jakarta.apache.org > >> Subject: Question about ThrouputController > >> > >> Hello, > >> First thank's for your help and great JMeter product. > >> > >> I have the following requirement. > >> I would like to execute 4 different samples at the following frequence: > >> > >> - 10% for A > >> - 40% for B > >> - 30% for C > >> - 20% for D > >> > >> A,B,C and D do search on different criterions. > >> At least one of them must be executed because next sampler will use the > >> search result. > >> > >> > >> I tried to use ThroughputCOntroller but when I ran it once, none of the > 4 > >> is > >> executed. > >> Random Controller does not do the job. > >> InterleaveController as parent of TPC may be an option but I don't > >> understand how to use it with others > >> SwitchController might also be an option based on a question sebb > answered > >> to on the mailing list but how to randomize ? > >> > >> > >> Thank you for your help. > >> Regards > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: jmeter-user-unsubscr...@jakarta.apache.org > >> For additional commands, e-mail: jmeter-user-h...@jakarta.apache.org > >> > >> > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: jmeter-user-unsubscr...@jakarta.apache.org > > For additional commands, e-mail: jmeter-user-h...@jakarta.apache.org > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: jmeter-user-unsubscr...@jakarta.apache.org > For additional commands, e-mail: jmeter-user-h...@jakarta.apache.org > >