You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jmeter.apache.org by minerva001 <mi...@hispeed.ch> on 2017/11/15 08:15:38 UTC
Update Once Per Iteration reverses execution sequence of Preprocessors
Didn't got a reply on the user list, hoping to get some help from the devs.
I noticed when having in a simple controller with several User Parameters
(Preprocessors) with the "Update Once Per Iteration" flag marked, that the
Preprocessors are run in reverse order.
Simple Controller
User Parameter
P XX
Q ${Q}q1
User Parameter
P1 ${P}
Q ${Q}q2
Debug Sampler
In case "Update Once Per Iteration" is marked, P1=${P}, Q=${Q}q2q1
When not marked, P1=XX, Q=${Q}q1q2
Why does "Update Once Per Iteration" reverses the execution sequence of
Preprocessors?
Is this behavior intended and somewhere documented?
RE: Update Once Per Iteration reverses execution sequence of Preprocessors
Posted by minerva001 <mi...@hispeed.ch>.
In case "Update Once Per Iteration" is marked my outcome is not the same as your result with your explanation.
I can only explain the outcome, that the Preprocessors are executed in reverse order. When true it could be pointed at in the code.
When not, what is really going on; which steps are taken.
> -----Original Message-----
> From: jmeter tea [mailto:jmetertea@gmail.com]
> Sent: Wednesday, 15. November 2017 10:06
> To: dev@jmeter.apache.org
> Subject: Re: Update Once Per Iteration reverses execution sequence of
> Preprocessors
>
> User parameters are strictly hierarchical
> But when checking Update Once Per Iteration it saves before iteration the
> variables beforehand
> So that second User Parameter will have P as not exists variable and Q as
> defined in its own declaration
> and therefore:
> P1 is saved as ${P} , Q is saved as ${Q}q2
> Now User Parameter 1 will update Q = ${Q}q1
> and User Parameter 2 will update Q = ${Q}q1q2 where ${Q}q1 is the stored
> variable
>
> It sounds like a bug, but this is the flow.
>
> On Wed, Nov 15, 2017 at 10:15 AM, minerva001 <mi...@hispeed.ch>
> wrote:
>
> > Didn't got a reply on the user list, hoping to get some help from the devs.
> >
> > I noticed when having in a simple controller with several User Parameters
> > (Preprocessors) with the "Update Once Per Iteration" flag marked, that the
> > Preprocessors are run in reverse order.
> >
> > Simple Controller
> > User Parameter
> > P XX
> > Q ${Q}q1
> > User Parameter
> > P1 ${P}
> > Q ${Q}q2
> > Debug Sampler
> >
> >
> > In case "Update Once Per Iteration" is marked, P1=${P}, Q=${Q}q2q1
> > When not marked, P1=XX, Q=${Q}q1q2
> >
> > Why does "Update Once Per Iteration" reverses the execution sequence
> of
> > Preprocessors?
> > Is this behavior intended and somewhere documented?
> >
> >
Re: Update Once Per Iteration reverses execution sequence of Preprocessors
Posted by jmeter tea <jm...@gmail.com>.
User parameters are strictly hierarchical
But when checking Update Once Per Iteration it saves before iteration the
variables beforehand
So that second User Parameter will have P as not exists variable and Q as
defined in its own declaration
and therefore:
P1 is saved as ${P} , Q is saved as ${Q}q2
Now User Parameter 1 will update Q = ${Q}q1
and User Parameter 2 will update Q = ${Q}q1q2 where ${Q}q1 is the stored
variable
It sounds like a bug, but this is the flow.
On Wed, Nov 15, 2017 at 10:15 AM, minerva001 <mi...@hispeed.ch> wrote:
> Didn't got a reply on the user list, hoping to get some help from the devs.
>
> I noticed when having in a simple controller with several User Parameters
> (Preprocessors) with the "Update Once Per Iteration" flag marked, that the
> Preprocessors are run in reverse order.
>
> Simple Controller
> User Parameter
> P XX
> Q ${Q}q1
> User Parameter
> P1 ${P}
> Q ${Q}q2
> Debug Sampler
>
>
> In case "Update Once Per Iteration" is marked, P1=${P}, Q=${Q}q2q1
> When not marked, P1=XX, Q=${Q}q1q2
>
> Why does "Update Once Per Iteration" reverses the execution sequence of
> Preprocessors?
> Is this behavior intended and somewhere documented?
>
>