Package org.apache.jmeter.functions
Class IterationCounter
java.lang.Object
org.apache.jmeter.functions.AbstractFunction
org.apache.jmeter.functions.IterationCounter
- All Implemented Interfaces:
Function,ThreadListener
@AutoService(Function.class)
public class IterationCounter
extends AbstractFunction
implements ThreadListener
Counter that can be referenced anywhere in the Thread Group. It can be configured per User (Thread Local)
or globally.
- Since:
- 1.X
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionexecute(SampleResult previousResult, Sampler currentSampler) N.B.Return a list of strings briefly describing each parameter your function takes.Return the name of your function.voidsetParameters(Collection<CompoundVariable> parameters) Note: This is always called even if no parameters are provided (versions of JMeter after 2.3.1)voidCalled for each thread after all samples have been processed.voidCalled for each thread before starting sampling.Methods inherited from class org.apache.jmeter.functions.AbstractFunction
addVariableValue, checkMinParameterCount, checkParameterCount, checkParameterCount, execute, getVariables
-
Constructor Details
-
IterationCounter
public IterationCounter()
-
-
Method Details
-
execute
public String execute(SampleResult previousResult, Sampler currentSampler) throws InvalidVariableException N.B. execute() should be synchronized if function is operating with non-thread-safe objects (e.g. operates with files).
JMeter ensures setParameters() happens-before execute(): setParameters is executed in main thread, and worker threads are started after that.- Specified by:
executein interfaceFunction- Specified by:
executein classAbstractFunction- Parameters:
previousResult- The previousSampleResultcurrentSampler- The currentSampler- Returns:
- The replacement value, which was generated by the function
- Throws:
InvalidVariableException- - when the variables for the function call can't be evaluated- See Also:
-
setParameters
Note: This is always called even if no parameters are provided (versions of JMeter after 2.3.1)- Specified by:
setParametersin interfaceFunction- Specified by:
setParametersin classAbstractFunction- Parameters:
parameters- The parameters for the function call- Throws:
InvalidVariableException- - when the variables for the function call can't be evaluated- See Also:
-
getReferenceKey
Return the name of your function. Convention is to prepend "__" to the name (ie "__regexFunction")- Specified by:
getReferenceKeyin interfaceFunction- Specified by:
getReferenceKeyin classAbstractFunction- Returns:
- The name of the function
- See Also:
-
getArgumentDesc
Return a list of strings briefly describing each parameter your function takes. Please use JMeterUtils.getResString(resource_name) to grab a resource string. Otherwise, your help text will be difficult to internationalize. This list is not optional. If you don't wish to write help, you must at least return a List containing the correct number of blank strings, one for each argument.- Specified by:
getArgumentDescin interfaceFunction- Returns:
- List with brief descriptions for each parameter the function takes
-
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. See org.apache.jmeter.threads.JMeterThread#threadStarted()- Specified by:
threadStartedin interfaceThreadListener
-
threadFinished
public void threadFinished()Description copied from interface:ThreadListenerCalled for each thread after all samples have been processed. See org.apache.jmeter.threads.JMeterThread#threadFinished(org.apache.jmeter.engine.event.LoopIterationListener)- Specified by:
threadFinishedin interfaceThreadListener
-