Class Phase

java.lang.Object
io.hyperfoil.api.config.Phase
All Implemented Interfaces:
Serializable

public final class Phase extends Object implements Serializable
See Also:
  • Field Details

    • log

      protected static final org.apache.logging.log4j.Logger log
    • trace

      protected static final boolean trace
    • benchmark

      protected final SerializableSupplier<Benchmark> benchmark
    • id

      public final int id
    • iteration

      public final int iteration
    • name

      public final String name
    • scenario

      public final Scenario scenario
    • startTime

      public final long startTime
    • startAfter

      public final Collection<String> startAfter
    • startAfterStrict

      public final Collection<String> startAfterStrict
    • terminateAfterStrict

      public final Collection<String> terminateAfterStrict
    • duration

      public final long duration
    • maxDuration

      public final long maxDuration
    • sharedResources

      public final String sharedResources
    • model

      public final Model model
    • isWarmup

      public final boolean isWarmup
    • customSlas

      public final Map<String,SLA[]> customSlas
    • startWithDelay

      public final StartWithDelay startWithDelay
  • Constructor Details

  • Method Details

    • id

      public int id()
    • name

      public String name()
    • scenario

      public Scenario scenario()
    • startTime

      public long startTime()
      Returns:
      Start time in milliseconds after benchmark start, or negative value if the phase should start immediately after its dependencies (startAfter() and startAfterStrict() are satisfied.
    • startAfter

      public Collection<String> startAfter()
      Returns:
      Phases that must be finished (not starting any further user sessions) in order to start.
    • startAfterStrict

      public Collection<String> startAfterStrict()
      Returns:
      Phases that must be terminated (not running any user sessions) in order to start.
    • terminateAfterStrict

      public Collection<String> terminateAfterStrict()
      Returns:
      Phases that must be terminated in order to terminate this phase.
    • duration

      public long duration()
      Returns:
      Duration in milliseconds over which new user sessions should be started.
    • maxDuration

      public long maxDuration()
      Returns:
      Duration in milliseconds over which user sessions can run. After this time no more requests are allowed and the phase should terminate.
    • benchmark

      public Benchmark benchmark()
    • description

      public String description()
    • startWithDelay

      public StartWithDelay startWithDelay()
      Returns:
      Start with delay object defining the phase to which it is coupled, the current phase will start after a fixed time (delay) from the start of the coupled phase.
    • getDependencies

      public Collection<String> getDependencies()
      Compute and return all phase's dependencies
      Returns:
      list of phase names