Class BeanShellTestElement
- java.lang.Object
-
- org.apache.jmeter.testelement.AbstractTestElement
-
- org.apache.jmeter.util.BeanShellTestElement
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Searchable
,TestElement
,TestStateListener
,ThreadListener
- Direct Known Subclasses:
BeanShellAssertion
,BeanShellListener
,BeanShellPostProcessor
,BeanShellPreProcessor
,BeanShellSampler
,BeanShellTimer
public abstract class BeanShellTestElement extends AbstractTestElement implements Serializable, Cloneable, ThreadListener, TestStateListener
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from interface org.apache.jmeter.testelement.TestElement
COMMENTS, ENABLED, GUI_CLASS, NAME, TEST_CLASS
-
-
Constructor Summary
Constructors Constructor Description BeanShellTestElement()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Object
clone()
protected BeanShellInterpreter
getBeanShellInterpreter()
Get the interpreter and set up standard script variables.String
getFilename()
protected abstract String
getInitFileProperty()
String
getParameters()
String
getScript()
Return the script (TestBean version).boolean
isResetInterpreter()
protected Object
processFileOrScript(BeanShellInterpreter bsh)
Process the file or script from the test element.protected Object
readResolve()
void
setFilename(String s)
void
setParameters(String s)
void
setResetInterpreter(boolean b)
void
setScript(String s)
Set the script (TestBean version).void
testEnded()
Called once for all threads after the end of a test.void
testEnded(String host)
Called once for all threads after the end of a test.void
testStarted()
Called just before the start of the test from the main engine thread.void
testStarted(String host)
Called just before the start of the test from the main engine thread.void
threadFinished()
Called for each thread after all samples have been processed.void
threadStarted()
Called for each thread before starting sampling.-
Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement
addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty
-
-
-
-
Method Detail
-
getInitFileProperty
protected abstract String getInitFileProperty()
-
getBeanShellInterpreter
protected BeanShellInterpreter getBeanShellInterpreter()
Get the interpreter and set up standard script variables.Sets the following script variables:
- ctx
- Label
- prev
- props
- vars
- Returns:
- the interpreter
-
readResolve
protected Object readResolve()
-
clone
public Object clone()
- Specified by:
clone
in interfaceTestElement
- Overrides:
clone
in classAbstractTestElement
-
processFileOrScript
protected Object processFileOrScript(BeanShellInterpreter bsh) throws JMeterException
Process the file or script from the test element.Sets the following script variables:
- FileName
- Parameters
- bsh.args
- Parameters:
bsh
- the interpreter, notnull
- Returns:
- the result of the script, may be
null
- Throws:
JMeterException
- when working with the bsh fails
-
getScript
public String getScript()
Return the script (TestBean version). Must be overridden for subclasses that don't implement TestBean otherwise the clone() method won't work.- Returns:
- the script to execute
-
setScript
public void setScript(String s)
Set the script (TestBean version). Must be overridden for subclasses that don't implement TestBean otherwise the clone() method won't work.- Parameters:
s
- the script to execute (may be blank)
-
threadStarted
public void threadStarted()
Description copied from interface:ThreadListener
Called for each thread before starting sampling. WARNING: this is called before any Config test elements are processed, so any properties they define will not have been merged in yet.- Specified by:
threadStarted
in interfaceThreadListener
- See Also:
JMeterThread.threadStarted()
-
threadFinished
public void threadFinished()
Description copied from interface:ThreadListener
Called for each thread after all samples have been processed.- Specified by:
threadFinished
in interfaceThreadListener
- See Also:
JMeterThread.threadFinished(org.apache.jmeter.engine.event.LoopIterationListener)
-
testEnded
public void testEnded()
Description copied from interface:TestStateListener
Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.
N.B. testStarted() and testEnded() are called from different threads.
- Specified by:
testEnded
in interfaceTestStateListener
- See Also:
StandardJMeterEngine.stopTest()
-
testEnded
public void testEnded(String host)
Description copied from interface:TestStateListener
Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.
N.B. testStarted() and testEnded() are called from different threads.
- Specified by:
testEnded
in interfaceTestStateListener
- Parameters:
host
- name of host- See Also:
StandardJMeterEngine.stopTest()
-
testStarted
public void testStarted()
Description copied from interface:TestStateListener
Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.
N.B. testStarted() and testEnded() are called from different threads.
- Specified by:
testStarted
in interfaceTestStateListener
- See Also:
StandardJMeterEngine.run()
-
testStarted
public void testStarted(String host)
Description copied from interface:TestStateListener
Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.
N.B. testStarted() and testEnded() are called from different threads.
- Specified by:
testStarted
in interfaceTestStateListener
- Parameters:
host
- name of host- See Also:
StandardJMeterEngine.run()
-
getParameters
public String getParameters()
-
setParameters
public void setParameters(String s)
-
getFilename
public String getFilename()
-
setFilename
public void setFilename(String s)
-
isResetInterpreter
public boolean isResetInterpreter()
-
setResetInterpreter
public void setResetInterpreter(boolean b)
-
-