Class ResultCollector
- java.lang.Object
-
- org.apache.jmeter.testelement.AbstractTestElement
-
- org.apache.jmeter.reporters.AbstractListenerElement
-
- org.apache.jmeter.reporters.ResultCollector
-
- All Implemented Interfaces:
Serializable,Cloneable,NoThreadClone,Searchable,Clearable,Remoteable,SampleListener,TestElement,TestStateListener
- Direct Known Subclasses:
MailerResultCollector
public class ResultCollector extends AbstractListenerElement implements SampleListener, Clearable, Serializable, TestStateListener, Remoteable, NoThreadClone
This class handles all saving of samples. The class must be thread-safe because it is shared between threads (NoThreadClone).- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static StringFILENAME-
Fields inherited from interface org.apache.jmeter.testelement.TestElement
COMMENTS, ENABLED, GUI_CLASS, NAME, TEST_CLASS
-
-
Constructor Summary
Constructors Constructor Description ResultCollector()No-arg constructor.ResultCollector(Summariser summer)Constructor which sets the usedSummariser
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearData()Clears the current data of the object.Objectclone()protected voidflushFile()Flush PrintWriter to synchronize file contentsStringgetFilename()Get the filename of the file this collector usesSampleSaveConfigurationgetSaveConfig()booleanisErrorLogging()Get the state of error loggingbooleanisSampleWanted(boolean success)Decides whether or not to a sample is wanted based on: errorOnly successOnly sample success Should only be called for single samples.static booleanisSampleWanted(boolean success, boolean errorOnly, boolean successOnly)Decides whether or not to a sample is wanted based on: errorOnly successOnly sample success This version is intended to be called by code that loops over many samples; it is cheaper than fetching the settings each time.booleanisSuccessOnlyLogging()Get the state of successful only loggingvoidloadExistingFile()Loads an existing sample data (JTL) file.voidrecordStats(TestElement e)recordStats is used to save statistics generated by visualizersvoidsampleOccurred(SampleEvent event)When a test result is received, display it and save it.voidsampleStarted(SampleEvent e)A sample has started.voidsampleStopped(SampleEvent e)A sample has stopped.protected voidsendToVisualizer(SampleResult r)voidsetErrorLogging(boolean errorLogging)Sets error logging flagvoidsetFilename(String f)Sets the filename attribute of the ResultCollector object.voidsetSaveConfig(SampleSaveConfiguration saveConfig)voidsetSuccessOnlyLogging(boolean value)Sets the flag whether only successful samples should be loggedvoidtestEnded()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.-
Methods inherited from class org.apache.jmeter.reporters.AbstractListenerElement
getVisualizer, setListener
-
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
-
-
-
-
Field Detail
-
FILENAME
public static final String FILENAME
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ResultCollector
public ResultCollector()
No-arg constructor.
-
ResultCollector
public ResultCollector(Summariser summer)
Constructor which sets the usedSummariser- Parameters:
summer- TheSummariserto use
-
-
Method Detail
-
clone
public Object clone()
- Specified by:
clonein interfaceTestElement- Overrides:
clonein classAbstractListenerElement
-
getFilename
public String getFilename()
Get the filename of the file this collector uses- Returns:
- The name of the file
-
isErrorLogging
public boolean isErrorLogging()
Get the state of error logging- Returns:
- Flag whether errors should be logged
-
setErrorLogging
public final void setErrorLogging(boolean errorLogging)
Sets error logging flag- Parameters:
errorLogging- The flag whether errors should be logged
-
setSuccessOnlyLogging
public final void setSuccessOnlyLogging(boolean value)
Sets the flag whether only successful samples should be logged- Parameters:
value- The flag whether only successful samples should be logged
-
isSuccessOnlyLogging
public boolean isSuccessOnlyLogging()
Get the state of successful only logging- Returns:
- Flag whether only successful samples should be logged
-
isSampleWanted
public boolean isSampleWanted(boolean success)
Decides whether or not to a sample is wanted based on:- errorOnly
- successOnly
- sample success
- Parameters:
success- is sample successful- Returns:
- whether to log/display the sample
-
isSampleWanted
public static boolean isSampleWanted(boolean success, boolean errorOnly, boolean successOnly)Decides whether or not to a sample is wanted based on:- errorOnly
- successOnly
- sample success
- Parameters:
success- status of sampleerrorOnly- if errors only wantedsuccessOnly- if success only wanted- Returns:
- whether to log/display the sample
-
setFilename
public void setFilename(String f)
Sets the filename attribute of the ResultCollector object.- Parameters:
f- the new filename value
-
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(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()
-
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()
-
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()
-
loadExistingFile
public void loadExistingFile()
Loads an existing sample data (JTL) file. This can be one of:- XStream format
- Avalon format
- CSV format
-
sampleStarted
public void sampleStarted(SampleEvent e)
Description copied from interface:SampleListenerA sample has started.- Specified by:
sampleStartedin interfaceSampleListener- Parameters:
e- theSampleEventthat has started
-
sampleStopped
public void sampleStopped(SampleEvent e)
Description copied from interface:SampleListenerA sample has stopped.- Specified by:
sampleStoppedin interfaceSampleListener- Parameters:
e- theSampleEventthat has stopped
-
sampleOccurred
public void sampleOccurred(SampleEvent event)
When a test result is received, display it and save it.- Specified by:
sampleOccurredin interfaceSampleListener- Parameters:
event- the sample event that was received
-
sendToVisualizer
protected final void sendToVisualizer(SampleResult r)
-
recordStats
public void recordStats(TestElement e) throws IOException
recordStats is used to save statistics generated by visualizers- Parameters:
e- The data to save- Throws:
IOException- when data writing fails
-
flushFile
protected void flushFile()
Flush PrintWriter to synchronize file contents
-
getSaveConfig
public SampleSaveConfiguration getSaveConfig()
- Returns:
- Returns the saveConfig.
-
setSaveConfig
public void setSaveConfig(SampleSaveConfiguration saveConfig)
- Parameters:
saveConfig- The saveConfig to set.
-
-