Skip to content

Controller Elements

Controller elements provide the capability to control execution flow, simulate real user behavior, construct concurrent scenarios, and manage traffic in test scripts.

Common Parameters

FieldTypeRequiredLength LimitDescription
targetenumYes-Controller type identifier
namestringYes≤400 charsUnique element identifier
descriptionstringNo≤800 charsDetailed description
enabledbooleanYes-Whether enabled (default: true)
beforeNamestringNo≤400 charsPreceding element position control
transactionNamestringConditional≤400 charsAssociated transaction name (required for elements within transactions)

Transaction Control

Start Transaction (TRANS_START)

Function: Marks the beginning of a business transaction

Special FieldTypeRequiredDescription
targetenumYesFixed value TRANS_START

Configuration Example:

yaml
- target: TRANS_START  
  name: PaymentProcess  
  description: Payment transaction start  
  enabled: true  
  beforeName: LoginStep

End Transaction (TRANS_END)

Function: Marks the end of a business transaction

Special FieldTypeRequiredDescription
targetenumYesFixed value TRANS_END

Configuration Example:

yaml
- target: TRANS_END  
  name: EndPayment  
  transactionName: PaymentProcess  
  enabled: true  
  beforeName: ConfirmStep

Wait Time (WAITING_TIME)

Function: Simulates user think time

Special FieldTypeRequiredRangeDescription
targetenumYes-Fixed value WAITING_TIME
minWaitTimeInMsintegerNo1-7,200,000msMinimum wait time (ms)
maxWaitTimeInMsintegerYes1-7,200,000msMaximum wait time (ms)

Usage Rules:

  • Only max specified: Fixed wait time
  • Both min+max specified: Random wait interval

Configuration Example:

yaml
- target: WAITING_TIME  
  name: FormFillDelay  
  minWaitTimeInMs: 2000  
  maxWaitTimeInMs: 5000  
  transactionName: OrderProcess  
  beforeName: AddToCart

Rendezvous Point (RENDEZVOUS)

Function: Simulates sudden high-concurrency scenarios

Special FieldTypeRequiredRangeDescription
targetenumYes-Fixed value RENDEZVOUS
threadsintegerYes1-10000Required number of users to trigger
timeoutInMsintegerNo1-7,200,000msMaximum wait time (ms)

Notes:
⚠️ Thread count must ≤ total threads in test plan

Configuration Example:

yaml
- target: RENDEZVOUS  
  name: FlashSaleSync  
  threads: 500  
  timeoutInMs: 300  
  transactionName: PurchaseFlow  
  beforeName: CheckInventory

Throughput Limiter (THROUGHPUT)

Function: Precise control of request rate

Special FieldTypeRequiredRangeDescription
targetenumYes-Fixed value THROUGHPUT
permitsPerSecondintegerYes1-20,000,000Maximum requests per second
timeoutInMsintegerNo1-7,200,000msToken acquisition timeout (ms)

Configuration Example:

yaml
- target: THROUGHPUT  
  name: APIRateLimit  
  permitsPerSecond: 800  
  timeoutInMs: 100  
  transactionName: APICallSequence  
  beforeName: GetAuthToken

Released under the GPL-3.0 License.