Apache JMeter

org.apache.jmeter.protocol.java.sampler
Class JUnitSampler

java.lang.Object
  extended by org.apache.jmeter.testelement.AbstractTestElement
      extended by org.apache.jmeter.samplers.AbstractSampler
          extended by 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
JUnitSampler()
           
 
Method Summary
 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 to false.
 String getClassname()
          Gets the Classname attribute of the JavaConfig object
 String 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 object
 void 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 option
 void 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 message
 void setFailureCode(String code)
          Provide some unique code to denote a type of failure
 void setFilterString(String text)
          set the filter string in comma separated format
 void 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 message
 void 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
 

Constructor Detail

JUnitSampler

public JUnitSampler()
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 to false. Users have to explicitly set it to true 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.

Specified by:
sample in interface Sampler
Parameters:
entry - the Entry (TODO seems to be unused)
Returns:
information about the sample

threadFinished

public void threadFinished()
Description copied from interface: ThreadListener
Called for each thread after all samples have been processed.

Specified by:
threadFinished in interface ThreadListener
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 interface ThreadListener
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

Apache JMeter

Copyright © 1998-2015 Apache Software Foundation. All Rights Reserved.