# Deep Links

Deep links can be used to speed up navigation by directly accessing specific app screens, bypassing complex flows. Deep Links Tester allows users to validate deep links within their applications, ensuring that promotional or navigational links direct users to the correct pages. Three Types of Deep Links for **QApilot** are:

### Authentication Deeplinks:

Authentication deep links are used to navigate directly to authentication-related screens or processes within an application. They are especially useful in testing login flows, multi-factor authentication (MFA), and session management.

#### Use Cases in Testing:

1. Directly opening the login page or a specific OAuth provider (e.g., Google, Facebook).
2. Bypassing navigation steps to validate MFA functionality (e.g., OTP input screens).
3. Testing session timeouts or reauthentication flows.

### Download App Push Deeplinks

These deep links redirect users to download or install an app from a store (e.g., Google Play Store, Apple App Store) or a specific location. They are useful for apps that promote installations or updates via links in web pages, emails, or other apps.

#### Use Cases in Testing:

* Verifying the redirection to the correct app store page.
* Ensuring the deep link handles the "app already installed" scenario properly.
* Testing conditional flows where the app opens if installed or redirects to the store if not.

### Link Browser Portal PWA Deeplinks

These are links that open specific pages within a browser portal or Progressive Web App (PWA). They bridge the functionality of web and mobile apps, enabling access to a specific part of the app through a browser.

#### Use Cases in Testing:

* Navigating directly to a feature or section within a PWA (e.g., a product page or user dashboard).
* Validating behavior in offline mode (PWAs often provide offline capabilities).
* Ensuring links function across devices and browsers.

***

## Prerequisites

1. Ensure that you have test case scenarios to select from the dropdown.
2. You must have Deeplink URLs and elements to find them.
3. You should know how to [Execute the Test Plan](/detailed-documentation/test-plan-executions.md)

***

## Listing Deep links

On the Test Deep links List page, you will have the below options:

1. Navigate to **Deep links** in the left-side navbar.
2. You can easily manage Deep Links on the **Deep Links** list page by **filtering**, or **searching**. The page displays deep links with **titles**, **creation dates**, and **statuses**.
3. Click **Add Deep Links**

<figure><img src="/files/OpQL3ii5OO7CgWtICC8e" alt=""><figcaption></figcaption></figure>

***

## Creating Deep Links

1. Click the Add to add a new/Create Deeplink on the Deeplink Homepage.
2. It redirects to the below Create Deeplink window

<figure><img src="/files/H2L7vptAqa6DO49bYkco" alt=""><figcaption></figcaption></figure>

3. Enter Title
4. Enter your App Name
5. Select OS refers to choosing the operating system (OS) that a particular application or test environment will run on, such as Android or iOS.
6. A login scenario refers to a category or filter applied to group test cases specifically related to login functionality. This helps streamline test case management, enabling testers to focus on specific features or scenarios.
7. To test a deep link that requires user login in the application, you can follow a structured approach in QApilot. The goal is to verify that the deep link works correctly only after the user is authenticated and ensures redirection to the correct page or functionality.
8. Similarly, select Logout Scenario and Logout Test case from the dropdown.
9. Download a sample Deeplink Excel file and fill in the details to import that includes deep link URL and element text/XPath. Users can upload a sheet containing all the deep links they need to test. This sheet should include the link, the expected destination page, and a unique element identifier for validation.&#x20;
   1. A Deeplink URL is a specific type of hyperlink that takes a user directly to a specific page or location within a mobile application, rather than just opening the app. Deeplinks enhance the user experience by allowing users to access content more quickly, bypassing unnecessary navigation steps.
   2. XPATH helps to identify and interact with elements like buttons, links, input fields, etc., based on their location.
10. Click on the Create button and the new Deeplink will be created successfully.

<figure><img src="/files/hxhUAXij7QwW7hedVP7b" alt=""><figcaption></figcaption></figure>

11. When [executed](/detailed-documentation/test-plan-executions.md), a deep link can open the app to a specific screen or state, bypassing the app's normal navigation flow. This makes testing deep links crucial in ensuring that users are taken to the correct location within the app when they click these links.

***

## Deep Links Execution

1. Navigate to Test Plans on the left side nav bar, and create a Test Plan for Test Execution as shown below:

<figure><img src="/files/B4DRORBD7IlxNy1Y7aui" alt=""><figcaption></figcaption></figure>

2. Select Source From Deeplink that you have already created and Import Deeplinks from the available deep links dropdown.

<figure><img src="/files/q26WHQuXpDJ7ZskkYF8L" alt=""><figcaption></figcaption></figure>

3. After clicking Import, Device Setup

<figure><img src="/files/kxXWemgo7byLFUwjeb1w" alt=""><figcaption></figcaption></figure>

3. Next, Execution Settings will apply any advanced settings from this execution.

<figure><img src="/files/MCj7pr1FX0STnzk4c2rD" alt=""><figcaption></figcaption></figure>

4. Enabling the App Installation Flow will apply check authentication on every case or check authentication on only failed cases.

<figure><img src="/files/qYQLVAttwNmyTlry3RWy" alt=""><figcaption></figcaption></figure>

5. click on Save to Execute Deep links. **QAPilot** tests each deep link by clicking the link and verifying that it navigates to the correct page. The tool checks for the presence of a unique element (e.g., a specific text field or mobile number) to confirm successful navigation.
6. If the tool identifies the unique element, the test case is marked as passed. If the element is not found, the test case fails, indicating an issue with the deep link or navigation flow. Once the executions are completed, these are acknowledged in the form of [Reports](/detailed-documentation/reports.md).
7. Click the three-dot menu to manage the changes concerning every deep link.

<figure><img src="/files/hJ8VPb9TtA8VZI89jbJp" alt=""><figcaption></figcaption></figure>

13. The users can View Details to add the elements, Edit, Disable, and Delete.

<figure><img src="/files/TDbXJ8G5tuh2eFfFVlcN" alt=""><figcaption></figcaption></figure>

14. Click on Edit to update the Deeplink data:

<figure><img src="/files/7Tokmd8ACjrDXKAkRJLf" alt=""><figcaption></figcaption></figure>

Also, read about the Deep Links Report, [here](/detailed-documentation/reports/deep-links-report.md).&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.qapilot.io/detailed-documentation/test-plan-executions/deep-links.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
