Got it. What I realized is that the post processor is evaluated before the assertion and so there was never anything to evaluate when the post processor ran (in terms of the assertion object). I used the "JMeterThread.last_sample_ok" in the IF controller and it worked as you said. Thanks.
sebb-2-2 wrote: > > If an assertion fails, then it sets the sample to failed. > > On 02/02/2009, perf_eng <[email protected]> wrote: >> >> But that's precisely why I want to check the assertion and not the >> sample. A >> valid page may return giving a response code of 200 but it's not the >> page >> I'm looking for, for instance at a login page. So I check for unique >> text >> to make sure the desired page is returned; if not skip everything else. >> I >> am having issues accessing that previous assertion. >> >> Thanks for the prompt response by the way. >> >> >> >> >> >> sebb-2-2 wrote: >> > >> > On 02/02/2009, perf_eng <[email protected]> wrote: >> >> >> >> I have assertion results for every page that I visit. In the >> beanshell >> >> post >> >> processors, I am trying to ascertain if the previous assertion was a >> >> success >> >> or failure so that I can force it to make a decision on whether or >> not >> >> to >> >> access the subsequent pages. Essentially, if the previous assertion >> >> fails, >> >> skip all remaining requests to prevent cascading failures. >> > >> > No need for a BeanShell PP in that case - just check the variable >> > >> > JMeterThread.last_sample_ok >> > >> > see for example: >> > >> > >> http://jakarta.apache.org/jmeter/usermanual/component_reference.html#If_Controller >> > >> > But if you do want to use BeanShell, then just use the boolean >> > prev.isSuccessful() >> > >> > This will work even if the sample fails entirely (e.g. 404) when the >> > Assertions would be skipped anyway (unless you select Ignore status). >> > >> >> >> >> >> >> sebb-2-2 wrote: >> >> > >> >> > On 02/02/2009, perf_eng <[email protected]> wrote: >> >> >> >> >> >> I am having a similar issue. I have a test plan with an http >> >> sampler >> >> >> with a >> >> >> response assertion as the first child and a beanshell post >> processor >> >> as >> >> >> the >> >> >> second child. When I use the "prev" variable such as this >> >> >> >> >> >> assertionLength = prev.getAssertionResults().length; >> >> >> >> >> >> assertionLength is 0 even though the assertion did not fail nor >> give >> >> an >> >> >> error. Where am I going wrong? I will provide more detail if >> >> needed. >> >> >> >> >> > >> >> > Assertion results are only generated if there is an error. >> >> > You can see that if you use the Tree View Listener. >> >> > >> >> > What are you actually trying to do with the BSH PP? >> >> > >> >> >> >> >> >> sebb-2-2 wrote: >> >> >> > >> >> >> > On 12/10/2008, Pavel Gouchtchine <[email protected]> wrote: >> >> >> >> Thanks a lot. >> >> >> >> This is working as expected: >> >> >> >> >> >> >> >> >> >> >> >> import org.apache.jmeter.util.JMeterUtils; >> >> >> >> import org.apache.jmeter.samplers.SampleResult; >> >> >> >> >> >> >> >> import org.apache.jmeter.assertions.AssertionResult; >> >> >> >> >> >> >> > >> >> >> > You probably don't need the imports. >> >> >> > >> >> >> >> >> >> >> >> print("running"); >> >> >> >> SampleResult prev_result=ctx.getPreviousResult(); >> >> >> > >> >> >> > There is no need to declare variables. >> >> >> > >> >> >> > Also, the current result (i.e. the one the Assertion is >> intended >> >> to be >> >> >> > applied to) is already set up in the variable "SampleResult". >> >> >> > >> >> >> > See: >> >> >> > >> >> >> > >> >> >> >> >> >> http://jakarta.apache.org/jmeter/usermanual/component_reference.html#BeanShell_Assertion >> >> >> > >> >> >> > for all the variables that are defined to the BeanShell >> Assertion >> >> >> script. >> >> >> > >> >> >> >> if (prev_result != null) { >> >> >> >> >> >> >> >> print("prev is not null"); >> >> >> >> >> >> >> >> AssertionResult [] >> >> results=prev_result.getAssertionResults(); >> >> >> >> >> >> >> >> if (results == null) print ("results is null"); >> >> >> >> >> >> >> >> int size = results.length; >> >> >> >> >> >> >> >> for (int i=0; i<=size-1; i++) { >> >> >> >> >> >> >> >> AssertionResult result_item = results[i]; >> >> >> >> >> >> >> >> if (result_item == null) print ("result item is >> null"); >> >> >> >> >> >> >> >> else print("result_item "+i+" is not null"); >> >> >> >> print("Name: "+result_item.getName()+" ===> >> >> >> >> "+result_item.toString()); >> >> >> >> >> >> >> >> } >> >> >> >> } >> >> >> >> else print("prev_result is null"); >> >> >> >> >> >> >> >> >> >> >> >> On Sat, Oct 11, 2008 at 7:35 PM, sebb <[email protected]> >> wrote: >> >> >> >> > On 12/10/2008, Pavel Gouchtchine <[email protected]> >> wrote: >> >> >> >> >> Hi All. >> >> >> >> >> I am trying to get access to "prev" variable >> (SampleResult >> >> >> object) >> >> >> >> >> from BeanShell Assertion. >> >> >> >> >> My code look like this: >> >> >> >> >> >> >> >> >> >> import org.apache.jmeter.util.JMeterUtils; >> >> >> >> >> import org.apache.jmeter.samplers.SampleResult; >> >> >> >> >> >> >> >> >> >> print("running"); >> >> >> >> >> SampleResult prev=vars.get("prev"); >> >> >> >> >> if (prev != null) { >> >> >> >> >> print("prev is not null"); >> >> >> >> >> results=prev.getAssertionResults(); >> >> >> >> >> if (results == null) print ("results is null"); >> >> >> >> >> size = results.length; >> >> >> >> >> for (int i=0; i<=size-1; i++) { >> >> >> >> >> result_item = results[i]; >> >> >> >> >> if (result_item == null) print ("result item is >> >> null") >> >> >> >> >> else ("result_item "+i+" is not null"); >> >> >> >> >> } >> >> >> >> >> >> >> >> >> >> This code does not work at all. prev variable is null. >> >> >> >> > >> >> >> >> > The previous sampler is stored in the BeanShell variable >> >> "prev", >> >> >> not >> >> >> >> > the JMeter variable "prev". The code above overwrote the >> >> variable >> >> >> you >> >> >> >> > want... >> >> >> >> > >> >> >> >> > Just use "prev" - it is already set up, as are the other >> >> >> variables, >> >> >> >> > e.g. "log", "ctx" etc. >> >> >> >> > >> >> >> >> >> Please, help. >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> --------------------------------------------------------------------- >> >> >> >> >> 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] >> >> >> > >> >> >> > >> >> >> > >> >> >> >> >> >> -- >> >> >> >> >> >> View this message in context: >> >> >> >> >> >> http://www.nabble.com/How-get-SampleResult-from-BeanShell-Listener-tp19937409p21793226.html >> >> >> Sent from the JMeter - User mailing list archive at Nabble.com. >> >> >> >> >> >> >> >> >> >> >> >> >> >> --------------------------------------------------------------------- >> >> >> 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] >> >> > >> >> > >> >> > >> >> >> >> -- >> >> >> >> View this message in context: >> >> >> http://www.nabble.com/How-get-SampleResult-from-BeanShell-Listener-tp19937409p21795540.html >> >> >> >> Sent from the JMeter - User mailing list archive at Nabble.com. >> >> >> >> >> >> >> --------------------------------------------------------------------- >> >> 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] >> > >> > >> > >> >> -- >> >> View this message in context: >> http://www.nabble.com/How-get-SampleResult-from-BeanShell-Listener-tp19937409p21797384.html >> >> Sent from the JMeter - User mailing list archive at Nabble.com. >> >> >> --------------------------------------------------------------------- >> 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] > > > -- View this message in context: http://www.nabble.com/How-get-SampleResult-from-BeanShell-Listener-tp19937409p21798502.html Sent from the JMeter - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

