On 20/10/2008, sebb <[EMAIL PROTECTED]> wrote:
> On 16/10/2008, Anthony Chadszinow <[EMAIL PROTECTED]> wrote:
> > Hi,
> >
>
> > Sorry, I've cleaned up my email and hope you can see where I'm coming from
> > now.
> >
> > "What are you trying to achieve ?" - In a product I writing tests for a
> > processing popup opens and I need a loop to follow that popups progress.
> > The samplers following the popups progress should terminate the loop once
> > the popup tells me it should. I can tell the loop should terminate because
> > while the popup should continue a piece of content is in it. Once the
> popup
> > should terminate that content is gone. So in practice, if the reg exp
> finds
> > a result which equals to what I was looking for in the loop then loop
> should
> > continue but if it's not found the loop should terminate. The example I
> > presented reflected the same sort of base actions I'm performing however I
> > presented the example in a way that everyone could test if they wanted by
> > using www.google.com as my test case and modifying my reg expressions.
> > Since I'm still getting the same problem with my test case I believe if you
> > help me with my test case then it will address my real case.
> >
> > "No need for dummy parameter if you are using JMeter 2.3.2" - I'm actually
> > using a nightly build but before emailing for help I tested this on 2.3.2
> to
> > see if I would get the same problem on the stable release. Is there no
> need
> > for dummy variable if I'm using a jmeter with a higher version than 2.3.2?
> > The manual said I needed dummy which is why I put it in there in the first
> > place
> >
> http://jakarta.apache.org/jmeter/usermanual/component_reference.html#logic_controllers
> > section '18.2.10 While Controller' in the examples of Condition clauses.
> >
> > ""while ${moo} is equal to" seems to be something missing here ???" -
> > Sorry, I meant to say while ${moo} is equal to "Business" keep going. If
> > you give my reg exp a try on www.google.com you would see that <a
> > href="/services/">(.*?) Solutions</a> returns "Business" so the first
> > sampler sets the variable to something which will make the loop go and then
> > the internal reg expression is meant to set the variable to something other
> > than "Business" which should terminate the loop.
> >
> > "Better to use a Debug Sampler, or a Java Request so you don't make
> > unnecessary HTTP requests.", "What do you mean by that?" - Thanks, I've now
> > worked out I've been using the debug sampler wrong. I was always putting
> it
> > at the bottom of my test plans but now I see you can drop any number of
> > debug samplers anywhere. This was quite a noob mistake when I look back at
> > it. I've modified my test case such that it looks like as follows now
> >
> > 1. View Results Tree
> > 2. Http Sampler getting www.google.com
> > 3. Child of above sampler - Reg Exp Extractor with settings Ref
> > name=moo, reg exp=<a href="/services/">(.*?) Solutions</a>,
> > template=$1$, match no=1, def val=not_found
> > 4. Debug Sampler
> > 5. While loop with settings
> > condition=${__javaScript("${moo}"=="Business")} so
> > loop while
> > ${moo} is equal to "Business" then continue looping
> > 6. Child of loop - Http sampler getting www.google.com
> > 7. Child of above Http sampler - Reg Exp Extractor with settings Ref
> > name=moo, reg
> > exp=content_that_wont_be_here(.*)no_not_at_all,
> > template=$1$, match no=1, def val=not_found
> > 8. Child of loop - Debug Sampler
> >
> > At debug sampler #4 ${moo} = "Business" as expected and the loop is
> > entered. At debug sampler #8 ${moo} = "not_found" however my loop never
> > terminates.
> >
> > So in the end I still have my same problem which is an infinite loop. I'm
> > now suspecting this is a variable scoping issue and that the reg exp in the
> > loop cannot effect the variables value at the loops Condition scope level.
> > If this is the case how can I do this example in another way to achieve
> what
> > I'm after?
>
>
> The Debug sampler output will show that it is not a variable scoping issue.
>
> There seems to be a problem with the While Controller not
> re-evaluating the condition properly. Not sure why this is yet.
Duh! Finger trouble. There was a problem with my test plan - there was
a space after the Javascript function call, and so the expression was
evaluating to "false " rather than "false".
Try enabling Debug on the While Controller - select the controller and
use the Help menu item to enable debug. This will log the condition
value.
> Try setting the default value to "false" in step #7, and using the
> condition "${moo}" in step #5 (in both cases remove the quotes).
>
>
> > Cheers,
> > Chad
> >
> > sebb wrote:
> >
> > >
> > > On 16/10/2008, Anthony Chadszinow <[EMAIL PROTECTED]> wrote:
> > >
> > >
> > > > Hi,
> > > >
> > > > I've had trouble with a while loop so I built a dumbed down example of
> > what
> > > > I'm really doing to explain my infinite loop problem. Feel free to
> > build
> > > > this yourself because there's only 6 operators.
> > > >
> > > >
> > >
> > > What are you trying to achieve ?
> > >
> > >
> > >
> > > > In thread group I have -
> > > >
> > > > 1. View Results Tree
> > > > 2. Http Sampler getting www.google.com
> > > > 3. Child of above sampler - Reg Exp Extrator with settings Ref
> > > > name=moo, reg exp=<a href="/services/">(.*?) Solutions</a>,
> > > > template=$1$, match no=1, def val=not_found
> > > > 4. While loop with settings
> > > >
> > condition=${__javaScript("${moo}"=="Business",dummy)}
> > > >
> > > >
> > >
> > > No need for dummy parameter if you are using JMeter 2.3.2
> > >
> > >
> > >
> > > > so loop
> > > > while ${moo} is equal to
> > > >
> > > >
> > >
> > > seems to be something missing here ???
> > >
> > >
> > >
> > > > 5. Child of loop - Http sampler getting www.google.com with get var
> > > > moo_is=${moo} <--- to expose what moo is at any point in time
> > > >
> > > >
> > >
> > > Better to use a Debug Sampler, or a Java Request so you don't make
> > > unnecessary HTTP requests.
> > >
> > >
> > >
> > > > 6. Child of above Http sampler - Reg Exp Extractor with settings Ref
> > > > name=moo, reg
> > > > exp=content_that_wont_be_here(.*)no_not_at_all,
> > > > template=$1$, match no=1, def val=not_found
> > > >
> > > > No debug sampler because it's infinite so I have to kill processes and
> > > > debug sampler never comes up anyway.
> > > >
> > > >
> > >
> > > What do you mean by that?
> > >
> > >
> > >
> > > > So the point of operator #6 is it's going to set ${moo}to not found
> > after
> > > > the first iteration because the reg expression will never match and it
> > does
> > > > this as expected. This is proved by view results tree 'Request' tab.
> > On
> > > > the first iteration of the loop the google request get var 'moo_is' has
> > the
> > > > value "Business" which is why the loop iterates at least once just as
> it
> > > > should. All requests that follow have 'moo_is' equal to "not_found"
> > which
> > > > is what I expect however my loop never stops. What am I doing wrong
> > here?
> > > >
> > > > Cheers,
> > > > Chad
> > > >
> > > > --
> > > > Anthony Chadszinow
> > > > MySource Classic Lead Developer
> > > >
> > > > Squiz
> > > > 92 Jarrett St Leichhardt, Sydney NSW, Australia 2040 t: 13000 SQUIZ
> > (
> > > > Support )
> > > > t: 8507 9900 / 1300 130 661
> > > > f: 8507 9988
> > > > w: www.matrix.squiz.net
> > > > w: www.squiz.net
> > > >
> > > > Sydney | Melbourne | Canberra | Hobart | Wellington | London
> > > > Open Source - Own it - Squiz.net
> > > > ----------------------------------------------------
> > > >
> > > > IMPORTANT:This email (and any attachments) is commercial-in-confidence
> > and
> > > > or may be legally privileged and must not be forwarded, copied or
> > shared
> > > > without express permission from Squiz. If you are not the intended
> > > > recipient, you may not legally copy, disclose or use the contents in
> > any
> > > > way
> > > > and you should contact [EMAIL PROTECTED] immediately and destroy this
> > message
> > > > and any
> > > > attachments. Thank you.
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > [EMAIL PROTECTED]
> > > For additional commands, e-mail:
> > [EMAIL PROTECTED]
> > >
> > >
> > >
> > >
> >
> > --
> > Anthony Chadszinow
> > MySource Classic Lead Developer
> >
> > Squiz
> > 92 Jarrett St Leichhardt, Sydney NSW, Australia 2040 t: 13000 SQUIZ (
> > Support )
> > t: 8507 9900 / 1300 130 661
> > f: 8507 9988
> > w: www.matrix.squiz.net
> > w: www.squiz.net
> >
> > Sydney | Melbourne | Canberra | Hobart | Wellington | London
> > Open Source - Own it - Squiz.net
> > ----------------------------------------------------
> >
> > IMPORTANT:This email (and any attachments) is commercial-in-confidence and
> > or may be legally privileged and must not be forwarded, copied or shared
> > without express permission from Squiz. If you are not the intended
> > recipient, you may not legally copy, disclose or use the contents in any
> > way
> > and you should contact [EMAIL PROTECTED] immediately and destroy this
> message
> > and any
> > attachments. Thank you.
> >
> >
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]