Customer Cases
Pricing

How to Utilize PerfDogService for Comprehensive Automated Performance Testing

DISCOVER HOW PERFDogService CAN ENHANCE YOUR AUTOMATED PERFORMANCE TESTING FOR ROBUST AND RELIABLE RESULTS.

PerfDogService is a powerful service component that enables users to conduct non-embedded automated performance testing and cloud testing performance services. This guide provides a detailed overview of PerfDogService's interface, methods, and a reference for building performance automation.

1. Introduction to PerfDogService

PerfDogService allows users to perform secondary development for non-embedded automated performance testing services. This guide aims to help you understand the interface provided by PerfDogService and create performance automation using the automated demo.

2. Getting Started with PerfDogService

2.1 Download and Installation

Download the PerfDogService installation package from https://perfdog.wetest.net/perfdogservice. Once downloaded, unzip the package locally to access the following files:

  • PerfDogService.exe: Service startup file, usually started automatically by the automated script.
  • perfdog.proto: Definition file of the grpc interface and protobuf structure.

2.2 Running the PerfDogService Demo

To quickly run the PerfDogService demo, follow the https://perfdog.wetest.net/article_detail?id=177&issue_id=0&plat_id=2. This tutorial will guide you through the process of setting up and running the demo, allowing you to familiarize yourself with PerfDogService's features and capabilities.

3. PerfDogService Structure and Workflow

PerfDogService is designed to support simultaneous testing of multiple devices, providing a robust and flexible solution for performance testing. The overall structure and workflow of PerfDogService can be better understood by referring to the demo provided in the tutorial mentioned earlier.

4. Special Instructions for Using PerfDogService

PerfDogService has some specific usage instructions that users need to be aware of to ensure optimal performance and avoid potential issues. For detailed instructions on using PerfDogService, visit https://perfdog.wetest.net/article_detail?id=178&issue_id=1&plat_id=2.

5. Method List and Descriptions

PerfDogService provides a comprehensive list of methods for various tasks, such as user login, device monitoring, test data metrics, app testing, and data management. The following is an overview of the key methods and their descriptions:

  • loginWithToken: User login interface
  • startDeviceMonitor: Start the device listener to receive connection and disconnection events from mobile devices to the PC.
  • initDevice: Initialize device
  • getDeviceInfo: Get device information
  • getDeviceStatus: Get device status
  • getAppList: Get device app list
  • enablePerfDataType: Enable test data metrics
  • disablePerfDataType: Disable test data metrics
  • getPerfDataType: Get the list of enabled data types
  • getAvailableDataType: Get the test data indicator types supported by the device
  • setScreenShotInterval: Set screenshot interval
  • startTestApp: Start app testing
  • startTestSysProcess: Start system process test
  • openPerfDataStream: Open the real-time test indicator stream to obtain real-time test indicator data
  • stopTest: End test
  • setLabel: Add tags during the test process
  • updateLabel: Modify label name
  • addNote: Add a tag
  • removeNote: Delete a tag
  • setGlobalDataUploadServer: Set up a third-party data upload service
  • saveData: Save test data
  • getDeviceCacheData: Obtain the cache data of the device and return the data in a streaming manner
  • getDeviceCacheDataPacked: Obtain the cache data of the device, and the indicator data will be packaged and returned
  • getAppRunningProcess: Get the list of processes running on the device
  • getAppWindowMap: Get the Activity and SurfaceView corresponding to each process of the app on the device (Android only)
  • getRunningSysProcess: Get the device system process list
  • updateAppInfo: Refresh app information
  • createTask: Create a task to classify and upload test data
  • archiveCaseToTask: File the uploaded official cloud storage case to task
  • shareCase: Share and upload case data to official cloud storage
  • killServer: Stop PerfDogService
  • getDeviceList: Get a list of online devices
  • setPreferences: Set preferences, such as not installing PerfDog APK to reduce unnecessary pauses and interruptions when running automation
  • getRenderResolutionOfWindowUnderTest: Get the rendering resolution of the test app (Android only)

For a complete list of methods and their descriptions, refer to the PerfDogService documentation.

PD网络测试推广
Latest Posts
1Top Performance Bottleneck Solutions: A Senior Engineer’s Guide Learn how to identify and resolve critical performance bottlenecks in CPU, Memory, I/O, and Databases. A veteran engineer shares real-world case studies and proven optimization strategies to boost your system scalability.
2Comprehensive Guide to LLM Performance Testing and Inference Acceleration Learn how to perform professional performance testing on Large Language Models (LLM). This guide covers Token calculation, TTFT, QPM, and advanced acceleration strategies like P/D separation and KV Cache optimization.
3Mastering Large Model Development from Scratch: Beyond the AI "Black Box" Stop being a mere AI "API caller." Learn how to build a Large Language Model (LLM) from scratch. This guide covers the 4-step training process, RAG vs. Fine-tuning strategies, and how to master the AI "black box" to regain freedom of choice in the generative AI era.
4Interface Testing | Is High Automation Coverage Becoming a Strategic Burden? Is your automated testing draining efficiency? Learn why chasing "automation coverage" leads to a maintenance trap and how to build a value-oriented interface testing strategy.
5Introducing an LLMOps Build Example: From Application Creation to Testing and Deployment Explore a comprehensive LLMOps build example from LINE Plus. Learn to manage the LLM lifecycle: from RAG and data validation to prompt engineering with LangFlow and Kubernetes.