You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@jmeter.apache.org by Ranieri Mazili <ra...@gmail.com> on 2015/09/30 20:52:20 UTC
Split Aggregate Report by Loop Count
Hello,
I have a JMeter test where I see the results on a Aggregate Report.
Currently my JMeter test has 7 steps as you can see in the image below.
[image: Inline image 1]
If I set my test to run 3 times (Loop count), the aggregate report
obviously will aggregate the results, showing the same 7 steps on my
aggregate report.
I would like to split the results by Loop number, for example, for the step
1 (1. Login), I would like to have:
1.1 Login
1.2 Login
1.3 Login
Is there a way to make it work this way?
Thanks
--
Ranieri
Re: Split Aggregate Report by Loop Count
Posted by Deepak Shetty <sh...@gmail.com>.
Hi
Im guessing that because Post Processors only apply to samplers , they dont
execute for the Transaction controller.
Specifying the loopCount directly will work.
Another alternative that seems to work is
ThreadGroup
+BeanShellListener - Essential that this is first , before any other
listener ,
sampleResult.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-"
+ sampleResult.getSampleLabel());
+Test Action
++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set
==>initiliase loop
+Sampler1
+Sampler2
+TransactionController1
++Sampler 3
++Sampler 4
+AggregateReport
On Fri, Oct 2, 2015 at 7:32 AM, Ranieri Mazili <ra...@gmail.com> wrote:
> Hi,
>
> don't know if what I did is the way to solve the problem but I think I've
> solved. Look at http://s7.postimg.org/rp7uxx5zf/jmeter_question_answer.png
>
> I've used ${loopCount} create the Transaction Controllers name and Bean
> Shell PostProcessor for the others.
>
> Thanks
> --
> Ranieri
>
> On Fri, Oct 2, 2015 at 11:21 AM, Ranieri Mazili <ra...@gmail.com>
> wrote:
>
> > Hi Deepak,
> >
> > thank for your help... We're almost there :)
> > Please, take a look at the image
> > http://s30.postimg.org/u7e2aqak1/jmeter_question.png
> > As you can see in the image above, the function
> > prev.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-" +
> > prev.getSampleLabel()); doesn't change Transaction Controllers label.
> > Is there a way to make this BeanShell PostProcessor change Transaction
> > Controllers label too?
> > The other names are fine.
> >
> > Thanks!
> > --
> > Ranieri
> >
> > On Wed, Sep 30, 2015 at 4:18 PM, Deepak Shetty <sh...@gmail.com>
> wrote:
> >
> >> Hi
> >> images dont make it to the mailing list.
> >>
> >> But in general the aggregation is based on the sampler name - so if you
> >> vary the sampler name - you can achieve what you want.
> >> So if you use something like __counter (
> >> http://jmeter.apache.org/usermanual/functions.html#__counter) you can
> get
> >> ThreadGroup (Threads=10, Loop count=3)
> >> +Test Action
> >> ++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set ==>
> >> initialize a counter and increment it every time
> >> Generate the same number for different threads , but a new number every
> >> time its called i.e. a new loop
> >> +${loopCount} -Sampler1 ==> append it
> >> +${loopCount} -Sampler2 ==> append it
> >>
> >> Note that every time counter is run a new number will be created.
> >> If you have fewer sampler it is an option
> >> If you have many samplers you obviously dont want to go and specify this
> >> on
> >> every sampler so you could do something like
> >> ThreadGroup
> >> +Test Action
> >> ++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set
> >> ==>initiliase loop
> >> +Sampler1
> >> +Sampler2
> >> +BeanShell PostProcessor
> >> prev.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-" +
> >> prev.getSampleLabel());
> >>
> >> regards
> >> deepak
> >>
> >>
> >>
> >> On Wed, Sep 30, 2015 at 11:52 AM, Ranieri Mazili <ra...@gmail.com>
> >> wrote:
> >>
> >> > Hello,
> >> >
> >> > I have a JMeter test where I see the results on a Aggregate Report.
> >> > Currently my JMeter test has 7 steps as you can see in the image
> below.
> >> > [image: Inline image 1]
> >> >
> >> > If I set my test to run 3 times (Loop count), the aggregate report
> >> > obviously will aggregate the results, showing the same 7 steps on my
> >> > aggregate report.
> >> > I would like to split the results by Loop number, for example, for the
> >> > step 1 (1. Login), I would like to have:
> >> > 1.1 Login
> >> > 1.2 Login
> >> > 1.3 Login
> >> >
> >> > Is there a way to make it work this way?
> >> >
> >> > Thanks
> >> > --
> >> > Ranieri
> >> >
> >>
> >
> >
>
Re: Split Aggregate Report by Loop Count
Posted by Ranieri Mazili <ra...@gmail.com>.
Hi,
don't know if what I did is the way to solve the problem but I think I've
solved. Look at http://s7.postimg.org/rp7uxx5zf/jmeter_question_answer.png
I've used ${loopCount} create the Transaction Controllers name and Bean
Shell PostProcessor for the others.
Thanks
--
Ranieri
On Fri, Oct 2, 2015 at 11:21 AM, Ranieri Mazili <ra...@gmail.com> wrote:
> Hi Deepak,
>
> thank for your help... We're almost there :)
> Please, take a look at the image
> http://s30.postimg.org/u7e2aqak1/jmeter_question.png
> As you can see in the image above, the function
> prev.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-" +
> prev.getSampleLabel()); doesn't change Transaction Controllers label.
> Is there a way to make this BeanShell PostProcessor change Transaction
> Controllers label too?
> The other names are fine.
>
> Thanks!
> --
> Ranieri
>
> On Wed, Sep 30, 2015 at 4:18 PM, Deepak Shetty <sh...@gmail.com> wrote:
>
>> Hi
>> images dont make it to the mailing list.
>>
>> But in general the aggregation is based on the sampler name - so if you
>> vary the sampler name - you can achieve what you want.
>> So if you use something like __counter (
>> http://jmeter.apache.org/usermanual/functions.html#__counter) you can get
>> ThreadGroup (Threads=10, Loop count=3)
>> +Test Action
>> ++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set ==>
>> initialize a counter and increment it every time
>> Generate the same number for different threads , but a new number every
>> time its called i.e. a new loop
>> +${loopCount} -Sampler1 ==> append it
>> +${loopCount} -Sampler2 ==> append it
>>
>> Note that every time counter is run a new number will be created.
>> If you have fewer sampler it is an option
>> If you have many samplers you obviously dont want to go and specify this
>> on
>> every sampler so you could do something like
>> ThreadGroup
>> +Test Action
>> ++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set
>> ==>initiliase loop
>> +Sampler1
>> +Sampler2
>> +BeanShell PostProcessor
>> prev.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-" +
>> prev.getSampleLabel());
>>
>> regards
>> deepak
>>
>>
>>
>> On Wed, Sep 30, 2015 at 11:52 AM, Ranieri Mazili <ra...@gmail.com>
>> wrote:
>>
>> > Hello,
>> >
>> > I have a JMeter test where I see the results on a Aggregate Report.
>> > Currently my JMeter test has 7 steps as you can see in the image below.
>> > [image: Inline image 1]
>> >
>> > If I set my test to run 3 times (Loop count), the aggregate report
>> > obviously will aggregate the results, showing the same 7 steps on my
>> > aggregate report.
>> > I would like to split the results by Loop number, for example, for the
>> > step 1 (1. Login), I would like to have:
>> > 1.1 Login
>> > 1.2 Login
>> > 1.3 Login
>> >
>> > Is there a way to make it work this way?
>> >
>> > Thanks
>> > --
>> > Ranieri
>> >
>>
>
>
Re: Split Aggregate Report by Loop Count
Posted by Ranieri Mazili <ra...@gmail.com>.
Hi Deepak,
thank for your help... We're almost there :)
Please, take a look at the image
http://s30.postimg.org/u7e2aqak1/jmeter_question.png
As you can see in the image above, the function
prev.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-" +
prev.getSampleLabel()); doesn't change Transaction Controllers label.
Is there a way to make this BeanShell PostProcessor change Transaction
Controllers label too?
The other names are fine.
Thanks!
--
Ranieri
On Wed, Sep 30, 2015 at 4:18 PM, Deepak Shetty <sh...@gmail.com> wrote:
> Hi
> images dont make it to the mailing list.
>
> But in general the aggregation is based on the sampler name - so if you
> vary the sampler name - you can achieve what you want.
> So if you use something like __counter (
> http://jmeter.apache.org/usermanual/functions.html#__counter) you can get
> ThreadGroup (Threads=10, Loop count=3)
> +Test Action
> ++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set ==>
> initialize a counter and increment it every time
> Generate the same number for different threads , but a new number every
> time its called i.e. a new loop
> +${loopCount} -Sampler1 ==> append it
> +${loopCount} -Sampler2 ==> append it
>
> Note that every time counter is run a new number will be created.
> If you have fewer sampler it is an option
> If you have many samplers you obviously dont want to go and specify this on
> every sampler so you could do something like
> ThreadGroup
> +Test Action
> ++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set
> ==>initiliase loop
> +Sampler1
> +Sampler2
> +BeanShell PostProcessor
> prev.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-" +
> prev.getSampleLabel());
>
> regards
> deepak
>
>
>
> On Wed, Sep 30, 2015 at 11:52 AM, Ranieri Mazili <ra...@gmail.com>
> wrote:
>
> > Hello,
> >
> > I have a JMeter test where I see the results on a Aggregate Report.
> > Currently my JMeter test has 7 steps as you can see in the image below.
> > [image: Inline image 1]
> >
> > If I set my test to run 3 times (Loop count), the aggregate report
> > obviously will aggregate the results, showing the same 7 steps on my
> > aggregate report.
> > I would like to split the results by Loop number, for example, for the
> > step 1 (1. Login), I would like to have:
> > 1.1 Login
> > 1.2 Login
> > 1.3 Login
> >
> > Is there a way to make it work this way?
> >
> > Thanks
> > --
> > Ranieri
> >
>
Re: Split Aggregate Report by Loop Count
Posted by Deepak Shetty <sh...@gmail.com>.
Hi
images dont make it to the mailing list.
But in general the aggregation is based on the sampler name - so if you
vary the sampler name - you can achieve what you want.
So if you use something like __counter (
http://jmeter.apache.org/usermanual/functions.html#__counter) you can get
ThreadGroup (Threads=10, Loop count=3)
+Test Action
++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set ==>
initialize a counter and increment it every time
Generate the same number for different threads , but a new number every
time its called i.e. a new loop
+${loopCount} -Sampler1 ==> append it
+${loopCount} -Sampler2 ==> append it
Note that every time counter is run a new number will be created.
If you have fewer sampler it is an option
If you have many samplers you obviously dont want to go and specify this on
every sampler so you could do something like
ThreadGroup
+Test Action
++Beanshell Pre Processor name = ${__counter(TRUE,loopCount)}set
==>initiliase loop
+Sampler1
+Sampler2
+BeanShell PostProcessor
prev.setSampleLabel(String.valueOf(vars.get("loopCount")) + "-" +
prev.getSampleLabel());
regards
deepak
On Wed, Sep 30, 2015 at 11:52 AM, Ranieri Mazili <ra...@gmail.com>
wrote:
> Hello,
>
> I have a JMeter test where I see the results on a Aggregate Report.
> Currently my JMeter test has 7 steps as you can see in the image below.
> [image: Inline image 1]
>
> If I set my test to run 3 times (Loop count), the aggregate report
> obviously will aggregate the results, showing the same 7 steps on my
> aggregate report.
> I would like to split the results by Loop number, for example, for the
> step 1 (1. Login), I would like to have:
> 1.1 Login
> 1.2 Login
> 1.3 Login
>
> Is there a way to make it work this way?
>
> Thanks
> --
> Ranieri
>