Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
450 changes: 91 additions & 359 deletions docs/hyperexecute-appium-testing.md

Large diffs are not rendered by default.

208 changes: 208 additions & 0 deletions docs/hyperexecute-appium-virtual-device.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,208 @@
---
id: hyperexecute-appium-virtual-device
title: Appium Testing - Virtual Device On HyperExecute
sidebar_label: Appium - Virtual Device
description: Maximize Appium test execution with HyperExecute – Explore LambdaTest's support documentation for seamless automation testing.
keywords:
- appium
- java
- lambdatest java
- framework on lambdatest
- testng
- app testing
- virtual devices
image: /assets/images/og-images/appium-testing-og-image.jpg
url: https://www.lambdatest.com/support/docs/hyperexecute-appium-virtual-device/
site_name: LambdaTest
slug: hyperexecute-appium-virtual-device/
---

import CodeBlock from '@theme/CodeBlock';
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

<script type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify({
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://www.lambdatest.com"
},{
"@type": "ListItem",
"position": 2,
"name": "Support",
"item": "https://www.lambdatest.com/support/docs/"
},{
"@type": "ListItem",
"position": 3,
"name": "Getting Started With Appium Testing on LambdaTest",
"item": "https://www.lambdatest.com/support/docs/hyperexecute-appium-virtual-device/"
}]
})
}}
></script>
This page outlines how to execute your Appium tests on HyperExecute using TestNG with YAML 0.2
> HyperExecute uses [YAML 0.2](/support/docs/hyperexecute-yaml-version0.2/) to perform the tests using Appium.

## Prerequisites

To run the Tests on HyperExecute from your Local System, you are required:

- [HyperExecute YAML](/support/docs/hyperexecute-yaml-version0.2/) file which contains all the necessary instructions.
- [HyperExecute CLI](/support/docs/hyperexecute-cli-run-tests-on-hyperexecute-grid/) in order to initiate a test execution Job .
- Your lambdatest [Username and Access key](/support/docs/hyperexecute-how-to-get-my-username-and-access-key/)
- Setup the Environmental Variable
- Ensure you have Appium’s [Java client library](https://github.com/appium/java-client) installed.
- Access to an **Android** app (.apk or .aab file)

:::tip Sample repo
All the code samples in this documentation can be found on **LambdaTest's Github Repository**. You can either download or clone the repository to quickly run your tests. <a href="https://github.com/LambdaTest/hyperexecute-appium-testng/tree/android-emulator" className="github__anchor"><img loading="lazy" src={require('../assets/images/icons/github.png').default} alt="Image" className="doc_img"/> View on GitHub</a>
:::
> If you do not have any **.apk** file, you can run your sample tests on LambdaTest by using our sample :link: [Android app](https://prod-mobile-artefacts.lambdatest.com/assets/docs/proverbial_android.apk)

### Download HyperExecute CLI

The *HyperExecute CLI* is used for triggering tests on HyperExecute. It is recommend to download the HyperExecute CLI binary on the host system to perform the tests on HyperExecute. The CLI download site for various platforms is displayed below:

| Platform | HyperExecute CLI download location |
| ---------| --------------------------- |
| Windows | https://downloads.lambdatest.com/hyperexecute/windows/hyperexecute.exe |
| macOS | https://downloads.lambdatest.com/hyperexecute/darwin/hyperexecute |
| Linux | https://downloads.lambdatest.com/hyperexecute/linux/hyperexecute |

### Setup Environment Variable
Export the environment variables *LT_USERNAME* and *LT_ACCESS_KEY* that are available in the [LambdaTest Profile page](https://accounts.lambdatest.com/detail/profile).
Run the below mentioned commands in the terminal to setup the CLI and the environment variables.

<Tabs className="docs__val">

<TabItem value="bash" label="Linux / MacOS" default>

<div className="lambdatest__codeblock">
<CodeBlock className="language-bash">
{`export LT_USERNAME="${ YOUR_LAMBDATEST_USERNAME()}"
export LT_ACCESS_KEY="${ YOUR_LAMBDATEST_ACCESS_KEY()}"`}
</CodeBlock>
</div>

</TabItem>

<TabItem value="powershell" label="Windows" default>

<div className="lambdatest__codeblock">
<CodeBlock className="language-powershell">
{`set LT_USERNAME="${ YOUR_LAMBDATEST_USERNAME()}"
set LT_ACCESS_KEY="${ YOUR_LAMBDATEST_ACCESS_KEY()}"`}
</CodeBlock>
</div>

</TabItem>
</Tabs>

## Steps to Run Your Test

### Step 1: Upload your Application
Upload your <b>_android_</b> application (.apk file) to the LambdaTest servers using our <b>REST API</b>. You need to provide your <b>Username</b> and <b>AccessKey</b> in the format `Username:AccessKey` in the <b>cURL</b> command for authentication. Make sure to add the path of the <b>appFile</b> in the cURL request. Here is an example cURL request to upload your app using our REST API:

<Tabs className="docs__val">
<TabItem value="file" label="App file" default>

<Tabs className="docs__val">
<TabItem value="macos-file" label="Linux / MacOS" default>

<div className="lambdatest__codeblock">
<CodeBlock className="language-bash">
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" --location --request POST 'https://manual-api.lambdatest.com/app/upload/virtualDevice' --form 'name="Android_App"' --form 'appFile=@"<RELATIVE_PATH_OF_YOUR_APP>"'
`}
</CodeBlock>
</div>

</TabItem>

<TabItem value="windows-file" label="Windows" default>
<div className="lambdatest__codeblock">
<CodeBlock className="language-powershell">
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" -X POST "https://manual-api.lambdatest.com/app/upload/virtualDevice" -F "appFile=@"<RELATIVE_PATH_OF_YOUR_APP>""
`}
</CodeBlock>
</div>
</TabItem>
</Tabs>

</TabItem>
<TabItem value="url" label="App URL" default>

<Tabs className="docs__val">
<TabItem value="macos-url" label="Linux / MacOS" default>

<div className="lambdatest__codeblock">
<CodeBlock className="language-bash">
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" \\
--location --request POST 'https://manual-api.lambdatest.com/app/upload/virtualDevice' \\
--form 'name="Android_App"' \\
--form 'url="https://prod-mobile-artefacts.lambdatest.com/assets/docs/proverbial_android.apk"'`}
</CodeBlock>
</div>

</TabItem>

<TabItem value="windows-url" label="Windows" default>
<div className="lambdatest__codeblock">
<CodeBlock className="language-powershell">
{`curl -u "${ YOUR_LAMBDATEST_USERNAME()}:${ YOUR_LAMBDATEST_ACCESS_KEY()}" --location --request POST "https://manual-api.lambdatest.com/app/upload/virtualDevice" --header "Content-Type: application/x-www-form-urlencoded" --data-urlencode "url=:https://prod-mobile-artefacts.lambdatest.com/assets/docs/proverbial_android.apk" --data-urlencode "name=Proverbial_App"`}
</CodeBlock>
</div>
</TabItem>
</Tabs>

</TabItem>
</Tabs>

> Response of above cURL will be a **JSON** object containing the `App URL` of the format - ``lt://APP123456789123456789`` and will be used in the next step.

### Step 2: Configure your Test Script
Write Your Automation Script in the client language of your choice from the ones supported by Appium. An automation script for the sample applications have been provided below.

Here is a sample automation script in Java for the sample app downloaded above. Ensure to update the `app_url`, `username` and `accesskey` in the below code.

```java reference title="AndroidEmulator.java"
https://github.com/LambdaTest/hyperexecute-appium-testng/blob/android-emulator/src/main/java/AndroidEmulator.java
```

### Step 3: Update your XML file
Create `.XML` file in order to run your test and define device capabilities. Please find sample code below for the same.

```xml reference title="android-emulator.xml"
https://github.com/LambdaTest/hyperexecute-appium-testng/blob/android-emulator/src/test/java/android-emulator.xml
```

### Step 4: Configure YAML and Execute your Script
```yaml reference title="android-emulator.yaml"
https://github.com/LambdaTest/hyperexecute-appium-testng/blob/android-emulator/yaml/hyp-android-emulator.yaml
```

<!-- > The ```region``` parameter specifies the region or location where the Appium tests will be executed. Our platform supports the following three regions:
- ap (Asia-Pacific)
- us (United States)
- eu (European Union) -->

### Step 5: Execute your Test Suite
> **NOTE :** In case of MacOS, if you get a permission denied warning while executing CLI, simply run **`chmod u+x ./hyperexecute`** to allow permission. In case you get a security popup, allow it from your **System Preferences** → **Security & Privacy** → **General tab**.

Run the below command in your terminal at the root folder of the project:

```bash
./hyperexecute --config RELATIVE_PATH_OF_YOUR_YAML_FILE
```

OR use this command if you have not exported your username and access key in the step 2.

<div className="lambdatest__codeblock">
<CodeBlock className="language-bash">
{`./hyperexecute --user ${ YOUR_LAMBDATEST_USERNAME()} --key ${ YOUR_LAMBDATEST_ACCESS_KEY()} --config RELATIVE_PATH_OF_YOUR_YAML_FILE `}
</CodeBlock>
</div>
5 changes: 1 addition & 4 deletions docs/hyperexecute-espresso-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,7 @@ framework:
```

To download these artifacts in your local machine, you can pass the `--download-artifacts` and `--download-report` flag with the CLI command to execute the tests as shown in the next step.

## Step 7: Execute your Test Suite

> **NOTE :** In case of MacOS, if you get a permission denied warning while executing CLI, simply run **`chmod u+x ./hyperexecute`** to allow permission. In case you get a security popup, allow it from your **System Preferences** → **Security & Privacy** → **General tab**.
Expand All @@ -304,10 +305,6 @@ OR use this command if you have not exported your username and access key in the

> Visit the [HyperExecute Dashboard](https://hyperexecute.lambdatest.com/hyperexecute) and check your Job status.

<!-- <img loading="lazy" src={require('../assets/images/hyperexecute/frameworks/espresso/espresso-he.webp').default} alt="cmd" width="768" height="373" className="doc_img"/> -->

<!-- <img loading="lazy" src={require('../assets/images/hyperexecute/frameworks/espresso/espress-he-app.webp').default} alt="cmd" width="768" height="373" className="doc_img"/> -->

:::tip Troubleshoot Guide

If you are stumbling upon errors during Espresso test execution, then refer to the [**Espresso Troubleshoot**](/support/docs/troubleshoot-espresso-tests/#sharded-espresso-errors) guide for detailed explanations to your common errors.
Expand Down
22 changes: 17 additions & 5 deletions docs/hyperexecute-maestro-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ You can use your own project to configure and test it. For demo purposes, we are

:::tip Sample repo
Download or Clone the code sample for the Maestro framework from the LambdaTest GitHub repository to run the tests on the HyperExecute.
<a href="https://github.com/LambdaTest/maestro-sample-test" className="github__anchor"><img loading="lazy" src={require('../assets/images/icons/github.png').default} alt="Image" className="doc_img"/> View on GitHub</a>
<a href="https://github.com/LambdaTest/hyperexecute-maestro-sample-test" className="github__anchor"><img loading="lazy" src={require('../assets/images/icons/github.png').default} alt="Image" className="doc_img"/> View on GitHub</a>
:::

## Step 2: Setup the CLI in your Test Suite
Expand Down Expand Up @@ -129,19 +129,31 @@ Enter your local path of the code repository instead of `<YOUR_LOCAL_APP_PATH>`
Enter your `APP_ID` in the YAML file that you have fetched in the above step.

<Tabs className="docs__val">
<TabItem value="android" label="Android" default>
<TabItem value="android-rd" label="Android-Real Device" default>

```yaml reference title="hyperexecute.yaml"
https://github.com/LambdaTest/maestro-sample-test/blob/main/yaml/maestro.yaml
https://github.com/LambdaTest/hyperexecute-maestro-sample-test/blob/main/yaml/maestro.yaml
```
</TabItem>

<TabItem value="ios" label="iOS-Simulator" default>
<TabItem value="android-emu" label="Android-Emulator" default>

> To enable this for your organizaton, connect with us through our <span className="doc\_\_lt" onClick={() => window.openLTChatWidget()}>**24/7 chat support**</span> or drop us an email to [support@lambdatest.com](mailto:support@lambdatest.com).

```yaml reference title="hyperexecute.yaml"
https://github.com/LambdaTest/hyperexecute-maestro-sample-test/blob/android-emulator/yaml/maestro.yaml
```
</TabItem>

<TabItem value="ios-simu" label="iOS-Simulator" default>
> To enable this for your organizaton, connect with us through our <span className="doc\_\_lt" onClick={() => window.openLTChatWidget()}>**24/7 chat support**</span> or drop us an email to [support@lambdatest.com](mailto:support@lambdatest.com).


```yaml reference title="hyperexecute.yaml"
https://github.com/LambdaTest/maestro-sample-test/blob/ios-simulator/maestro.yaml
https://github.com/LambdaTest/hyperexecute-maestro-sample-test/blob/ios-simulator/maestro.yaml
```
</TabItem>

</Tabs>

## Step 5: Execute your Test Suite
Expand Down
53 changes: 53 additions & 0 deletions docs/hyperexecute-release-notes-2-6-0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
id: hyperexecute-release-notes-2-6-0
title: Version 2.6.0
hide_title: false
sidebar_label: Version 2.6.0
description: Version 2.6.0
keywords:
- LambdaTest Hyperexecute
- LambdaTest Hyperexecute help
- LambdaTest Hyperexecute documentation
- FAQs
url: https://www.lambdatest.com/support/docs/hyperexecute-release-notes-2-6-0/
site_name: LambdaTest
slug: hyperexecute-release-notes-2-6-0/
---

import NewReleaseTag from '../src/component/newRelease.js';
import EnhancementTag from '../src/component/enhancementTag';
import BugFixTag from '../src/component/bugFixTag';

<script type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify({
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://www.lambdatest.com"
},{
"@type": "ListItem",
"position": 2,
"name": "Support",
"item": "https://www.lambdatest.com/support/docs/"
},{
"@type": "ListItem",
"position": 3,
"name": "Version",
"item": "https://www.lambdatest.com/support/docs/hyperexecute-release-notes-2-6-0/"
}]
})
}}
></script>
## Label-Based Filtering for Test History
This feature addresses the challenge of managing and tracking test runs as development teams scale and test suites grow more complex. By allowing you to group and filter tests based on custom labels, it simplifies test result tracking, reporting, and team collaboration.

