Updated on 2024-04-08 GMT+08:00

Basic Concepts

Execution Node

An execution node is the target machine that a pressure test will be performed on and can provide performance data during testing.

Debugging Node

A debugging node is used to debug execution nodes.

Test Resources

Test resources refer to private resource groups.

CodeArts PerfTest Resources

CodeArts PerfTest resources refer to items such as test projects, directories, cases, and tasks.

Test Project

Test projects are classified into PerfTest projects and JMeter projects. PerfTest projects provide project management capabilities, allowing you to share and reuse the contents of transactions, pressure test tasks, and test reports within a test project, and create different test projects for different test programs. JMeter projects are used to import JMeter scripts to CodeArts PerfTest.

Transaction

A transaction is a user-defined operation model that consists of HTTP/HTTPS/TCP/UDP/WebSocket packet, think time, response extraction, checkpoint, and HLS/RTMP/HTTP-FLV/MQTT packet.

Packet

Packets are data blocks transmitted between applications such as HTTP. These data blocks start with text metadata that describes the packet content and meaning. The text metadata is followed by optional data. Packets are transmitted among clients, servers, and agents.

Think Time

To better simulate user behavior, insert a waiting time between different operations. For example, when a user receives data from the server, the user may wait several seconds before viewing data and providing responses. This period of time is called think time.

Response Extraction

If a transaction contains multiple packets, the output of the previous packet, which is extracted by a regular expression or JSON, is used as the input of the next packet.

Checkpoint

Checkpoints are where you define the verification information to determine whether the contents returned by the server are correct.

Test Task

A test task initiates a performance test based on a defined test model.

Test Report

When a test task is complete, a test report will be generated to present the test results.

Number of Concurrent Users

It refers to the number of users performing operations on a system at the same time. In CodeArts PerfTest, it is the number of virtual users you define when you configure a test phase.

RPS

Requests per second (RPS) indicates the number of requests per second. Average RPS = Total number of requests in a statistical period/Statistical period.

VUM

Virtual user minute (VUM) indicates the number of resources consumed by a task. The calculation formula is VUM = VU x M, in which VU indicates the number of concurrent virtual users and M indicates the pressure test duration, in minutes.

Bandwidth

Bandwidth records the real-time bandwidth usage during the running of the pressure test task. Uplink bandwidth refers to the speed at which the CodeArts PerfTest execution node sends out data. Downlink bandwidth refers to the speed at which the CodeArts PerfTest execution node receives data.

Response Time

Response time indicates the duration from the time when a client sends a request to the time when the client receives a response from the server.

Response Timeout

If the corresponding TCP connection does not return the response data within the set response timeout (5 seconds by default), the transaction request is considered a response timeout. Possible causes are: the tested server is busy, in crashes, or the network bandwidth is fully occupied.

Verification Failure

The response packet content and response code returned from the server do not meet the expectation (the default expected response code of HTTP/HTTPS is 200), such as code 404 or 502. A possible cause is that the tested service cannot be processed normally in scenarios with a large number of concurrent users. For example, a database bottleneck occurs in the distributed system or the backend application returns an error.

Resolution Failure

All response packets are received, but some packets are lost. As a result, the entire transaction response is incomplete. In this case, network packet loss may be the cause.