Skip to content

Commit a4c80fc

Browse files
authored
Merge pull request #2251 from Ishavyas9/main
Updated documentation
2 parents 6a64ab7 + 46a092c commit a4c80fc

15 files changed

+189
-31
lines changed

docs/apis-for-app-testing.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ import CodeBlock from '@theme/CodeBlock';
1717
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
1818
import Tabs from '@theme/Tabs';
1919
import TabItem from '@theme/TabItem';
20+
import RealDeviceTag from '../src/component/realDevice';
21+
import VirtualDeviceTag from '../src/component/virtualDevice';
2022

2123
<script type="application/ld+json"
2224
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -41,15 +43,11 @@ import TabItem from '@theme/TabItem';
4143
})
4244
}}
4345
></script>
44-
45-
## Overview
46-
***
47-
46+
<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
4847
In this documentation, we look at some APIs that will help you optimize your mobile app testing workflow. If you are performing live or automated app testing, you can use these APIs in your scripts to perform various actions.
4948

5049
## Fetching The Devices Available for Testing
51-
***
52-
50+
<RealDeviceTag value="Real Device" />
5351
To fetch the Devices that are available for running Tests.
5452

5553
<div className="lambdatest__codeblock">
@@ -237,8 +235,8 @@ Shown below is the response to the above cURL request.
237235
</div>
238236

239237
## Generate publicly shareable build and test links
240-
***
241-
238+
<RealDeviceTag value="Real Device" />
239+
<VirtualDeviceTag value="Virtual Device" />
242240
To generate public **shareable build link**, run the below cURL command.
243241

244242
<div className="lambdatest__codeblock">

