diff --git a/assets/images/kane-ai/features/new-test-run-instance/test-run-instance-auto-heal-step.png b/assets/images/kane-ai/features/new-test-run-instance/test-run-instance-auto-heal-step.png new file mode 100644 index 000000000..0adb529e5 Binary files /dev/null and b/assets/images/kane-ai/features/new-test-run-instance/test-run-instance-auto-heal-step.png differ diff --git a/assets/images/kane-ai/features/new-test-run-instance/test-run-instance-share.png b/assets/images/kane-ai/features/new-test-run-instance/test-run-instance-share.png new file mode 100644 index 000000000..6d1fcfb00 Binary files /dev/null and b/assets/images/kane-ai/features/new-test-run-instance/test-run-instance-share.png differ diff --git a/docs/kane-ai-drag-drop.md b/docs/kane-ai-drag-drop.md index 4bffdebdb..0416f1378 100644 --- a/docs/kane-ai-drag-drop.md +++ b/docs/kane-ai-drag-drop.md @@ -36,6 +36,23 @@ You can author a drag step in two ways: - **Natural Language (NL)** — describe the drag in plain English (e.g. `drag "Card A" to "Column B"`). - **Manual Interaction** — perform the gesture on the device or browser viewport and have it captured as a step. +## Drag and Drop vs Click and Drag + +KaneAI supports two distinct drag interactions. They look similar but behave differently, and they are **not interchangeable**: + +- **Drag and Drop** — the element is first **long-pressed** to pick it up, and only then moved to the target. This is the standard gesture for moving items between containers and works on **all platforms**. +- **Click and Drag** — the element is pressed and moved **immediately, without any long press**. This is how interactions such as sliders, canvas drawing, and element resizing work, and it is available on **Desktop Web only**. + +| | Drag and Drop | Click and Drag | +| --- | --- | --- | +| **Gesture** | Long press on the element first, then move it to the target | Press and move in one continuous motion — no long press | +| **Platforms** | Desktop Web, Android App, iOS App, Mobile Web | Desktop Web only | +| **Typical scenarios** | Kanban cards, list reordering, container-to-container transfer | Sliders, canvas drawing, element resizing, range selection | + +:::note +If a drag step fails on an element that doesn't respond to a long press (for example a slider thumb or a canvas), the element likely expects **Click and Drag** rather than Drag and Drop. Click and Drag has its own constraints — see [Limitations](#limitations). +::: + ## Supported Platforms @@ -190,6 +207,8 @@ Use Manual Interaction to adjust date-range sliders, resize chart panels, and re - **Cross-context dragging** — drags between iframes or shadow DOMs are not supported. - **Multi-element dragging** — cannot drag multiple elements simultaneously. - **Advanced NL** (e.g., `drag X up by 50px`, offset-based reorder) — on the roadmap; currently rejected with a graceful error. +- **Click and Drag via NL** — not supported as a natural language test step; supported only via Manual Interaction. Desktop Web only. +- **Click and Drag speed** — executes slowly by design so the dragged element stays in focus during the movement; faster execution could cause the element to lose focus mid-drag. - **NL slider authoring** — not supported. Use Manual Interaction. - **NL confirmation gestures** (slide-to-confirm) — not supported. Use Manual Interaction. - **Drag and drop on canvas-based elements via NL** — canvas elements rely on custom rendering; use Manual Interaction. @@ -197,6 +216,12 @@ Use Manual Interaction to adjust date-range sliders, resize chart panels, and re ## FAQs +**What is the difference between Drag and Drop and Click and Drag?** +Drag and Drop long-presses the element to pick it up before moving it, and works on all platforms. Click and Drag presses and moves the element immediately without a long press, and is available on Desktop Web only. See [Drag and Drop vs Click and Drag](#drag-and-drop-vs-click-and-drag). + +**Why is my Click and Drag step slow?** +This is expected. Click and Drag executes deliberately slowly to keep the dragged element in focus throughout the movement — a faster gesture could cause the element to lose focus mid-drag and fail the step. + **Can I author a slider drag with natural language?** No. Sliders have moving targets that NL cannot resolve reliably. Use Manual Interaction to capture the slider gesture directly. The captured step replays at ≥ 95% success rate across devices. diff --git a/docs/kaneai-scroll-until-mobile.md b/docs/kaneai-scroll-until-mobile.md index 5b9a52eab..c41459bfc 100644 --- a/docs/kaneai-scroll-until-mobile.md +++ b/docs/kaneai-scroll-until-mobile.md @@ -11,6 +11,8 @@ keywords: - scroll until element - natural language commands - mobile scrolling + - horizontal scrolling + - nested container scrolling url: https://www.testmuai.com/support/docs/kaneai-scroll-until-mobile/ site_name: TestMu AI slug: kaneai-scroll-until-mobile/ @@ -95,6 +97,8 @@ Clearly specify what the agent should find and what action to perform once found | Button Interaction | `Scroll until Submit button and click on it.` | | Subsection Navigation | `Scroll inside a subsection until date input field and click on it.` | | Dropdown Selection | `Scroll inside the dropdown until 'New option' and select it.` | +| Horizontal Scrolling (Mobile App) | `Scroll right inside the carousel until 'Best Sellers' is visible.` | +| Nested Container (Mobile App) | `Scroll inside the reviews section until 'Load more' button and click on it.` | --- @@ -106,12 +110,12 @@ Please be aware of the following constraints in the current version. ### Mobile App Authoring +:::tip Now Supported +Mobile app authoring now supports **horizontal scrolling** and **scrolling inside nested containers** (element scrolling). You can scroll left or right — for example inside carousels — and scroll within specific container elements such as dropdowns, lists, and subsections instead of only the main viewport. +::: + - **Scroll Limit**: Maximum of **20 scroll attempts** are performed. If the element is not found, the action fails. -- **Horizontal Scrolling**: - ❌ Not supported (only vertical scrolling is available). -- **Nested Containers**: - ❌ Scrolling inside specific container elements is not supported; only the main viewport can be scrolled. - **Directional Extremes**: ❌ Commands such as *“Scroll to top”* or *“Scroll to bottom”* are not supported. @@ -137,7 +141,7 @@ If you encounter execution issues, refer to the table below: |------------------------|-----------------|----------| | Maximum Scroll Limit Reached | Element is beyond 20 scrolls or not present | Verify element visibility and ensure it appears within 20 scrolls | | Element Not Found | Non-interactable or plain text element (Mobile Browser) | Target a button, link, or input field instead | -| Scroll Timeout | Element is inside a nested container (App Agent) | Use manual scroll steps if element is not in the main viewport | +| Scroll Timeout | Element is inside a nested container that was not specified in the command | Name the container in the instruction (e.g., "Scroll inside the reviews section until ...") | | Command Not Recognized | Usage of IDs, XPaths, or attributes | Rewrite using visible text or element type (e.g., "button") | --- diff --git a/docs/kaneai-test-run-instance-view.md b/docs/kaneai-test-run-instance-view.md index dd12120bb..3cfa275ed 100644 --- a/docs/kaneai-test-run-instance-view.md +++ b/docs/kaneai-test-run-instance-view.md @@ -13,6 +13,8 @@ keywords: - root cause analysis - test debugging - test manager + - auto-heal visibility + - share test run url: https://www.testmuai.com/support/docs/kaneai-test-run-instance-view/ site_name: TestMu AI slug: kaneai-test-run-instance-view/ @@ -90,6 +92,12 @@ Steps that include sub-actions - such as loops, conditionals, or JavaScript snip test-instance-steps-panel +#### Auto-Heal Visibility + +When [Auto-Heal](/support/docs/kaneai-auto-heal/) recovers a step during execution, that step displays an **auto-heal indicator** icon next to its execution duration in the steps panel. This gives you clear, step-level visibility into exactly which steps were healed in a run — without digging through execution logs. + +auto-heal-indicator-on-step + #### Autoplay Steps Click the **Autoplay Steps** button at the top of the steps panel to automatically walk through each step in sequence. As each step is highlighted, the center panel updates to show the corresponding screenshot captured during execution. This provides a visual replay of the entire test execution without needing to click through each step manually. @@ -173,6 +181,20 @@ Click the **View tests** button in the top-right corner to open a panel listing navigate-between-tests +## Share a Test Run Instance + +You can share a test run instance page publicly with stakeholders — including people who do not have a account. Click the **Share** icon in the top-right corner of the instance view to open the share dialog. + +share-test-run-instance + +The share dialog provides the following options: + +- **Expiry Duration** - Choose how long the shared link remains accessible (for example, **View: 7 Days**). After the link expires, it can no longer be opened. +- **Email ID(s)** - Enter one or more email addresses and click **Invite** to send the link directly, with an optional **Message** for context. +- **Copy Link** - Copy a shareable link to the clipboard and distribute it yourself. + +Anyone with an active shared link can view the test run instance — including the steps, screenshots, and execution details — until the link expires. + --- ## Limitations