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 Objectclone()protected BeanShellInterpretergetBeanShellInterpreter()Get the interpreter and set up standard script variables.StringgetFilename()protected abstract StringgetInitFileProperty()StringgetParameters()StringgetScript()Return the script (TestBean version).booleanisResetInterpreter()protected ObjectprocessFileOrScript(BeanShellInterpreter bsh)Process the file or script from the test element.protected ObjectreadResolve()voidsetFilename(String s)voidsetParameters(String s)voidsetResetInterpreter(boolean b)voidsetScript(String s)Set the script (TestBean version).voidtestEnded()Called once for all threads after the end of a test.voidtestEnded(String host)Called once for all threads after the end of a test.voidtestStarted()Called just before the start of the test from the main engine thread.voidtestStarted(String host)Called just before the start of the test from the main engine thread.voidthreadFinished()Called for each thread after all samples have been processed.voidthreadStarted()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:
clonein interfaceTestElement- Overrides:
clonein 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:ThreadListenerCalled 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:
threadStartedin interfaceThreadListener- See Also:
JMeterThread.threadStarted()
-
threadFinished
public void threadFinished()
Description copied from interface:ThreadListenerCalled for each thread after all samples have been processed.- Specified by:
threadFinishedin interfaceThreadListener- See Also:
JMeterThread.threadFinished(org.apache.jmeter.engine.event.LoopIterationListener)
-
testEnded
public void testEnded()
Description copied from interface:TestStateListenerCalled 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:
testEndedin interfaceTestStateListener- See Also:
StandardJMeterEngine.stopTest()
-
testEnded
public void testEnded(String host)
Description copied from interface:TestStateListenerCalled 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:
testEndedin interfaceTestStateListener- Parameters:
host- name of host- See Also:
StandardJMeterEngine.stopTest()
-
testStarted
public void testStarted()
Description copied from interface:TestStateListenerCalled 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:
testStartedin interfaceTestStateListener- See Also:
StandardJMeterEngine.run()
-
testStarted
public void testStarted(String host)
Description copied from interface:TestStateListenerCalled 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:
testStartedin 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)
-
-