Skip to content

Commit 70a0b56

Browse files
authored
Merge pull request #2240 from Private1647/stage
Drag Drop & Deeplink docs added
2 parents 64c53a8 + e6b990b commit 70a0b56

File tree

4 files changed

+268
-22
lines changed

4 files changed

+268
-22
lines changed
106 KB
Loading

docs/kane-ai-deeplink-support.md

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
---
2+
id: kane-ai-deeplink-support
3+
title: Deeplinks Support for Mobile App Authoring
4+
hide_title: false
5+
sidebar_label: Deeplinks
6+
description: Learn how to use deeplinks in KaneAI to directly navigate to specific screens in your Android and iOS mobile applications during test authoring.
7+
keywords:
8+
- lambdatest automation
9+
- lambdatest kaneai
10+
- kaneai deeplink
11+
- mobile app testing
12+
- deeplink navigation
13+
- android deeplink
14+
- ios deeplink
15+
url: https://www.lambdatest.com/support/docs/kane-ai-deeplink-support/
16+
site_name: LambdaTest
17+
slug: kane-ai-deeplink-support/
18+
---
19+
20+
import Tabs from '@theme/Tabs';
21+
import TabItem from '@theme/TabItem';
22+
23+
## What are Deeplinks?
24+
25+
Deeplinks are URL-based mechanisms that allow you to directly access specific screens and functionalities within your mobile application, bypassing standard navigation flows. In the context of mobile app testing with KaneAI, deeplinks enable testers to quickly navigate to targeted screens and perform context-aware actions without manually navigating through the app interface.
26+
27+
## How Deeplinks Work in KaneAI
28+
29+
When you use deeplinks in KaneAI during mobile app test authoring, the system:
30+
31+
1. Accepts a deeplink URL from the user
32+
2. Identifies the target application package (Android) or bundle ID (iOS)
33+
3. Invokes the deeplink within the active app session
34+
4. Navigates directly to the specified screen or performs the defined action
35+
36+
KaneAI automatically pre-fills the application package or bundle ID based on the app currently installed in your test session, making the process seamless and intuitive.
37+
38+
39+
## Adding Deeplinks in KaneAI
40+
41+
### Step 1: Access the Deeplink Feature
42+
43+
During your mobile app test authoring session in KaneAI, you can add a deeplink instruction using the following method:
44+
45+
- Type a **slash (/)** in the input box and select the **Deeplink** option from the menu
46+
47+
<img loading="lazy" src={require('../assets/images/kane-ai/features/add-deeplink-modal.png').default} alt="Add Deeplink Modal" className="doc_img"/>
48+
49+
### Step 2: Configure Deeplink Parameters
50+
51+
Once the deeplink modal appears, provide the following information:
52+
53+
1. **URL*** (Required)
54+
- Enter the complete deeplink URL
55+
- Example: `kaneai://settings` or `myapp://product/123`
56+
57+
2. **App package for target*** (Required)
58+
- For **Android**: Enter the application package name (e.g., `com.example.QAapp`)
59+
- For **iOS**: Enter the bundle ID (e.g., `com.example.QAapp`)
60+
- KaneAI automatically pre-fills this field with the currently installed app's package or bundle ID
61+
62+
### Step 3: Add to Test Steps
63+
64+
Click the **Add in steps** button to include the deeplink instruction in your test case. KaneAI will execute this step during test runs, invoking the specified deeplink within your target application.
65+
66+
67+
## Best Practices
68+
69+
1. **Verify Deeplink Support:** Ensure your mobile application has proper deeplink handling implemented before using this feature in tests.
70+
71+
2. **Test Deeplink Validity:** Manually verify deeplinks work correctly in your app before adding them to automated test cases.
72+
73+
3. **Handle Edge Cases:** Consider scenarios where deeplinks might fail (e.g., user not logged in, invalid parameters) and add appropriate assertions.
74+
75+
4. **Combine with Assertions:** After invoking a deeplink, add assertion steps to verify the correct screen was loaded and displays expected content.
76+
77+
78+
## Troubleshooting
79+
80+
### Deeplink Not Working
81+
82+
- Verify the deeplink URL format is correct
83+
- Ensure the target app package/bundle ID matches the installed application
84+
- Check if the app has proper deeplink handling configured
85+
- Confirm the app is already running in the test session
86+
87+
### Wrong Screen Opens
88+
89+
- Double-check the deeplink path and parameters
90+
- Verify your app's deeplink routing configuration
91+
- Ensure no conflicting deeplink schemes exist
92+
93+
### App Crashes on Deeplink
94+
95+
- Validate the deeplink with your development team
96+
- Check if required data or permissions are available
97+
- Review app logs for specific error messages
98+
99+
---
100+
101+
> **Need Help?** If you have questions about deeplink implementation or encounter issues, contact our <span className="doc__lt" onClick={() => window.openLTChatWidget()}>support team</span> for assistance.