docs/appium-firebase-app-upload.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ url: https://www.lambdatest.com/support/docs/appium-firebase-app-upload/
1717
site_name: Uploading app via Firebase
1818
slug: appium-firebase-app-upload/
1919
---
20-
2120
<script type="application/ld+json"
2221
dangerouslySetInnerHTML={{ __html: JSON.stringify({
2322
"@context": "https://schema.org",
@@ -47,9 +46,10 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
4746

4847
import Tabs from '@theme/Tabs';
4948
import TabItem from '@theme/TabItem';
49+
import RealDeviceTag from '../src/component/realDevice';
5050

5151
---
52-
52+
<RealDeviceTag value="Real Device" />
5353
## Tutorial to test an app uploaded on Firebase
5454

5555
**Firebase** is a platform developed by **Google** for creating mobile and web applications. **LambdaTest cloud platform** provides you various methods to upload your files on a real device like from playstore and appstore. Uploading an app through Firebase is one such method.

docs/appium-flutter-integration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ After preparing your Flutter app with this integration (refer to the setup docum
3232

3333
---
3434

35-
## Native Flutter Integration Driver vs Appium Flutter Integration Driver <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
35+
## Native Flutter Integration Driver vs Appium Flutter Integration Driver
3636

3737
| Feature / Use Case | Native Flutter Driver | Appium Flutter Integration Driver |
3838
|----------------------------------------------------|----------------------|----------------------------------|

docs/appium-install-uninstall-hook.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,19 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
4444

4545
import Tabs from '@theme/Tabs';
4646
import TabItem from '@theme/TabItem';
47+
import RealDeviceTag from '../src/component/realDevice';
48+
import VirtualDeviceTag from '../src/component/virtualDevice';
49+
50+
51+
<RealDeviceTag value="Real Device" />
52+
<VirtualDeviceTag value="Virtual Device" />
4753

4854
## Introduction
4955

5056
LambdaTest now allows you to install and uninstall apps in the middle of your automated tests. This means you don’t need to restart the session every time you want to switch apps, upgrade them, or clean up the device.
5157

52-
## Installing and Uninstalling Apps
58+
## Installing and Uninstalling Apps
59+
<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
5360

5461
LambdaTest enables you to install and uninstall applications during automation test execution by using commands that can be run through WebDriver's script execution functionality.
5562

docs/appium-lambdaHooks.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,13 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
4646

4747
import Tabs from '@theme/Tabs';
4848
import TabItem from '@theme/TabItem';
49+
import RealDeviceTag from '../src/component/realDevice';
50+
import VirtualDeviceTag from '../src/component/virtualDevice';
4951

5052

53+
<RealDeviceTag value="Real Device" />
54+
<VirtualDeviceTag value="Virtual Device" />
55+
5156

5257
This document will help you provide lambdahooks which can be used to improve your test scripts to easily debug your test cases for **App Automation on Real Devices** on **LambdaTest Cloud**.
5358

docs/appium-uploading-retrieving-files.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
2424

2525
import Tabs from '@theme/Tabs';
2626
import TabItem from '@theme/TabItem';
27+
import RealDeviceTag from '../src/component/realDevice';
28+
29+
<RealDeviceTag value="Real Device" />
2730

2831
<script type="application/ld+json"
2932
dangerouslySetInnerHTML={{ __html: JSON.stringify({

docs/application-setup-via-api.md

Lines changed: 99 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ import Tabs from '@theme/Tabs';
1919
import TabItem from '@theme/TabItem';
2020
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
2121
import CodeBlock from '@theme/CodeBlock';
22+
import RealDeviceTag from '../src/component/realDevice';
23+
import VirtualDeviceTag from '../src/component/virtualDevice';
24+
25+
<RealDeviceTag value="Real Device" />
26+
<VirtualDeviceTag value="Virtual Device" />
2227

2328
<script type="application/ld+json"
2429
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -64,28 +69,55 @@ The maximum size for application should not exceed 1GB.
6469

6570
### Using App File
6671

72+
<Tabs className="docs__val">
73+
74+
<TabItem value="real" label="Real Device" default>
6775
<div className="lambdatest__codeblock">
6876
<CodeBlock className="language-bash">
69-
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" -X POST "https://manual-api.lambdatest.com/app/upload/realDevice" -F "appFile=@"/Users/macuser/Downloads/Appname.apk"" -F "name="appname""
70-
`}
77+
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" -X POST "https://manual-api.lambdatest.com/app/upload/realDevice" -F "appFile=@"/Users/macuser/Downloads/Appname.apk"" -F "name="appname""`}
78+
</CodeBlock>
79+
</div>
80+
</TabItem>
81+
82+
<TabItem value="virtual" label="Virtual Device">
83+
<div className="lambdatest__codeblock">
84+
<CodeBlock className="language-bash">
85+
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" -X POST "https://manual-api.lambdatest.com/app/upload/virtualDevice" -F "appFile=@"/Users/macuser/Downloads/Appname.apk"" -F "name="appname""`}
7186
</CodeBlock>
7287
</div>
88+
</TabItem>
89+
90+
</Tabs>
7391

7492
### Using App URL
7593

94+
<Tabs className="docs__val">
95+
96+
<TabItem value="real" label="Real Device" default>
7697
<div className="lambdatest__codeblock">
7798
<CodeBlock className="language-bash">
7899
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" -X POST "https://manual-api.lambdatest.com/app/upload/realDevice" -F "url=https://prod-mobile-artefacts.lambdatest.com/assets/docs/proverbial_android.apk" -F "name=Proverbial_App" -F "custom_id=sampleName" -F "storage=url" -F "visibility=individual"`}
79100
</CodeBlock>
80101
</div>
102+
</TabItem>
103+
104+
<TabItem value="virtual" label="Virtual Device">
105+
<div className="lambdatest__codeblock">
106+
<CodeBlock className="language-bash">
107+
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" -X POST "https://manual-api.lambdatest.com/app/upload/virtualDevice" -F "url=https://prod-mobile-artefacts.lambdatest.com/assets/docs/proverbial_android.apk" -F "name=Proverbial_App" -F "custom_id=sampleName" -F "storage=url" -F "visibility=individual"`}
108+
</CodeBlock>
109+
</div>
110+
</TabItem>
111+
112+
</Tabs>
81113

82114
- Response of above cURL will be a **JSON** object containing the `App URL` of the format - ``lt://APP123456789123456789``
83115

84116
:::warning note
85117
The upload time of your application can range from a few seconds to a minute, depending on the size of your application. Therefore, do not interrupt the cURL command request until you receive the response.
86118
:::
87119

88-
## Fetch your Applications
120+
## Fetch your Applications for Real Devices
89121

90122
<Tabs className="docs__val">
91123

@@ -129,10 +161,48 @@ Shown below is the response to the above cURL request.
129161
}
130162
```
131163

164+
## Fetch your Applications for Virtual Devices
165+
166+
<Tabs className="docs__val">
167+
168+
<TabItem value="android" label="Android" default>
169+
<div className="lambdatest__codeblock">
170+
<CodeBlock className="language-bash">
171+
{`curl --location --request GET "https://${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}@manual-api.lambdatest.com/app/data?type=emulator&level=user"`}
172+
</CodeBlock>
173+
</div>
174+
175+
</TabItem>
176+
177+
<TabItem value="ios" label="iOS" default>
178+
<div className="lambdatest__codeblock">
179+
<CodeBlock className="language-powershell">
180+
{`curl --location --request GET "https://${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}@manual-api.lambdatest.com/app/data?type=simulator&level=user"`}
181+
</CodeBlock>
182+
</div>
183+
184+
</TabItem>
185+
</Tabs>
186+
187+
132188
## Deleting your Application
133189

134-
To delete your uploaded apps, run the below cURL command.
190+
<Tabs className="docs__val">
191+
192+
<TabItem value="real" label="Real Device" default>
193+
<div className="lambdatest__codeblock">
194+
<CodeBlock className="language-bash">
195+
{`curl --location --request DELETE "https://${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}@manual-api.lambdatest.com/app/delete" \
196+
--header 'Content-Type: application/json' \
197+
--data-raw '{
198+
"appIds" : "APPID1,APPID2"
199+
}'
200+
`}
201+
</CodeBlock>
202+
</div>
203+
</TabItem>
135204

205+
<TabItem value="virtual" label="Virtual Device">
136206
<div className="lambdatest__codeblock">
137207
<CodeBlock className="language-bash">
138208
{`curl --location --request DELETE "https://${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}@manual-api.lambdatest.com/app/delete" \
@@ -143,6 +213,9 @@ To delete your uploaded apps, run the below cURL command.
143213
`}
144214
</CodeBlock>
145215
</div>
216+
</TabItem>
217+
218+
</Tabs>
146219

147220
Shown below is the response to the above cURL request.
148221

@@ -154,13 +227,30 @@ Shown below is the response to the above cURL request.
154227

155228
## Processing check for your Application
156229

157-
To unlock features such as network logs, image injection, and screenshotunblock feature for your application, app needs to undergo a processing phase. This processing takes a few minutes after the application is uploaded. You can verify if the processing is complete before running your automation script using the following API.
230+
<Tabs className="docs__val">
158231

232+
<TabItem value="real" label="Real Device" default>
159233
<div className="lambdatest__codeblock">
160234
<CodeBlock className="language-bash">
161235
{`curl --location --request POST 'https://mobile-api.lambdatest.com/mobile-automation/api/v1/fetchpatchedapkurl' \
162236
--header 'Authorization: Basic c2hhbnRhbnV3OkFPOEh3NHJtV2hxUlJZSVl3OEk1elMzajhCS0c2ZHl3SVBZeXNNSDJPakdtbFVheXZC' \
163-
--header 'Content-Type: application/json' \y
237+
--header 'Content-Type: application/json' \
238+
--data-raw '{
239+
"appId": "APP10160161171698993659206876",
240+
"networkLogsEnabled": true,
241+
"imageInjectionEnabled": true,
242+
"screenshotUnblockEnabled": true
243+
}'`}
244+
</CodeBlock>
245+
</div>
246+
</TabItem>
247+
248+
<TabItem value="virtual" label="Virtual Device">
249+
<div className="lambdatest__codeblock">
250+
<CodeBlock className="language-bash">
251+
{`curl --location --request POST 'https://mobile-api.lambdatest.com/mobile-automation/api/v1/fetchpatchedapkurl/virtualDevice' \
252+
--header 'Authorization: Basic c2hhbnRhbnV3OkFPOEh3NHJtV2hxUlJZSVl3OEk1elMzajhCS0c2ZHl3SVBZeXNNSDJPakdtbFVheXZC' \
253+
--header 'Content-Type: application/json' \
164254
--data-raw '{
165255
"appId": "APP10160161171698993659206876",
166256
"networkLogsEnabled": true,
@@ -169,6 +259,9 @@ To unlock features such as network logs, image injection, and screenshotunblock
169259
}'`}
170260
</CodeBlock>
171261
</div>
262+
</TabItem>
263+
264+
</Tabs>
172265

173266
The payload allows you to check the processing status for specific features. If the **patched_url** is empty, the processing is still in progress. To check if the processing for image injection or screenshot unblock is complete, pass either **imageInjectionEnabled** or **screenshotUnblockEnabled** as `true` based on the feature you are testing.
174267

docs/application-setup-via-gui.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@ import TabItem from '@theme/TabItem';
2020
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
2121
import CodeBlock from '@theme/CodeBlock';
2222
import NewTag from '../src/component/newTag';
23+
import RealDeviceTag from '../src/component/realDevice';
24+
import VirtualDeviceTag from '../src/component/virtualDevice';
25+
26+
<RealDeviceTag value="Real Device" />
27+
<VirtualDeviceTag value="Virtual Device" />
2328

2429
<script type="application/ld+json"
2530
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -57,13 +62,26 @@ Wait for the file to upload and process. A success message will indicate when yo
5762

5863
<img loading="lazy" src={require('../assets/images/appium-app/application/real-device-upload.gif').default} alt="Image" className="doc_img"/>
5964

65+
6066
> Learn how to [Upload Apps on LambdaTest’s Real Device Cloud](/support/docs/upload-apps-on-real-device-cloud/) in detail.
6167
68+
:::info
69+
- You can access the [**Virtual Device Dashboard**](https://app.lambdatest.com/console/realtime/app).
70+
- For **Virtual Devices**, the steps remain identical to those for Real Devices.
71+
- The only difference is that for **iOS applications**, you must upload a **.zip** file instead of an `.ipa` file, as simulators accept `.zip` format.
72+
:::
73+
6274
## Automation Dashboard
6375
- **Access the App Automation Dashboard :** Log in to your LambdaTest account and navigate to the [App Automation Dashboard](https://appautomation.lambdatest.com/build).
6476
- **Upload the Application :** Click the Browse File button in the App tab under the Real Device or Virtual Device section. Select your application file from your local system:
6577
- **Android :** Upload a `.aab` or `.apk` file.
6678
- **iOS :** Upload an `.ipa` file.
6779
- **Copy the App URL :** After uploading, an `app_url` will be generated (format: `"lt://<app_url>"`). Copy this app_url and use it in your test scripts to identify your application.
6880

69-
<img loading="lazy" src={require('../assets/images/appium-app/application/automation-upload.gif').default} alt="Image" className="doc_img"/>
81+
<img loading="lazy" src={require('../assets/images/appium-app/application/automation-upload.gif').default} alt="Image" className="doc_img"/>
82+
83+
84+
:::info
85+
- The **App Automation Dashboard** supports both **Real** and **Virtual Devices**.
86+
- To perform testing on Virtual Devices, simply select the **Virtual Device** option during upload — the rest of the flow remains identical.
87+
:::

docs/desired-capabilities-in-appium.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
2727
import RealDeviceTag from '../src/component/realDevice';
2828
import VirtualDeviceTag from '../src/component/virtualDevice';
2929

30+
<RealDeviceTag value="Real Device" />
31+
<VirtualDeviceTag value="Virtual Device" />
32+
3033
<script type="application/ld+json"
3134
dangerouslySetInnerHTML={{ __html: JSON.stringify({
3235
"@context": "https://schema.org",

docs/getting-started-with-flutter-dart-android-automation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ import TabItem from '@theme/TabItem';
4444
})
4545
}}
4646
></script>
47-
<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
47+
<RealDeviceTag value="Real Device" />
4848
Flutter, an open-source UI toolkit created by Google, is a popular choice among developers to build natively compiled applications for mobile, web, and desktop from a single codebase. With Dart as its programming language, Flutter enables fast development of beautiful apps with a highly productive, extensible and open-source set of features.
4949

5050
In this guide, we will explore how to run your first Flutter Dart test on an Android device using the LambdaTest Real Device Cloud. By combining the capabilities of Flutter Dart and LambdaTest, you can ensure the proper functioning of your app across different devices and make your app more reliable and robust.

0 commit comments

Comments
 (0)