Skip to content

Commit d1f1248

Browse files
Updated documentation
1 parent fd7c3e6 commit d1f1248

File tree

8 files changed

+45
-23
lines changed

8 files changed

+45
-23
lines changed

docs/getting-started-with-xcuitest.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ slug: getting-started-with-xcuitest/
1818

1919
import CodeBlock from '@theme/CodeBlock';
2020
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
21+
import RealDeviceTag from '../src/component/realDevice';
22+
import VirtualDeviceTag from '../src/component/virtualDevice';
2123

2224
<script type="application/ld+json"
2325
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -42,7 +44,7 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
4244
})
4345
}}
4446
></script>
45-
47+
<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
4648
Developed by Apple, XCUITest is a framework for user-interface (UI) testing for iOS applications. It is built on top of XCTest, an integrated test framework in Apple's Xcode IDE. LambdaTest lets you perform automated app testing of your iOS apps using XCUITest across 10000+ real devices and OS combinations.
4749

4850
## Prerequisites
@@ -227,6 +229,11 @@ curl --location --request POST 'https://mobile-api.lambdatest.com/framework/v1/x
227229
}'
228230
```
229231

232+
:::info
233+
- For Virtual Devices, both the App file and Test-suite should be in the `Zip format`.
234+
- We need to pass the following capability `isvirtualdevice:true` as well when we are running test for Virtual Devices.
235+
:::
236+
230237
<nav aria-label="breadcrumbs">
231238
<ul className="breadcrumbs">
232239
<li className="breadcrumbs__item">

docs/regular-expression-xcui.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ site_name: LambdaTest
1212
slug: regular-expression-xcui/
1313
---
1414

15+
import RealDeviceTag from '../src/component/realDevice';
16+
1517
<script type="application/ld+json"
1618
dangerouslySetInnerHTML={{ __html: JSON.stringify({
1719
"@context": "https://schema.org",
@@ -35,6 +37,7 @@ slug: regular-expression-xcui/
3537
})
3638
}}
3739
></script>
40+
<RealDeviceTag value="Real Device" />
3841
Regular Expression or REGEX is widely used to make searching/find characters in a string.
3942

4043
When you run a test on LambdaTest using a specific device, there may be scenarios, in which the particular device that you selected isn’t available. In these scenarios, REGEX will help you widen the search request for devices to run the test on.

docs/sharding-xcui.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import CodeBlock from '@theme/CodeBlock';
2222
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
2323
import Tabs from '@theme/Tabs';
2424
import TabItem from '@theme/TabItem';
25+
import RealDeviceTag from '../src/component/realDevice';
2526

2627
<script type="application/ld+json"
2728
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -47,7 +48,7 @@ import TabItem from '@theme/TabItem';
4748
}}
4849
></script>
4950

50-
51+
<RealDeviceTag value="Real Device" />
5152
Generally the XCUI tests are run in sequence which is a time taking process. This document explains how you can speed up this process by splitting the tests into **shards**. We can divide the various tests into shards which can run parallelly and save time while running various XCUI tests.
5253

5354
This document will cover how to execute **XCUI Tests** on real devices with **HyperExecute**. HyperExecute is a smart test orchestration platform to run end-to-end tests at the fastest speed possible. HyperExecute is configured using a YAML file.

docs/speedup-xcui.md

Lines changed: 6 additions & 3 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
import Tabs from '@theme/Tabs';
2525
import TabItem from '@theme/TabItem';
2626

27+
import RealDeviceTag from '../src/component/realDevice';
28+
import VirtualDeviceTag from '../src/component/virtualDevice';
29+
2730
<script type="application/ld+json"
2831
dangerouslySetInnerHTML={{ __html: JSON.stringify({
2932
"@context": "https://schema.org",
@@ -47,7 +50,7 @@ import TabItem from '@theme/TabItem';
4750
})
4851
}}
4952
></script>
50-
53+
<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
5154
Usually, all the test cases of your XCUI test suite are executed, but there is a way to filter these. You can specify some selected classes or tests, which provides you with options to filter the test cases which you want to execute.
5255

5356
To filter the test cases, you just need to pass the suitable parameters in LambdaTest’s REST API request. Refer to the table below to understand how to use various filters provided by LambdaTest.
@@ -73,8 +76,8 @@ curl --location --request POST 'https://mobile-api.lambdatest.com/framework/v1/x
7376

7477
| Parameters | Description | Values | Datatype |
7578
|----------- | ----------- | ------ | -------- |
76-
| `only-testing` | Allows the user to run only those tests/classes provided in the list | Values can be of the following format: className or className/testName. E.g. `["Class1/Test1", "Class2"]` | Array |
77-
| `skip-testing`| Allows the user to run all the tests/classes except the ones provided in the list | Values can be of the following format: className or className/testName. E.g. `["Class1/Test1", "Class2"]` | Array |
79+
| `only-testing` <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| Allows the user to run only those tests/classes provided in the list | Values can be of the following format: className or className/testName. E.g. `["Class1/Test1", "Class2"]` | Array |
80+
| `skip-testing`<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" /> | Allows the user to run all the tests/classes except the ones provided in the list | Values can be of the following format: className or className/testName. E.g. `["Class1/Test1", "Class2"]` | Array |
7881

7982
:::info Note
8083
You can not use the following filters simultaneously.

docs/xcresult.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import CodeBlock from '@theme/CodeBlock';
2121
import Tabs from '@theme/Tabs';
2222
import TabItem from '@theme/TabItem';
2323
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
24+
import RealDeviceTag from '../src/component/realDevice';
2425

2526
<script type="application/ld+json"
2627
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -45,9 +46,8 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
4546
})
4647
}}
4748
></script>
48-
4949
# XCResult on LambdaTest
50-
50+
<RealDeviceTag value="Real Device" />
5151
Apple’s **Native XCResult Bundles (`.xcresult`)** are comprehensive test reports generated when you run XCUITest cases. These bundles include **test hierarchy, logs, stack traces, screenshots, and performance data**, which can be directly viewed in Xcode. They provide developers with rich debugging information, making it easier to analyze why a test passed or failed.
5252

5353
On LambdaTest, you can now **generate and download `.xcresult` bundles** for your XCUI test sessions. You can access them via the **REST API**.

docs/xctestplan.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
2424
import Tabs from '@theme/Tabs';
2525
import TabItem from '@theme/TabItem';
2626

27+
import RealDeviceTag from '../src/component/realDevice';
28+
2729
<script type="application/ld+json"
2830
dangerouslySetInnerHTML={{ __html: JSON.stringify({
2931
"@context": "https://schema.org",
@@ -47,6 +49,7 @@ import TabItem from '@theme/TabItem';
4749
})
4850
}}
4951
></script>
52+
<RealDeviceTag value="Real Device" />
5053
XCTestPlan is a feature within Xcode used for building iOS, iPadOS, macOS, watchOS, tvOS, and audioOS applications. XCTestPlan helps manage how you run automated tests written with the XCTest framework.
5154

5255
XCTestPlan improves the organization and efficiency of running automated tests within Xcode. It allows you to create targeted test runs and manage various testing scenarios effectively.

docs/xcui-supported-capibilities.md

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ slug: xcui-supported-capabilities/
1919

2020
import CodeBlock from '@theme/CodeBlock';
2121
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
22+
import RealDeviceTag from '../src/component/realDevice';
23+
import VirtualDeviceTag from '../src/component/virtualDevice';
2224

2325
<script type="application/ld+json"
2426
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -43,29 +45,29 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
4345
})
4446
}}
4547
></script>
46-
48+
<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
4749
This document provide details about the features and capabilities supported for XCUI Framework on LambdaTest.
4850

4951
> The capabilities listed in this document are also supported for [Virtual Devices](/support/docs/app-automation-on-emulators-simulators/)
5052
5153
| Capability Name | Data Type | Description |
5254
|------|-----------|-------------|
53-
| app | String | Enter the app id generated while uploading the app to the platform. Example:`lt://APP123456789123456789` |
54-
| testSuite | String | Enter the test suite id generated while uploading the test suite to the platform. Example: `lt://APP123456789123456789` |
55-
| device | String | Enter the device name and os version in `DeviceName-OSVersion` format. Example: `"device" : ["Galaxy S20-10","Pixel 3 XL-9"]` |
56-
| video | Boolean | When you pass the `video: true`, it will generate the video for all the tests that are executed. |
57-
| queueTimeout | Integer | Enter the time in seconds after which you want your build to timeout from queue. Example: `queueTimeout: 300` |
58-
| idleTimeout | Integer | Enter the time in seconds for maximum running time of a test in a build. Example: `idleTimeout: 120`|
59-
| deviceLog | Boolean | To generate the device logs, pass the value as `deviceLog: true` |
60-
| network | String | To generate the network logs, pass the value as `network: true`. |
61-
| build | String | To set the Espresso build name. Example: `build: My Espresso Build`. |
62-
| geoLocation | String | Set the geolocation [country code](/support/docs/appium-ip-geolocation/#supported-ip-geolocations) if you want to enable the same in your test. Example: `geoLocation: FR`|
63-
| gpsLocation | Decimal | The capability should be defined to override the device’s default GPS coordinates and should be provided as a comma-separated string. Example: `"location": {"lat": "-50","long": "150.028333"}`.|
64-
| tunnel, tunnelName | Boolean | To activate the tunnel mode, pass the value as `tunnel: true` and provide the name of your tunnel as `tunnelName: NewTunnel` |
65-
| enableBluetooth | Boolean | Used to enable the bluetooth functionality during the session. Example: `enableBluetooth: true`|
55+
| app <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| String | Enter the app id generated while uploading the app to the platform. Example:`lt://APP123456789123456789` |
56+
| testSuite <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| String | Enter the test suite id generated while uploading the test suite to the platform. Example: `lt://APP123456789123456789` |
57+
| device <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| String | Enter the device name and os version in `DeviceName-OSVersion` format. Example: `"device" : ["Galaxy S20-10","Pixel 3 XL-9"]` |
58+
| video <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| Boolean | When you pass the `video: true`, it will generate the video for all the tests that are executed. |
59+
| queueTimeout <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| Integer | Enter the time in seconds after which you want your build to timeout from queue. Example: `queueTimeout: 300` |
60+
| idleTimeout <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| Integer | Enter the time in seconds for maximum running time of a test in a build. Example: `idleTimeout: 120`|
61+
| deviceLog <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| Boolean | To generate the device logs, pass the value as `deviceLog: true` |
62+
| network <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| String | To generate the network logs, pass the value as `network: true`. |
63+
| build <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| String | To set the Espresso build name. Example: `build: My Espresso Build`. |
64+
| geoLocation <RealDeviceTag value="Real Device" />| String | Set the geolocation [country code](/support/docs/appium-ip-geolocation/#supported-ip-geolocations) if you want to enable the same in your test. Example: `geoLocation: FR`|
65+
| gpsLocation <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| Decimal | The capability should be defined to override the device’s default GPS coordinates and should be provided as a comma-separated string. Example: `"location": {"lat": "-50","long": "150.028333"}`.|
66+
| tunnel, tunnelName <RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />| Boolean | To activate the tunnel mode, pass the value as `tunnel: true` and provide the name of your tunnel as `tunnelName: NewTunnel` |
67+
| enableBluetooth <RealDeviceTag value="Real Device" />| Boolean | Used to enable the bluetooth functionality during the session. Example: `enableBluetooth: true`|
6668
| resignApp <br /> <br />Not supported in **Virtual Devices** | Boolean | Set this to `false` if you want to to prevent the apps from being re-signed. The app should be built for enterprise distribution. |
67-
| testRemarks <br /> <br />| Boolean | Set to `true` to surface failure remarks at the top of the dashboard when a test fails. Has no effect on passing tests. **Default**: `false`. |
68-
| retries <br /> <br /> | Integer |Defines the number of times a test should automatically retry if it fails. Maximum allowed value: 5.|
69+
| testRemarks <br /> <br /> <RealDeviceTag value="Real Device" />| Boolean| Set to `true` to surface failure remarks at the top of the dashboard when a test fails. Has no effect on passing tests. **Default**: `false`. |
70+
| retries <br /> <br /> <RealDeviceTag value="Real Device" />| Integer |Defines the number of times a test should automatically retry if it fails. Maximum allowed value: 5.|
6971

7072
:::note
7173
Ensure that the latitude is between -90 and 90, and the longitude is between -180 and 180. Otherwise, an error will occur like "Invalid GPS location: Latitude must be between -90 and +90, Longitude must be between -180 and +180."

docs/xcui-xml-report.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ slug: xcui-report/
2020

2121
import CodeBlock from '@theme/CodeBlock';
2222
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
23+
import RealDeviceTag from '../src/component/realDevice';
24+
import VirtualDeviceTag from '../src/component/virtualDevice';
2325

2426
<script type="application/ld+json"
2527
dangerouslySetInnerHTML={{ __html: JSON.stringify({
@@ -44,6 +46,7 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co
4446
})
4547
}}
4648
></script>
49+
<RealDeviceTag value="Real Device" /> <VirtualDeviceTag value="Virtual Device" />
4750
XML reports provide a detailed summary of test execution, allowing you to better understand your test outcomes. This document aims to guide you through the process of retrieving XML reports for XCUI tests executed on the LambdaTest platform.
4851

4952
> This feature is also supported for [Virtual Devices](/support/docs/app-automation-on-emulators-simulators/)

0 commit comments

Comments
 (0)