docs/kane-ai-drag-drop.md

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
---
2+
id: kane-ai-drag-drop
3+
title: Drag and Drop for Web applications
4+
hide_title: false
5+
sidebar_label: Drag and Drop
6+
description: Learn how to test drag and drop interactions in KaneAI using natural language commands and manual recording for complex web interactions.
7+
keywords:
8+
- lambdatest automation
9+
- lambdatest kaneai
10+
- kaneai drag drop
11+
- drag and drop testing
12+
- click and drag
13+
url: https://www.lambdatest.com/support/docs/kane-ai-drag-drop/
14+
site_name: LambdaTest
15+
slug: kane-ai-drag-drop/
16+
---
17+
18+
import Tabs from '@theme/Tabs';
19+
import TabItem from '@theme/TabItem';
20+
import CodeBlock from '@theme/CodeBlock';
21+
import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/component/keys";
22+
23+
A wide range of applications incorporate drag and drop features, enabling users to reorganize and position elements within the interface. KaneAI now supports **drag and drop** and **click and drag** interactions in web applications on Desktop, enabling you to test complex UI interactions like moving items between containers, adjusting sliders, resizing elements, and working with flow charts. This feature provides two methods for capturing these interactions: natural language commands and manual recording.
24+
25+
## Supported Interaction Types
26+
27+
### Drag and Drop (Natural Language)
28+
Use natural language commands to move elements between defined drop zones. This method is ideal for straightforward drag and drop operations where both the source and target elements are clearly visible. This is not ideal in case the source or the target elements are not clearly visible.
29+
30+
**Examples:**
31+
- `Drag item 4 from source items to drop target`
32+
- `Drag and drop product card from available items to shopping cart`
33+
- `Move file from folder A to folder B`
34+
35+
:::tip
36+
Natural language drag and drop works best when:
37+
- Drop zones are explicitly defined and visible
38+
- You're moving items between containers
39+
- The target location is static (not dynamically generated)
40+
:::
41+
42+
### Click and Drag (Manual Interaction)
43+
Record click and drag actions manually during test authoring. This method provides precise control for complex interactions like sliders, resizing, and canvas operations.
44+
45+
**Use Cases:**
46+
- Adjusting slider values
47+
- Resizing elements
48+
- Moving elements in flow charts
49+
- Dragging within canvas or drawing areas
50+
51+
:::tip
52+
Manual recording is recommended for:
53+
- Slider adjustments
54+
- Element resizing
55+
- Flow chart interactions
56+
- Any scenario where drop locations aren't explicitly defined
57+
:::
58+
59+
## Supported Scenarios
60+
61+
### ✅ What Works
62+
- **Drag and Drop (Natural Language)**
63+
- Moving items between visible containers
64+
- Transferring elements to defined drop zones
65+
- Simple drag operations within the same page context
66+
- Kanban board card movements
67+
- File upload via drag and drop
68+
- **Click and Drag (Manual Interaction)**
69+
- All drag scenarios - works reliably in any case
70+
- Slider value adjustments
71+
- Resizing elements and panels
72+
- Drawing and canvas interactions
73+
- Flow chart and diagram manipulation
74+
- List item reordering
75+
- Precise positioning of elements
76+
77+
### ⚠️ Limitations
78+
79+
#### Natural Language Limitations
80+
- **List reordering** - Cannot reorder list items using natural language
81+
- **Pixel-based commands** - Cannot specify exact pixel offsets (e.g., "drag 50px right")
82+
- **Dynamic targets** - Cannot drag to targets that appear only during drag
83+
- **Undefined drop zones** - May not work if drop locations aren't explicitly defined
84+
85+
#### General Limitations
86+
- **Cross-context dragging** - Cannot drag between iframes or shadow DOMs
87+
- **Multi-element dragging** - Cannot drag multiple elements simultaneously
88+
- **Mobile drag and drop** - Not supported on mobile devices
89+
- **Editing restrictions** - Click and drag instructions cannot be edited after recording
90+
91+
### When to Use Each Method
92+
93+
| Scenario | Natural Language | Manual Interaction |
94+
|----------|-----------------|------------------|
95+
| Container to container transfer | ✅ Recommended | ✅ Works |
96+
| Slider adjustments | ❌ Not supported | ✅ Recommended |
97+
| Element resizing | ❌ Not supported | ✅ Recommended |
98+
| List reordering | ❌ Not supported | ✅ Recommended |
99+
| Flow charts | ❌ Limited | ✅ Recommended |
100+
| Kanban boards | ✅ Recommended | ✅ Works |
101+
| Canvas drawing | ❌ Limited | ✅ Recommended |
102+
103+
104+
## Example Use Cases
105+
106+
### E-commerce Product Sorting
107+
```
108+
Drag product "iPhone 15" from available items to comparison table
109+
```
110+
111+
### Project Management Board
112+
```
113+
Move task card from "To Do" column to "In Progress" column
114+
```
115+
116+
### Form Builder
117+
Use manual interaction to:
118+
- Drag form fields from palette to canvas
119+
- Resize input fields
120+
- Reorder form sections
121+
122+
### Data Visualization Dashboard
123+
Use manual interaction to:
124+
- Adjust date range sliders
125+
- Resize chart panels
126+
- Rearrange dashboard widgets

