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
Field | Type | Required | Length Limit | Description |
---|---|---|---|---|
target | enum | Yes | - | Controller type identifier |
name | string | Yes | ≤400 chars | Unique element identifier |
description | string | No | ≤800 chars | Detailed description |
enabled | boolean | Yes | - | Whether enabled (default: true) |
beforeName | string | No | ≤400 chars | Preceding element position control |
transactionName | string | Conditional | ≤400 chars | Associated transaction name (required for elements within transactions) |
Transaction Control
Start Transaction (TRANS_START)
Function: Marks the beginning of a business transaction
Special Field | Type | Required | Description |
---|---|---|---|
target | enum | Yes | Fixed 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 Field | Type | Required | Description |
---|---|---|---|
target | enum | Yes | Fixed 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 Field | Type | Required | Range | Description |
---|---|---|---|---|
target | enum | Yes | - | Fixed value WAITING_TIME |
minWaitTimeInMs | integer | No | 1-7,200,000ms | Minimum wait time (ms) |
maxWaitTimeInMs | integer | Yes | 1-7,200,000ms | Maximum 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 Field | Type | Required | Range | Description |
---|---|---|---|---|
target | enum | Yes | - | Fixed value RENDEZVOUS |
threads | integer | Yes | 1-10000 | Required number of users to trigger |
timeoutInMs | integer | No | 1-7,200,000ms | Maximum 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 Field | Type | Required | Range | Description |
---|---|---|---|---|
target | enum | Yes | - | Fixed value THROUGHPUT |
permitsPerSecond | integer | Yes | 1-20,000,000 | Maximum requests per second |
timeoutInMs | integer | No | 1-7,200,000ms | Token acquisition timeout (ms) |
Configuration Example:
yaml
- target: THROUGHPUT
name: APIRateLimit
permitsPerSecond: 800
timeoutInMs: 100
transactionName: APICallSequence
beforeName: GetAuthToken