Guys, thanks for your replies.
I don't know if anyone have this experience. I found that
${__setProperty}/${__P} pair would work between thread groups IF I use
constant value ("abc" like below example) or system variables (like
$__time(HMS). When I use a local variable ("tmp" as like in my
example) in the $__setProperty call, it doesn't work.
tmp = "abc";
${__setProperty(key,tmp)}; //
THAT DOES NOT WORK!!
${__setProperty(key,"abc")};
// THAT WORKS!!
I also found that it is NOT the variable value that is shared between
the thread group, it's the reference. When I put ${__time(HMS)} in
the __setProperty call and run the test, the "key" values are
different between the two thread group. Does anyone know how to pass
a local-defined variable value using setProperty call?
Test Plan (with 2 thread groups)
Thread-Group1 (with 1 thread)
> Dubug Sampler
> BeanShell PreProcessor
Script:
${__setProperty(key,${__time(HMS)})};
// USING TIMESTAMP
log.info("Group 1 key = " + ${__P(key)});
//2012/07/16 18:31:36 INFO -
jmeter.util.BeanShellTestElement: Group 1 key = 183136
Thread-Group2 (with 2 threads)
> HTTP Sampler
> BeanShell PreProcessor
Script:
log.info("Group 2 key = " + ${__P(key)});
//2012/07/16 18:31:36 INFO -
jmeter.util.BeanShellTestElement: Group 2 key = 183119
Note that it is not the same value being logged.
Regards,
Jacky
On Mon, Jul 16, 2012 at 12:48 PM, Jomebrew <[email protected]> wrote:
> I documented how I do in a blog post a while back. I still use this 100%
> of the time. I run several instances on a machine in GUI mode and each
> instance has 250 users per thread group (two thread groups, same users for
> each group) for a total 500 threads/connections per instance.
>
> I think this was problem #2 for me in this post.
>
> http://www.jomebrew.com/2011/10/jmeter-random-transactions-and-sharing.html
>
> /Joe
>
> On Mon, Jul 16, 2012 at 8:50 AM, unjc email <[email protected]> wrote:
>
>> Hello,
>>
>> I have two thread groups set up in my test plan. The first test group
>> is for initializing variables for the test plan at start; it is
>> configured with a dummy debug sampler. The second group is where the
>> actual test samplers are placed. I try to pass the variables from
>> thread-group 1 via __setProperty to thread-group 2, but I always have
>> "void" value from __P calls. Could someone please advise the proper
>> way to pass variables from one group to another?
>>
>>
>> Test Plan (with 2 thread groups)
>>
>> Thread-Group1 (with 1 thread)
>> > Dubug Sampler
>> > BeanShell PreProcessor
>> Script:
>> tmp = "abc";
>> ${__setProperty(key,tmp)};
>> log.info("Group 1 key = " + ${__P(key)});
>>
>>
>> Thread-Group2 (with 2 threads)
>> > HTTP Sampler
>> > BeanShell PreProcessor
>> Script:
>> log.info("Group 2 key = " + ${__P(key)});
>>
>>
>> 2012/07/16 15:47:32 INFO - jmeter.threads.JMeterThread: Thread
>> started: Thread Group 1-1
>> 2012/07/16 15:47:32 INFO - jmeter.threads.JMeterThread: Thread
>> started: Thread Group 2-1
>> 2012/07/16 15:47:32 INFO - jmeter.util.BeanShellTestElement: Group 1 key
>> = abc
>> 2012/07/16 15:47:32 INFO - jmeter.threads.JMeterThread: Thread
>> finished: Thread Group 1-1
>> 2012/07/16 15:47:32 INFO - jmeter.engine.StandardJMeterEngine: Ending
>> thread Thread Group 1-1
>> 2012/07/16 15:47:32 INFO - jmeter.engine.StandardJMeterEngine: All
>> threads have been started
>> 2012/07/16 15:47:32 INFO - jmeter.threads.JMeterThread: Thread
>> started: Thread Group 2-2
>> 2012/07/16 15:47:32 INFO - jmeter.util.BeanShellTestElement: Group 2
>> key = void
>> 2012/07/16 15:47:32 INFO - jmeter.threads.JMeterThread: Thread
>> finished: Thread Group 2-1
>> 2012/07/16 15:47:32 INFO - jmeter.engine.StandardJMeterEngine: Ending
>> thread Thread Group 2-1
>> 2012/07/16 15:47:32 INFO - jmeter.util.BeanShellTestElement: Group 2
>> key = void
>> 2012/07/16 15:47:32 INFO - jmeter.threads.JMeterThread: Thread
>> finished: Thread Group 2-2
>> 2012/07/16 15:47:32 INFO - jmeter.engine.StandardJMeterEngine: Ending
>> thread Thread Group 2-2
>>
>>
>>
>>
>> Thanks,
>> Jacky
>>
>> ---------------------------------------------------------------------
>> 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]