Class JUnitSampler
- java.lang.Object
-
- org.apache.jmeter.testelement.AbstractTestElement
-
- org.apache.jmeter.samplers.AbstractSampler
-
- org.apache.jmeter.protocol.java.sampler.JUnitSampler
-
- All Implemented Interfaces:
Serializable
,Cloneable
,ConfigMergabilityIndicator
,Searchable
,Sampler
,TestElement
,ThreadListener
public class JUnitSampler extends AbstractSampler implements ThreadListener
This is a basic implementation that runs a single test method of a JUnit test case. The current implementation will use the string constructor first. If the test class does not declare a string constructor, the sampler will try empty constructor.- 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 JUnitSampler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
getAppendError()
If append error is not set, by default it is set to false, which means users have to explicitly set the sampler to append the assert errors.boolean
getAppendException()
If append exception is not set, by default it is set tofalse
.String
getClassname()
Gets the Classname attribute of the JavaConfig objectString
getConstructorString()
boolean
getCreateOneInstancePerSample()
boolean
getDoNotSetUpTearDown()
if the sample shouldn't call setup/teardown, the method returns true.String
getError()
String
getErrorCode()
String
getFailure()
String
getFailureCode()
String
getFilterString()
boolean
getJunit4()
Check if JUnit4 (annotations) are to be used instead of the JUnit3 style (TestClass and specific method names)String
getMethod()
String
getSuccess()
String
getSuccessCode()
SampleResult
sample(Entry entry)
Obtains statistics about the given Entry, and packages the information into a SampleResult.void
setAppendError(boolean error)
Set whether to append errors or not.void
setAppendException(boolean exc)
Set whether to append exceptions or not.void
setClassname(String classname)
Sets the Classname attribute of the JavaConfig objectvoid
setConstructorString(String constr)
Set the string label used to create an instance of the test with the string constructor.void
setCreateOneInstancePerSample(boolean createOneInstancePerSample)
void
setDoNotSetUpTearDown(boolean setup)
set the setup/teardown optionvoid
setError(String error)
provide a descriptive error for the test method.void
setErrorCode(String code)
Provide an unique error code for when the test does not pass the assert test.void
setFailure(String fail)
set the failure messagevoid
setFailureCode(String code)
Provide some unique code to denote a type of failurevoid
setFilterString(String text)
set the filter string in comma separated formatvoid
setJunit4(boolean junit4)
Set whether to use JUnit4 style or not.void
setMethod(String methodName)
Method should add the JUnit testXXX method to the list at the end, since the sequence matters.void
setSuccess(String success)
set the success messagevoid
setSuccessCode(String code)
Set the success code.void
threadFinished()
Called for each thread after all samples have been processed.void
threadStarted()
Set up all variables that don't change between samples.-
Methods inherited from class org.apache.jmeter.samplers.AbstractSampler
applies
-
Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement
addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, clone, 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
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.jmeter.testelement.TestElement
addTestElement, canRemove, clear, clearTestElementChildren, clone, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getThreadContext, getThreadName, isEnabled, isRunningVersion, isTemporary, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse
-
-
-
-
Method Detail
-
setClassname
public void setClassname(String classname)
Sets the Classname attribute of the JavaConfig object- Parameters:
classname
- the new Classname value
-
getClassname
public String getClassname()
Gets the Classname attribute of the JavaConfig object- Returns:
- the Classname value
-
setConstructorString
public void setConstructorString(String constr)
Set the string label used to create an instance of the test with the string constructor.- Parameters:
constr
- the string passed to the constructor
-
getConstructorString
public String getConstructorString()
- Returns:
- the string passed to the string constructor
-
getMethod
public String getMethod()
- Returns:
- the name of the method to test
-
setMethod
public void setMethod(String methodName)
Method should add the JUnit testXXX method to the list at the end, since the sequence matters.- Parameters:
methodName
- name of the method to test
-
getSuccess
public String getSuccess()
- Returns:
- the success message
-
setSuccess
public void setSuccess(String success)
set the success message- Parameters:
success
- message to be used for success
-
getSuccessCode
public String getSuccessCode()
- Returns:
- the success code defined by the user
-
setSuccessCode
public void setSuccessCode(String code)
Set the success code. The success code should be unique.- Parameters:
code
- unique success code
-
getFailure
public String getFailure()
- Returns:
- the failure message
-
setFailure
public void setFailure(String fail)
set the failure message- Parameters:
fail
- the failure message
-
getFailureCode
public String getFailureCode()
- Returns:
- The failure code that is used by other components
-
setFailureCode
public void setFailureCode(String code)
Provide some unique code to denote a type of failure- Parameters:
code
- unique code to denote the type of failure
-
getError
public String getError()
- Returns:
- the descriptive error for the test
-
setError
public void setError(String error)
provide a descriptive error for the test method. For a description of the difference between failure and error, please refer to the junit faq- Parameters:
error
- the description of the error
-
getErrorCode
public String getErrorCode()
- Returns:
- the error code for the test method. It should be an unique error code.
-
setErrorCode
public void setErrorCode(String code)
Provide an unique error code for when the test does not pass the assert test.- Parameters:
code
- unique error code
-
getFilterString
public String getFilterString()
- Returns:
- the comma separated string for the filter
-
setFilterString
public void setFilterString(String text)
set the filter string in comma separated format- Parameters:
text
- comma separated filter
-
getDoNotSetUpTearDown
public boolean getDoNotSetUpTearDown()
if the sample shouldn't call setup/teardown, the method returns true. It's meant for onetimesetup and onetimeteardown.- Returns:
- flag whether setup/teardown methods should not be called
-
setDoNotSetUpTearDown
public void setDoNotSetUpTearDown(boolean setup)
set the setup/teardown option- Parameters:
setup
- flag whether the setup/teardown methods should not be called
-
getAppendError
public boolean getAppendError()
If append error is not set, by default it is set to false, which means users have to explicitly set the sampler to append the assert errors. Because of how junit works, there should only be one error- Returns:
- flag whether errors should be appended
-
setAppendError
public void setAppendError(boolean error)
Set whether to append errors or not.- Parameters:
error
- the setting to apply
-
getAppendException
public boolean getAppendException()
If append exception is not set, by default it is set tofalse
. Users have to explicitly set it totrue
to see the exceptions in the result tree.- Returns:
- flag whether exceptions should be appended to the result tree
-
setAppendException
public void setAppendException(boolean exc)
Set whether to append exceptions or not.- Parameters:
exc
- the setting to apply.
-
getJunit4
public boolean getJunit4()
Check if JUnit4 (annotations) are to be used instead of the JUnit3 style (TestClass and specific method names)- Returns:
- true if JUnit4 (annotations) are to be used. Default is false.
-
setJunit4
public void setJunit4(boolean junit4)
Set whether to use JUnit4 style or not.- Parameters:
junit4
- true if JUnit4 style is to be used.
-
sample
public SampleResult sample(Entry entry)
Obtains statistics about the given Entry, and packages the information into a SampleResult.
-
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)
-
threadStarted
public void threadStarted()
Set up all variables that don't change between samples.- Specified by:
threadStarted
in interfaceThreadListener
- See Also:
JMeterThread.threadStarted()
-
setCreateOneInstancePerSample
public void setCreateOneInstancePerSample(boolean createOneInstancePerSample)
- Parameters:
createOneInstancePerSample
- flag whether a new instance for each call should be created
-
getCreateOneInstancePerSample
public boolean getCreateOneInstancePerSample()
- Returns:
- boolean create New Instance For Each Call
-
-