Apidog Docs
πŸ‡ΊπŸ‡Έ English
  • πŸ‡ΊπŸ‡Έ English
  • πŸ‡―πŸ‡΅ ζ—₯本θͺž
HomeLearning CenterSupport CenterAPI References
HomeLearning CenterSupport CenterAPI References
Discord Community
Slack Community
X / Twitter
πŸ‡ΊπŸ‡Έ English
  • πŸ‡ΊπŸ‡Έ English
  • πŸ‡―πŸ‡΅ ζ—₯本θͺž
  1. Test APIs
  • Apidog Learning Center
  • Get started
    • Introduce Apidog
    • Basic concepts in Apidog
    • Navigating Apidog
    • Quick Start
      • Overview
      • Specify a new endpoint
      • Make a request to the endpoint
      • Add an assertion
      • Create a test scenario
      • Share your API documentation
      • Explore more
      • Send a request and save as an endpoint
    • Migration
      • Overview
      • Manual import
      • Scheduled import
      • Import options
      • Export data
      • Import from...
        • Import from Postman
        • Import OpenAPI (Swagger) spec
        • Import cURL
        • Import Markdowns
        • Import from Insomnia
        • Import from apiDoc
        • Import .har file
        • Import WSDL
  • Design APIs
    • Overview
    • Create a new API project
    • Endpoint basics
    • Components
    • Common fields
    • Global parameters
    • Endpoint change history
    • Batch endpoint management
    • Configure multiple request body examples
    • Schemas
      • Overview
      • Create a new schema
      • Build a schema
      • Generate Schemas from JSON etc.
    • Security schemes
      • Overview
      • Create a security scheme
      • Use the security scheme
      • Security scheme in online documentation
    • Advanced features
      • Custom endpoint fields
      • Import endpoints as test steps
      • Endpoint status
      • Appearance of parameter lists
      • Endpoint unique idenfication
  • Develop and Debug APIs
    • Overview
    • Generate requests
    • Send requests
    • Endpoint cases
    • Dynamic values
    • Validate responses
    • Design-first Mode & Request-first Mode
    • Generate code
    • Environments & variables
      • Overview
      • Using variables
      • Environments & services
    • Vault secrets
      • Overview
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • Pre/Post processors
      • Overview
      • Assertion
      • Extract variable
      • Wait
      • Database operations
        • Overview
        • MySQL
        • MongoDB
        • Redis
        • Oracle Client
      • Using scripts
        • Overview
        • Pre processor scripts
        • Post processor scripts
        • Public scripts
        • Postman scripts reference
        • Calling other programming languages
        • Using JS libraries
        • Visualizing responses
        • Script examples
          • Assertion scripts
          • Using variables in scripts
          • Using scripts to modify request messages
          • Other examples
    • Dynamic values Modules
  • Mock API data
    • Overview
    • Smart mock
    • Custom mock
    • Mock priority sequence
    • Mock scripts
    • Cloud mock
    • Self-hosted runner mock
    • Mock language (Locales)
  • Automated tests
    • Overview
    • Test reports
    • Test scenarios
      • Create a test scenario
      • Pass data between requests
      • Flow control conditions
      • Import endpoints/endpoint cases from other projects
      • Sync data from endpoints/endpoint cases
      • Export test scenarios
    • Run test scenarios
      • Run a test scenario
      • Data-driven testing
      • Run test scenarios in batch
      • Scheduled tasks
      • Manage the runtime environment of APIs from other projects
    • Test APIs
      • Integration testing
      • Performance testing
      • End-to-end testing
      • Regression testing
    • Apidog CLI
      • Overview
      • Installing and running Apidog CLI
      • Apidog CLI Options
    • CI/CD
      • Overview
      • Integrate with Jenkins
      • Integration with Gitlab
  • Publish API Docs
    • Overview
    • API Technologies Supported
    • Quick share
    • View the API documentation
    • Publish docs sites
    • Custom layouts
    • Custom domain
    • SEO settings
    • LLM-friendly Features
    • Advanced Settings
      • Documentation Search
      • CORS Proxy
      • Integrating Google Analytics with Doc Sites
      • Folder tree settings
      • Visibility settings
      • Embedding values in document URLs
    • API Versions
      • Create API versions
      • Publish API versions
      • Share endpoints with API versions
      • Overview
  • Send requests
    • Overview
    • gRPC
    • Use request proxy agents for debugging
    • SOAP/WebService
    • GraphQL
    • WebSocket
    • Socket.IO
    • SSE debugging
    • Create requests
      • Request History
      • Request basics
      • Parameters and body
      • Request headers
      • Request settings
      • HTTP/2
    • Authentication and authorization
      • Overview
      • CA and client certificates
      • Authorization types supported by Apidog
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Hawk Authentication
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • Response and cookies
      • Overview
      • API response in Apidog
      • Create and send cookies
      • Debug requests
      • Save the request as an endpoint
  • Branches
    • Overview
    • Create a new sprint branch
    • Test APIs in a branch
    • Design API in a branch
    • Merge sprint branches
    • Manage sprint branches
  • Apidog MCP Server
    • Overview
    • Conntect API Specification within Apidog Project to AI via Apidog MCP Server
    • Conntect Online API Documentation Published by Apidog to AI via Apidog MCP Server
    • Conntect OpenAPI Files to AI via Apidog MCP Server
  • Best practices
    • How to handle API signatures
    • How to access OAuth 2.0 protected APIs
    • Apidog collaboration workflow
    • Managing authentication state in Apidog
  • Administration
    • Onboarding Checklist
      • Basic Concepts
      • Onboarding Guide
    • Managing Teams
      • Managing Teams
      • Managing Team Members
      • Member Roles & Permission Settings
      • Team Activities
      • Team Resources
        • General Runner
        • Team Variables
        • Request Proxy Agent
      • Real-time Collaborations
        • Team Collaboration
    • Managing Projects
      • Managing Projects
      • Managing Project Members
      • Notification Settings
      • Project Resources
        • Database Connection
    • Managing Organizations
      • Single Sign-On (SSO)
        • SSO Overview
        • Configure Microsoft Entra ID
        • Configure Okta
        • Configure SSO for an Organization
        • Managing user accounts
        • Mapping Groups to Teams
      • SCIM Provisioning
        • Intro to SCIM Provisioning
        • Microsoft Entra ID
        • Okta
      • Organization Resources
        • Self-hosted Runner
  • Billing
    • Overview
    • Credits
    • Unable to use credit cards?
    • Managing subscriptions
    • Upgrade plan
  • Data & Security
    • Where is Apidog's data stored, and how is data security ensured?
    • How is user data stored? Will this data be public? Or will it be private? Will all data be stored in the cloud?
    • When sending requests, do they go through the Apidog server? Is data security ensured?
  • Add-ons
    • API Hub
    • Apidog Intellij IDEA plugin
    • Browser Extension
      • Chrome
      • Microsoft Edge
    • Request Proxy
      • Request proxy in Apidog web
      • Request proxy in shared docs
      • Request proxy in Apidog client
  • Account & preferences
    • Account settings
    • Generate OpenAPI access token
    • Language settings
    • Hot keys
    • Network proxy configuration
    • Data backup
    • Updating Apidog
    • Deleting account
    • Experimental Features
  • References
    • API-Design First Approach
    • Apidog OpenAPI/Swagger Specificaiton Extensions
    • JSONPath
    • XPath
    • Regular Expressions
    • JSON Schema
    • CSV File Format
    • Install Java Environment
    • Runner deployment environment
    • Apidog flavored Markdown
  • Apidog Europe
    • Apidog Europe
  • Support Center
  1. Test APIs