sidebars.js

Lines changed: 41 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1284,6 +1284,7 @@ module.exports = {
12841284
"kaneai-hyperexecute-test-run-execution",
12851285
"kaneai-ci-cd-automation",
12861286
"test-runs-configurations",
1287+
"kaneai-scheduled-test-runs",
12871288
],
12881289
},
12891290
{
@@ -1307,30 +1308,48 @@ module.exports = {
13071308
collapsed: true,
13081309
label: "Features",
13091310
items: [
1310-
"kaneai-manual-interaction",
1311-
"kane-ai-javascript-execution",
1312-
"kane-ai-geolocation-tunnel-proxy",
1313-
"kaneai-auto-heal",
1314-
"kane-ai-scroll-in-feature",
1315-
"kane-ai-jira-integration",
1316-
"kane-ai-api-testing",
1317-
"kane-ai-network-assertions",
1318-
"kane-ai-mobile-app-capabilities",
1319-
"kaneai-network-throttling",
1320-
"kane-ai-modules",
1321-
"kaneai-modules-versions-and-enhancement",
1322-
"kaneai-upload-and-download-files",
1323-
"kaneai-dynamic-url-replacement",
1324-
"kaneai-chrome-options",
1325-
"kaneai-custom-headers",
1326-
"kaneai-totp",
1327-
"kaneai-scheduled-test-runs",
13281311
{
1329-
type: "doc",
1330-
label: "Visual Testing",
1331-
id: "kaneai-smartui-visual-testing",
1312+
type: "category",
1313+
collapsed: true,
1314+
label: "Common",
1315+
items: [
1316+
"kaneai-manual-interaction",
1317+
"kane-ai-javascript-execution",
1318+
"kane-ai-geolocation-tunnel-proxy",
1319+
"kaneai-auto-heal",
1320+
"kane-ai-scroll-in-feature",
1321+
"kane-ai-jira-integration",
1322+
"kane-ai-api-testing",
1323+
"kane-ai-modules",
1324+
"kaneai-modules-versions-and-enhancement",
1325+
"kaneai-upload-and-download-files",
1326+
"kaneai-totp",
1327+
"kaneai-database",
1328+
],
1329+
},
1330+
{
1331+
type: "category",
1332+
collapsed: true,
1333+
label: "Desktop Browser",
1334+
items: [
1335+
"kane-ai-network-assertions",
1336+
"kane-ai-drag-drop",
1337+
"kaneai-dynamic-url-replacement",
1338+
"kaneai-chrome-options",
1339+
"kaneai-custom-headers",
1340+
"kaneai-smartui-visual-testing",
1341+
],
1342+
},
1343+
{
1344+
type: "category",
1345+
collapsed: true,
1346+
label: "Mobile",
1347+
items: [
1348+
"kane-ai-mobile-app-capabilities",
1349+
"kane-ai-deeplink-support",
1350+
"kaneai-network-throttling",
1351+
],
13321352
},
1333-
"kaneai-database",
13341353
],
13351354
},
13361355
{

0 commit comments

Comments
 (0)