Variable Management
The
Variable Management
module in AngusTester enables centralized management and dynamic invocation of test data, supporting multiple data extraction methods to enhance testing flexibility and data reuse.
I. Variable Creation Operations
1. Add Static Variable
Description: Define fixed values or Mock data functions
Steps:
Data → Variables
Click "Add Static Variable"- Configure key parameters:
- Naming format:
UPPERCASE_ENGLISH_DESCRIPTION
(e.g., API_TOKEN) - Value type:
- Constant (direct input)
- Mock function (e.g.,
${randomPhone}
)
- Enable "Password Type" for sensitive data encryption
- Naming format:
- Test output in
Preview
tab
⚠️ Mock functions update per iteration
2. Add File Extraction Variable
Description: Extract data dynamically from external files
Steps:
- Click
Add Static Variable▼
and select "File Extraction Variable" - Configure extraction rules:
- File path (supports CSV/TXT)
- Start position (row + column index)
- Data processing (regex/JSONPath)
- Verify data accuracy in
Preview
❗ Manual refresh required for file changes
3. Add HTTP Extraction Variable
Description: Obtain dynamic values via API
Steps:
- Click
Add Static Variable▼
and select "HTTP Extraction Variable" - Configure request parameters:
- URL (complete API endpoint)
- Method (GET/POST)
- Extractor (JSONPath/XPath)
- Test API response in
Preview
⚠️ Requires network access and functional API
4. Add JDBC Extraction Variable
Description: Generate variables from database queries
Steps:
- Click
Add Static Variable▼
and select "JDBC Extraction Variable" - Configure database connection:
- Data source (pre-configured)
- SQL query (SELECT fields)
- Value rule (first row/column or row/column index)
❗ Encrypt sensitive fields
II. Variable Maintenance
1. Batch Import Variables
Description: Configure variables via YAML files
Steps:
- In
Variables
, click "Import" - Upload YAML file
- System automatically:
- Validates format
- Executes overwrite/skip policies
⚠️ File must comply with Variable Field Specifications
2. Clone Variable
Description: Quickly create similar variables
Steps:
- In
Variable List
, click "Clone" - System automatically:
- Creates a copy (appends "-Copy.xxx" to name)
- Preserves all configurations
Requires manual adjustment of key parameters
3. Edit Variable
Description: Modify existing configurations
Steps:
- In
Variable List
, click "Edit" - Editable fields:
- Name/description
- Value or extraction rules
- Password type toggle
Active variable changes require republishing
4. Batch Delete
Description: Clean up obsolete variables
Steps:
- Select target variables
- Click "Batch Delete"
- Confirm operation
❗ Variables referenced by APIs must be unlinked first
III. Variable Integration
1. API Parameterization
Description: Dynamically invoke variables in API requests
Steps:
- In
API → Service Management
, open target API - Click "Reference Variable" in
Parameterization
tab - Enter
{variable_name}
as parameter value
⚠️ Unlinked variables show red warnings
2. Scenario Parameterization
Description: Batch variable usage in test scenarios
Steps:
- Open target scenario in
Scenario Management
- Add references in
Execution Config → Variables
- Enter
{variable_name}
in step parameters
❗ Cross-API variables must share consistent naming
IV. Data Export
1. Export Single Variable
Description: Backup or share configurations
Steps:
- In
Variable Details
, click "Export" - Select format:
- YAML (complete config)
- JSON (API integration format)
2. Export All Variables
Description: Full backup of variable system
Steps:
- In
Variable Management
, click "Export" - Auto-download ZIP archive containing:
- All variable YAML files
- Import documentation
Variable Field Specifications
Parameter | Field Name | Type | Required | Length | Description |
---|---|---|---|---|---|
ID | id | bigint | Cond. | / | Unique identifier; Auto-generated; Mandatory for modifications |
Project ID | projectId | long | Yes | / | Parent project identifier |
Variable Name | name | string | Yes | ≤100 | Unique variable name |
Description | description | string | No | ≤800 | Functional description |
Variable Value | value | string | Cond. | ≤4096 | Variable value; Required for non-extraction types |
Password Type | passwordValue | boolean | Yes | / | Whether value is encrypted |
Extraction Rules | extraction | object | No | / | Data extraction configuration |
Extracted Status | extracted | boolean | Read-only | / | Whether data extraction is complete |
Data Source | dataSource | enum | Read-only | / | Source Types: Static/Value Extract/File Extract/HTTP Extract/JDBC Extract |
Tenant ID | tenantId | long | Read-only | / | Tenant identifier |
Creator ID | createdBy | long | Read-only | / | Creator's user ID |
Creator Name | createdByName | string | Read-only | / | Creator's name |
Creation Time | createdDate | datetime | Read-only | / | Creation timestamp |
Last Modifier ID | lastModifiedBy | long | Read-only | / | Last modifier's user ID |
Last Modifier Name | lastModifiedByName | string | Read-only | / | Last modifier's name |
Last Modified Time | lastModifiedDate | datetime | Read-only | / | Last modification timestamp |
Extraction Configuration (extraction)
Refer to testing specifications: Parameterization → Extraction Configuration
Data Source (dataSource)
Enum Value | Description |
---|---|
STATIC_VALUE | Static Value |
EXTRACT_VALUE | Value Extraction |
EXTRACT_FILE | File Extraction |
EXTRACT_HTTP | HTTP Extraction |
EXTRACT_HTTP_SAMPLING | HTTP Sampling |
EXTRACT_JDBC | JDBC Extraction |