org.apache.jmeter.testelement

## Interface TestElement

- All Superinterfaces:
    Cloneable
  All Known Subinterfaces:
    Controller, Sampler
  All Known Implementing Classes:
    AbstractBoltTestElement, AbstractJDBCProcessor, AbstractJDBCTestElement, AbstractListenerElement, AbstractSampler, AbstractScopedAssertion, AbstractScopedTestElement, AbstractTestElement, AbstractThreadGroup, AccessLogSampler, AjpSampler, AnchorModifier, Argument, Arguments, AuthManager, Authorization, BackendListener, BaseJMSSampler, BeanShellAssertion, BeanShellListener, BeanShellPostProcessor, BeanShellPreProcessor, BeanShellSampler, BeanShellTestElement, BeanShellTimer, BoltConnectionElement, BoltSampler, BoundaryExtractor, BSFAssertion, BSFListener, BSFPostProcessor, BSFPreProcessor, BSFSampler, BSFTestElement, BSFTimer, CacheManager, CompareAssertion, ConfigTestElement, ConstantThroughputTimer, ConstantTimer, Cookie, CookieManager, CounterConfig, CriticalSectionController, CSVDataSet, DataSourceElement, DebugPostProcessor, DebugSampler, DNSCacheManager, DurationAssertion, ForeachController, FTPSampler, GaussianRandomTimer, GenericController, Header, HeaderManager, HTMLAssertion, HtmlExtractor, HTTPArgument, HTTPFileArg, HTTPFileArgs, HttpMirrorControl, HTTPSampler, HTTPSamplerBase, HTTPSamplerProxy, IfController, IncludeController, InterleaveControl, JavaConfig, JavaSampler, JDBCPostProcessor, JDBCPreProcessor, JDBCSampler, JMESPathAssertion, JMESPathExtractor, JMSProperties, JMSProperty, JMSSampler, JSONPathAssertion, JSONPostProcessor, JSR223Assertion, JSR223Listener, JSR223PostProcessor, JSR223PreProcessor, JSR223Sampler, JSR223TestElement, JSR223Timer, JUnitSampler, KeystoreConfig, LDAPArgument, LDAPArguments, LDAPExtSampler, LDAPSampler, LoginConfig, LoopController, MailerModel, MailerResultCollector, MailReaderSampler, MD5HexAssertion, ModuleController, MongoScriptSampler, MongoSourceElement, OnceOnlyController, OnErrorTestElement, PoissonRandomTimer, PostThreadGroup, PreciseThroughputTimer, ProxyControl, PublisherSampler, RandomController, RandomOrderController, RandomTimer, RandomVariableConfig, RecordingController, RegexExtractor, RegExUserParameters, RemoteListenerWrapper, RemoteSampleListenerWrapper, RemoteTestListenerWrapper, RemoteThreadsListenerWrapper, ResponseAssertion, ResultAction, ResultCollector, ResultSaver, RunTime, SampleTimeout, ScriptingTestElement, SetupThreadGroup, SizeAssertion, SMIMEAssertionTestElement, SmtpSampler, StaticHost, SubscriberSampler, SubstitutionElement, Summariser, SwitchController, SyncTimer, SystemSampler, TCPSampler, TestAction, TestFragmentController, TestPlan, ThreadGroup, ThroughputController, TransactionController, TransactionSampler, UniformRandomTimer, URLRewritingModifier, UserParameters, WhileController, WorkBench, XMLAssertion, XMLSchemaAssertion, XPath2Assertion, XPath2Extractor, XPathAssertion, XPathExtractor

      public interface TestElement
      extends Cloneable

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `COMMENTS`
    `static String` | `ENABLED`
    `static String` | `GUI_CLASS`
    `static String` | `NAME`
    `static String` | `TEST_CLASS`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addTestElement(TestElement child)`
    `boolean` | `canRemove()` Called by Remove to determine if it is safe to remove the element.
    `void` | `clear()` Clear the TestElement of all data.
    `void` | `clearTestElementChildren()` This method should clear any test element properties that are merged by `addTestElement(TestElement)`.
    `Object` | `clone()`
    `String` | `getComment()` Returns comment associated with this element.
    `String` | `getName()` Get the name of this test element
    `JMeterProperty` | `getProperty(String propName)` Given the name of the property, returns the appropriate property from JMeter.
    `boolean` | `getPropertyAsBoolean(String key)` Return a property as a boolean value.
    `boolean` | `getPropertyAsBoolean(String key, boolean defaultValue)` Return a property as a boolean value or a default value if no property could be found.
    `double` | `getPropertyAsDouble(String key)` Return a property as a double value.
    `float` | `getPropertyAsFloat(String key)` Return a property as a float value.
    `int` | `getPropertyAsInt(String key)` Return a property as an int value.
    `int` | `getPropertyAsInt(String key, int defaultValue)` Return a property as an int value or a default value if no property could be found.
    `long` | `getPropertyAsLong(String key)` Return a property as a long value.
    `long` | `getPropertyAsLong(String key, long defaultValue)` Return a property as a long value or a default value if no property could be found.
    `String` | `getPropertyAsString(String key)` Return a property as a string value.
    `String` | `getPropertyAsString(String key, String defaultValue)` Return a property as an string value or a default value if no property could be found.
    `JMeterContext` | `getThreadContext()`
    `String` | `getThreadName()` Returns the threadName.
    `boolean` | `isEnabled()` Check if ENABLED property is present and true ; defaults to true
    `boolean` | `isRunningVersion()` Returns true or false whether the element is the running version.
    `boolean` | `isTemporary(JMeterProperty property)` Test whether a given property is only a temporary resident of the TestElement
    `PropertyIterator` | `propertyIterator()` Get a Property Iterator for the TestElements properties.
    `void` | `recoverRunningVersion()` Tells the test element to return to the state it was in when setRunningVersion(true) was called.
    `default void` | `removed()` Called when the test element is removed from the test plan.
    `void` | `removeProperty(String key)` Remove property stored under the `key`
    `void` | `setComment(String comment)` Associates a comment with this element
    `void` | `setEnabled(boolean enabled)` Set the enabled status of the test element
    `void` | `setName(String name)` Associates a name with this element.
    `void` | `setProperty(JMeterProperty property)` Sets and overwrites a property in the TestElement.
    `void` | `setProperty(String key, boolean value)`
    `void` | `setProperty(String key, boolean value, boolean dflt)`
    `void` | `setProperty(String key, int value)`
    `void` | `setProperty(String key, int value, int dflt)`
    `void` | `setProperty(String name, long value)`
    `void` | `setProperty(String name, long value, long dflt)`
    `void` | `setProperty(String key, String value)`
    `void` | `setProperty(String key, String value, String dflt)`
    `void` | `setRunningVersion(boolean run)` Make the test element the running version, or make it no longer the running version.
    `void` | `setTemporary(JMeterProperty property)` Indicate that the given property should be only a temporary property in the TestElement
    `void` | `setThreadContext(JMeterContext threadContext)`
    `void` | `setThreadName(String threadName)` Configures thread name.
    `void` | `traverse(TestElementTraverser traverser)` Convenient way to traverse a test element.

- - ### Field Detail

    - #### NAME

          static final String NAME

      See Also:
        Constant Field Values

    - #### GUI_CLASS

          static final String GUI_CLASS

      See Also:
        Constant Field Values

    - #### ENABLED

          static final String ENABLED

      See Also:
        Constant Field Values

    - #### TEST_CLASS

          static final String TEST_CLASS

      See Also:
        Constant Field Values

    - #### COMMENTS

          static final String COMMENTS

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### addTestElement

          void addTestElement(TestElement child)

    - #### clearTestElementChildren

          void clearTestElementChildren()

      This method should clear any test element properties that are merged by `addTestElement(TestElement)`.

    - #### setProperty

          void setProperty(String key,
                           String value)

    - #### setProperty

          void setProperty(String key,
                           String value,
                           String dflt)

    - #### setProperty

          void setProperty(String key,
                           boolean value)

    - #### setProperty

          void setProperty(String key,
                           boolean value,
                           boolean dflt)

    - #### setProperty

          void setProperty(String key,
                           int value)

    - #### setProperty

          void setProperty(String key,
                           int value,
                           int dflt)

    - #### setProperty

          void setProperty(String name,
                           long value)

    - #### setProperty

          void setProperty(String name,
                           long value,
                           long dflt)

    - #### isEnabled

          boolean isEnabled()

      Check if ENABLED property is present and true ; defaults to true
      Returns:
        true if element is enabled

    - #### setEnabled

          void setEnabled(boolean enabled)

      Set the enabled status of the test element
      Parameters:
        `enabled` - the status to set

    - #### isRunningVersion

          boolean isRunningVersion()

      Returns true or false whether the element is the running version.
      Returns:
        `true` if the element is the running version

    - #### isTemporary

          boolean isTemporary(JMeterProperty property)

      Test whether a given property is only a temporary resident of the TestElement
      Parameters:
        `property` - the property to be tested
      Returns:
        `true` if property is temporary

    - #### setTemporary

          void setTemporary(JMeterProperty property)

      Indicate that the given property should be only a temporary property in the TestElement
      Parameters:
        `property` - void

    - #### getPropertyAsBoolean

          boolean getPropertyAsBoolean(String key)

      Return a property as a boolean value.
      Parameters:
        `key` - the name of the property to get
      Returns:
        the value of the property

    - #### getPropertyAsBoolean

          boolean getPropertyAsBoolean(String key,
                                       boolean defaultValue)

      Return a property as a boolean value or a default value if no property could be found.
      Parameters:
        `key` - the name of the property to get
        `defaultValue` - the default value to use
      Returns:
        the value of the property, or `defaultValue` if no property could be found

    - #### getPropertyAsLong

          long getPropertyAsLong(String key)

      Return a property as a long value.
      Parameters:
        `key` - the name of the property to get
      Returns:
        the value of the property

    - #### getPropertyAsLong

          long getPropertyAsLong(String key,
                                 long defaultValue)

      Return a property as a long value or a default value if no property could be found.
      Parameters:
        `key` - the name of the property to get
        `defaultValue` - the default value to use
      Returns:
        the value of the property, or `defaultValue` if no property could be found

    - #### getPropertyAsInt

          int getPropertyAsInt(String key)

      Return a property as an int value.
      Parameters:
        `key` - the name of the property to get
      Returns:
        the value of the property

    - #### getPropertyAsInt

          int getPropertyAsInt(String key,
                               int defaultValue)

      Return a property as an int value or a default value if no property could be found.
      Parameters:
        `key` - the name of the property to get
        `defaultValue` - the default value to use
      Returns:
        the value of the property, or `defaultValue` if no property could be found

    - #### getPropertyAsFloat

          float getPropertyAsFloat(String key)

      Return a property as a float value.
      Parameters:
        `key` - the name of the property to get
      Returns:
        the value of the property

    - #### getPropertyAsDouble

          double getPropertyAsDouble(String key)

      Return a property as a double value.
      Parameters:
        `key` - the name of the property to get
      Returns:
        the value of the property

    - #### setRunningVersion

          void setRunningVersion(boolean run)

      Make the test element the running version, or make it no longer the running version. This tells the test element that it's current state must be retrievable by a call to recoverRunningVersion(). It is kind of like making the TestElement Read- Only, but not as strict. Changes can be made and the element can be modified, but the state of the element at the time of the call to setRunningVersion() must be recoverable.
      Parameters:
        `run` - flag whether this element should be the running version

    - #### recoverRunningVersion

          void recoverRunningVersion()

      Tells the test element to return to the state it was in when setRunningVersion(true) was called.

    - #### clear

          void clear()

      Clear the TestElement of all data.

    - #### getPropertyAsString

          String getPropertyAsString(String key)

      Return a property as a string value.
      Parameters:
        `key` - the name of the property to get
      Returns:
        the value of the property

    - #### getPropertyAsString

          String getPropertyAsString(String key,
                                     String defaultValue)

      Return a property as an string value or a default value if no property could be found.
      Parameters:
        `key` - the name of the property to get
        `defaultValue` - the default value to use
      Returns:
        the value of the property, or `defaultValue` if no property could be found

    - #### setProperty

          void setProperty(JMeterProperty property)

      Sets and overwrites a property in the TestElement. This call will be ignored if the TestElement is currently a "running version".
      Parameters:
        `property` - the property to be set

    - #### getProperty

          JMeterProperty getProperty(String propName)

      Given the name of the property, returns the appropriate property from JMeter. If it is null, a NullProperty object will be returned.
      Parameters:
        `propName` - the name of the property to get
      Returns:
        `JMeterProperty` stored under the name, or `NullProperty` if no property can be found

    - #### propertyIterator

          PropertyIterator propertyIterator()

      Get a Property Iterator for the TestElements properties.
      Returns:
        PropertyIterator

    - #### removeProperty

          void removeProperty(String key)

      Remove property stored under the `key`
      Parameters:
        `key` - name of the property to be removed

    - #### clone

          Object clone()

    - #### traverse

          void traverse(TestElementTraverser traverser)

      Convenient way to traverse a test element.
      Parameters:
        `traverser` - The traverser that is notified of the contained elements

    - #### getThreadContext

          JMeterContext getThreadContext()

      Returns:
        Returns the threadContext.

    - #### setThreadContext

          void setThreadContext(JMeterContext threadContext)

      Parameters:
        `threadContext` - The threadContext to set.

    - #### getThreadName

          String getThreadName()

      Returns the threadName.
      Returns:
        the threadName.

    - #### setThreadName

          void setThreadName(String threadName)

      Configures thread name.
      Parameters:
        `threadName` - the threadName to set.

    - #### canRemove

          boolean canRemove()

      Called by Remove to determine if it is safe to remove the element. The element can either clean itself up, and return true, or the element can return false.
      Returns:
        true if safe to remove the element

    - #### getName

          String getName()

      Get the name of this test element
      Returns:
        name of this element

    - #### setName

          void setName(String name)

      Associates a name with this element.
      Parameters:
        `name` - to be associated

    - #### getComment

          String getComment()

      Returns comment associated with this element.
      Returns:
        comment associated with this element

    - #### setComment

          void setComment(String comment)

      Associates a comment with this element
      Parameters:
        `comment` - to be associated

    - #### removed

          default void removed()

      Called when the test element is removed from the test plan. Must not throw any exception

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