Performance testing

The performance testing feature is currently in Beta. If you met any problems, please join the Technical Support Discord and provide your feedback.
Performance testing involves sending large-scale service requests to an API to identify performance bottlenecks, assess stability, expose potential risks under pressure, and ensure the API can operate reliably and respond to requests under high load.
Performance Testing

Set configuration items#

Before running a performance test, you need to specify the runtime environment and optionally test data for the test scenario, as well as configure the performance test settings.

Runtime environment#

The runtime environment in the test scenario inherits from the current project's environments.

Test data#

After associating test data, virtual users will use the variables defined in the test data to execute requests. You can choose to run in either "Random Match" or "Sequential Match" mode:
Random Match: Each virtual user randomly selects a row of data from the test data to run. In this mode, all virtual users will select one test data row and execute the performance test.
Sequential Match: Each virtual user selects a row of data from the test data in order. Note: If the number of virtual users exceeds the number of test data rows, the excess virtual users will not start the performance test.
Learn more about test data.

Virtual users (Concurrent users)#

Supports up to 100 virtual users. Within the specified test time, it simulates online users running the test scenario in parallel repeatedly.

Test duration#

The total runtime of the performance test. During this period, each virtual user will continuously loop through all APIs in the test scenario.

Ramp-up duration#

Users typically access a service gradually over time, rather than instantly. To simulate this, set a ramp-up time to gradually increase the number of parallel users over the first X minutes (X is the preset value). If X is set to 0, all virtual users start immediately at the beginning of the test.

Running the performance test#

After triggering the performance test, an intuitive visualization panel will display key metrics such as Total Requests, Avg Throughput, Avg Response Time, Maximum/Minimum Response Time, and Errors for each API.
Performance Test Visualization
Only one performance test can be run for a project at a time. If a higher-priority test needs to be conducted, click the "Terminate" button in the top right corner.

Viewing the test process#

During the performance test, you can hover over the test chart to view the test details for each time period in real-time.
Test Details
Click "Error" to check failed requests for the API and analyze possible causes. You can also filter API requests in the filter bar.
Error Analysis
Due to the large volume of API requests in a performance test, only failed requests are categorized and displayed statistically. Detailed error information and request details for each API are not recorded. If you encounter unexpected errors, run a "Functional Test" first and resolve all issues before running a "Performance Test."

Viewing test reports#

Click the "Test Reports" tab to view historical test reports for the current test scenario.
Test Reports

FAQ#

Q: How can I export performance test reports?
A: Performance testing is currently in the beta stage, and Apidog does not yet support exporting performance test reports. You can only view the results within the Apidog client.
Q: How can I view the actual requests and responses in the performance tests?
A: Apidog's performance testing does not provide the ability to view the actual requests and responses.
This is because performance testing focuses on evaluating the API's behavior under high load, and these APIs should have already 100% passed functional testing. Any issues are likely caused by server performance, not the request/response content.
Therefore, viewing the actual requests and responses would not help troubleshoot performance-related problems. Therefore, the performance testing feature in Apidog does not provide the functionality to view the actual requests and responses.
Modified atΒ 2024-12-18 04:15:25
Previous
Integration testing
Next
End-to-end testing
Built with