There is a problem with the Switch Controller - it was fetching the
condition at the wrong time.
This has been fixed in SVN r600384.
S///
On 30/11/2007, dennis <[EMAIL PROTECTED]> wrote:
> Thanks for your reply, Sebb.
>
> As you mentioned, the code is not correct, actually it should be
> Math.random(), I made a spell mistake in the email.
>
> sebb wrote:
> > n 29/11/2007, dennis <[EMAIL PROTECTED]> wrote:
> >> Hi all,
> >>
> >> I have a test plan which uses "switch controller" to distribute load to
> >> 2 HTTP request.
> >>
> >> My test plan looks like this:
> >>
> >> Thread Group
> >> -User Defined Variables
> >
> > Probably unnecessary.
> >
> >> -Beanshell Sampler
> >> -Java request
> >> -Switch Controller
> >> -HTTP Sampler1
> >> -HTTP Sampler2
> >>
> >> 1, In "User Defined Variables", I defined a variable named "RAND";
> >> 2, In Beanshell Sampler, code generated a random 0 or 1, then put the
> >> value to ${RAND}.
> >>
> >> int r = Math.rand()*10;
> >> if(r<5) vars.put("RAND", "0");
> >> else vars.put("RAND", "1");
> >
> > Are you sure about that code? Does not work for me, as Math.rand()
> > does not exist and Math.random() returns a double, not an int.
> >
> >> 3, Switch Controller used {$RAND} as its switch value.
> >> 4, The Java request is used to monitor the value generated by Beanshell
> >> script, so I just set Label as "RAND=${RAND}".
> >>
> >> When run the test plan, I set 10 thread to run 100 loops, what
> >> surprised me is the summary result:
> >>
> >> Label #Samples ...
> >> RAND=0 526
> >> RAND=1 474
> >> HTTP Sampler1 532
> >> HTTP Sampler2 468
> >>
> >> What I expected is the #samples of "RAND=0" and "HTTP Sampler1" are the
> >> same, while the #samplers of "RAND=1" and "HTTP Sampler2" are the same.
> >>
> >> Can anyone explain it?
> >
> > I think it is due to timing - it looks as though the Switch Controller
> > is evaluating the RAND variable before it gets reset by BeanShell. To
> > check this, you can use the __log() function, i.e. use
> >
> > ${__log(${RAND})}
> >
> > as the Switch value.
> >
> > If you omit the UDV, you will see that the RAND variable is not
> > defined the first time round - and will be taken as 0.
> >
> > Looks like there might be a bug here ...
> >
> >> Thanks,
> >> Dennis
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]