Some of the specific benefits of the Test History Labels feature include:

- Quickly identifying and grouping similar test runs (e.g., all regression tests, all tests for a particular environment).
- Simplifying the process of retrieving test runs for a specific sprint, feature, or environment.
- Enhancing overall test management and organization for development teams.

<img loading="lazy" src={require('../assets/images/hyperexecute/release-notes/test-history-label.gif').default} alt="Image" className="doc_img"/>
65 changes: 65 additions & 0 deletions docs/hyperexecute-release-notes-2-6-2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
---
id: hyperexecute-release-notes-2-6-2
title: Version 2.6.2
hide_title: false
sidebar_label: Version 2.6.2
description: Version 2.6.2
keywords:
- LambdaTest Hyperexecute
- LambdaTest Hyperexecute help
- LambdaTest Hyperexecute documentation
- FAQs
url: https://www.lambdatest.com/support/docs/hyperexecute-release-notes-2-6-2/
site_name: LambdaTest
slug: hyperexecute-release-notes-2-6-2/
---

import NewReleaseTag from '../src/component/newRelease.js';
import EnhancementTag from '../src/component/enhancementTag';
import BugFixTag from '../src/component/bugFixTag';

<script type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify({
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://www.lambdatest.com"
},{
"@type": "ListItem",
"position": 2,
"name": "Support",
"item": "https://www.lambdatest.com/support/docs/"
},{
"@type": "ListItem",
"position": 3,
"name": "Version",
"item": "https://www.lambdatest.com/support/docs/hyperexecute-release-notes-2-6-2/"
}]
})
}}
></script>
## Support for Appium and Maestro Android Emulator
HyperExecute now supports the Appium and the Maestro Android Emulator, providing enhanced flexibility for mobile application testing on Android emulators.

### Key Features:
- **Streamlined Emulator Integration**: Perform testing on virtual devices without requiring physical hardware, reducing setup complexity.
- **Parallel Execution :** Run multiple tests simultaneously on virtual devices using HyperExecute’s parallelism to speed up test cycles and reduce execution time for functional and UI tests.
- **Customizable Capabilities:** Define emulator configurations such as device name, platform version, and orientation directly within your test files.

To execute tests using the Android Emulator, add the following configurations to your `hyperexecute.yaml`:
```yaml
framework:
args:
isRealMobile: false
```

> Refer to our detailed documentation for [Appium](/support/docs/hyperexecute-appium-virtual-device/) and [Maestro](/support/docs/hyperexecute-maestro-testing/) on configuring and running tests with Android emulators.

## New Version Release for Beta and Dev Edge Browser
HyperExecute expands its support for the latest versions of dev and beta browsers for the Windows platform. With this expanded compatibility, you can streamline your testing process and deliver exceptional user experiences with confidence!

- **Dev version:** 132.0.2957.11
- **Beta version:** 132.0.2957.11
Loading
Loading