diff --git a/assets/images/appium-app/2.png b/assets/images/appium-app/2.png deleted file mode 100644 index a10ed8ae3..000000000 Binary files a/assets/images/appium-app/2.png and /dev/null differ diff --git a/assets/images/appium-app/app-profiling.png b/assets/images/appium-app/app-profiling.png new file mode 100644 index 000000000..112a3930c Binary files /dev/null and b/assets/images/appium-app/app-profiling.png differ diff --git a/assets/images/appium-app/battery.png b/assets/images/appium-app/battery.png new file mode 100644 index 000000000..d8f3920cc Binary files /dev/null and b/assets/images/appium-app/battery.png differ diff --git a/assets/images/appium-app/cpu.png b/assets/images/appium-app/cpu.png new file mode 100644 index 000000000..9697ed69b Binary files /dev/null and b/assets/images/appium-app/cpu.png differ diff --git a/assets/images/appium-app/memory.png b/assets/images/appium-app/memory.png new file mode 100644 index 000000000..c3616dee5 Binary files /dev/null and b/assets/images/appium-app/memory.png differ diff --git a/assets/images/appium-app/network.png b/assets/images/appium-app/network.png new file mode 100644 index 000000000..be5e7169f Binary files /dev/null and b/assets/images/appium-app/network.png differ diff --git a/assets/images/appium-app/rendering.png b/assets/images/appium-app/rendering.png new file mode 100644 index 000000000..a887ce508 Binary files /dev/null and b/assets/images/appium-app/rendering.png differ diff --git a/assets/images/appium-app/temperature.png b/assets/images/appium-app/temperature.png new file mode 100644 index 000000000..50c8253fc Binary files /dev/null and b/assets/images/appium-app/temperature.png differ diff --git a/docs/appium-app-performance.md b/docs/appium-app-performance.md index 4df4230c7..7b1d65adc 100644 --- a/docs/appium-app-performance.md +++ b/docs/appium-app-performance.md @@ -13,6 +13,9 @@ site_name: LambdaTest slug: appium-app-performance-analytics/ --- +import CodeBlock from '@theme/CodeBlock'; +import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys"; + - - When it comes to building an application, tracking its performance is crucial. You can follow the performance of your applications with LambdaTest's Real Device cloud platform on metrics like CPU consumption, network usage and many more. Go through the page below to understand each metric that LambdaTest provides you with. ## Metrics @@ -54,6 +55,8 @@ LambdaTest provides you with two metrics in a time-series format representing th 2. **App CPU Usage (%)**: The share of "System CPU usage" being used by the AUT. +cmd + *** ### 2. Memory Consumption @@ -68,6 +71,8 @@ LambdaTest provides you with three metrics in a time-series format representing 2. Memory Consumed by your application (in MB) throughout the session 3. Memory Available for use (in MB) throughout the session +cmd + *** ### 3. Battery @@ -76,15 +81,15 @@ A high-performing app could also drain the mobile device's battery quickly, affe You can monitor the battery drained while using your app and subsequently optimize the features that may contribute to a lot of battery drain, improving the battery life of devices running your app. +cmd + *** ### 4. Temperature -You can identify elements that cause the battery to overheat by monitoring the battery temperatures while using your app. +You can identify elements that cause the battery to overheat by monitoring the battery temperatures while using your app. This might help you decide which features to optimise first to save energy and prolong the battery life of the devices running your app. You won't have to worry about your smartphone overheating or encountering performance issues due to a heated battery, improving the user experience. -This might help you decide which features to optimise first to save energy and prolong the battery life of the devices running your app. - -Users won't have to worry about their smartphone overheating or encountering performance issues due to a heated battery, improving the user experience. +cmd *** @@ -94,6 +99,8 @@ Rendering performance is a typical performance issue that any app faces. Renderi LambdaTest provides the frames rate or FPS (frames per second) observed throughout the session. +cmd + *** ### 6. Network Usage @@ -106,13 +113,13 @@ LambdaTest provides the following information to capture network usage better: 1. Network download size throughout the session in time-series 2. Network upload size throughout the session in time-series +cmd + *** ### 7. ANR (Application Not Responding) -Sometimes, your application stops responding, and you receive a pop-up to wait or close the app. Knowing what part of the application's life cycle results in an ANR and in which condition is critical. - -Such instances can ruin the user experience, especially when inputting any information. +Sometimes, your application stops responding, and you receive a pop-up to wait or close the app. Knowing what part of the application's life cycle results in an ANR and in which condition is critical. Such instances can ruin the user experience, especially when inputting any information. LambdaTest provides information on the number of times your app faced ANR and a dump of logs to find more details quickly. However, this feature is supported only for Android devices for now. @@ -130,20 +137,30 @@ This can result in a more responsive and smoother user experience. Currently, yo ### Track the Metrics via App Automation -You can track the performance metrics for your application inside an app automation test. The data will be captured at the test level and shown on the test details page. +You can track the performance metrics for your application inside an app automation test. The data will be captured at the test level and shown on the test details page. Just add the following capability inside your test, and set it to `true`. -Just add the following capability inside your test, and set it to `true`. - -```bash +```javascript "appProfiling" : true; ``` -> **Note**: The `appProfiling` flag is supported for Appium tests on iOS and Android devices. However, it is only supported on devices with an Android version of 9 or above and tests where the `resignApp` capability is not set to `false`. +:::tip +The `appProfiling` flag is supported for Appium tests on iOS and Android devices. However, it is only supported on devices with an **Android version >=9** and tests where the `resignApp` capability is not set to `false`. +::: -A sample output of this test will look like: +:::note +You can also also use this API to enable the app profiling feature in your tests: -cmd +
+ + {`https://${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}@mobile-api.lambdatest.com/mobile-automation/api/v1/sessions/`} + +
+ +::: + +A sample output of this test will look like: +cmd *** diff --git a/docs/automated-ss-api.md b/docs/automated-ss-api.md index c7b58b403..ad8d422dd 100644 --- a/docs/automated-ss-api.md +++ b/docs/automated-ss-api.md @@ -189,8 +189,8 @@ In case you wish to fetch all the details from an already executed screenshot te ```javascript https://api.lambdatest.com/screenshots/v1/Test ID ``` -> -**Note:** Test ID is a mandatory field for making use of this GET request. This would fetch details in JSON format for all bulk screenshots captured in a test session specified by you. + +> **Note:** Test ID is a mandatory field for making use of this GET request. This would fetch details in JSON format for all bulk screenshots captured in a test session specified by you. Client URL would be: @@ -376,8 +376,8 @@ https://api.lambdatest.com/screenshots/v1/stop/TES11111111111111111111 Client URL: curl -X PUT "https://api.lambdatest.com/screenshots/v1/stop/TES100962431563281759448763" -H "accept: application/json" -H "Authorization: Basic 123456789abcdefghijklmno=" ``` -> -**Note:** This will terminate only a running test session. Providing a TestID of an already completed test session will provide you with a 404 error as the server response. + +> **Note:** This will terminate only a running test session. Providing a TestID of an already completed test session will provide you with a 404 error as the server response.