Thanks, I followed it and it worked for me. Regards
On Wed, Oct 12, 2011 at 11:43 PM, Philippe Mouawad < p.moua...@ubik-ingenierie.com> wrote: > Hello, > We have a tutorial on this approach, you can find it here: > > - JMeter Switch Controller or How to Run a sampler with a certain > Percentage< > http://www.ubik-ingenierie.com/ubikwiki/index.php?title=JMeter_Switch_Controller_or_How_to_Run_a_sampler_with_a_certain_Percentage > > > > > Regards > Philippe > > On Wed, Oct 12, 2011 at 10:32 PM, Philippe Bossu <pbo...@gmail.com> wrote: > > > 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 > > > > > > > > > > > > -- > Cordialement. > Philippe Mouawad. > Ubik-Ingénierie >