Skip to content
Open
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
1 change: 0 additions & 1 deletion docs/modules/scriptless-automation/nav.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
** xref:get-a-session-id/using-the-kobiton-portal.adoc[]
** xref:get-a-session-id/using-the-kobiton-api.adoc[]

* xref:run-scriptless-with-the-kobiton-portal.adoc[]
* xref:run-scriptless-with-the-kobiton-api.adoc[]
* xref:automation-testing:scripting/auto-generate-an-appium-script.adoc[]
* xref:scriptless-best-practices.adoc[]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
= Create a baseline session for Scriptless Automation
:navtitle: Create a baseline session

Learn how to create a baseline session for Scriptless Automation. After you create a baseline session, you can use the xref:run-scriptless-with-the-kobiton-portal.adoc[Kobiton portal] or xref:run-scriptless-with-the-kobiton-api.adoc[Kobiton API] to rerun your test steps on the same device or on completely different devices--_without_ writing any test scripts.
Learn how to create a baseline session for Scriptless Automation. You can use this session to xref:test-management:test-case/create-a-test-case.adoc[create a test case].

include::manual-testing:partial$start-a-manual-session.adoc[]

Expand Down Expand Up @@ -47,4 +47,4 @@ Select *Exit Session*.

image:exit-session-context.png[width=500,alt="Exit Session pop up"]

Now you can use this session to run Scriptless Automation using the xref:run-scriptless-with-the-kobiton-portal.adoc[Kobiton portal] or xref:run-scriptless-with-the-kobiton-api.adoc[Kobiton API].
Now you can use this session to xref:test-management:test-case/create-a-test-case.adoc[create a test case].

This file was deleted.

Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Diff not rendered.
37 changes: 23 additions & 14 deletions docs/modules/test-management/nav.adoc
Original file line number Diff line number Diff line change
@@ -1,14 +1,23 @@
.xref:index.adoc[]
* xref:test-management:create-a-test-case.adoc[]
* xref:test-management:manage-test-steps.adoc[]

* xref:test-management:validation/index.adoc[]
** xref:test-management:validation/performance-validation.adoc[]
** xref:test-management:validation/color-text-validation.adoc[]
** xref:test-management:validation/text-validation.adoc[]

* xref:test-management:remediation/index.adoc[]
** xref:test-management:remediation/annotate-a-test-step.adoc[]
** xref:test-management:remediation/crash-remediation.adoc[]
** xref:test-management:remediation/element-selection-remediation.adoc[]
** xref:test-management:remediation/ignore-remediation.adoc[]
.xref:index.adoc[]

* Test case
** xref:test-case/create-a-test-case.adoc[]
** xref:test-case/manage-test-steps.adoc[]

* Test suite
** xref:test-management:test-suite/create-and-manage-test-suite.adoc[]

* Test run
** xref:test-management:test-run/create-and-manage-test-run.adoc[]
** xref:test-management:test-run/review-test-run-results.adoc[]

* xref:test-management:validation/index.adoc[]
** xref:test-management:validation/performance-validation.adoc[]
** xref:test-management:validation/color-text-validation.adoc[]
** xref:test-management:validation/text-validation.adoc[]

* xref:test-management:remediation/index.adoc[]
** xref:test-management:remediation/annotate-a-test-step.adoc[]
** xref:test-management:remediation/crash-remediation.adoc[]
** xref:test-management:remediation/element-selection-remediation.adoc[]
** xref:test-management:remediation/ignore-remediation.adoc[]
31 changes: 0 additions & 31 deletions docs/modules/test-management/pages/create-a-test-case.adoc

This file was deleted.

34 changes: 0 additions & 34 deletions docs/modules/test-management/pages/manage-test-steps.adoc

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,37 +1,73 @@
= Annotate a test step for Scriptless Automation
:navtitle: Annotate a test step
= Remediate element selection
:navtitle: Remediate element selection

Learn how to annotate a test step from your xref:scriptless-automation:create-a-baseline-session.adoc[baseline session], so you can...
Learn how to remediate element selection when the AI is not confident that it can accurately identify elements due to complex layout or overlapping elements. Remediation ensures that all test steps are correct, improving the reliability and success rate of automated test runs.

== What is element selection remediation?

When you complete the baseline session, Kobiton's AI Engine analyzes the performed actions and identifies which visual elements were interacted with. However, there are cases where multiple visual elements overlap, causing the AI Engine to return low confidence in selecting the correct element.

In these cases, the AI requires user input to select the correct element.

NOTE: You can only remediate steps with Touch action.

NOTE: Element selection remediation is optional but recommended. Without remediation, the AI may select the wrong element during a test run, decreasing the likelihood of success.

== Before you start

You'll need to xref:scriptless-automation:create-a-baseline-session.adoc[create a baseline session].
* Create a baseline session.
* Convert the baseline session to test case.

== Remediate element selection

After converting a session to a test case, if any steps needs remediation, the following message appears next to Test Steps:

image:test-management:remediation-remediate-element-selection-test-steps-message.PNG[width=750,alt="Remediation required message with warning that a specific number of steps require remediation"]

Select the *Remediate test steps* button.

The *Element Selection Remediation* popup appears as shown for steps with touch action:

image:test-management:remediation-remediate-element-selection-touch-action-steps.PNG[width=750,alt="Steps with touch action"]

In this popup, you are provided with the following tools to assist in remediating:

* Navigation buttons to switch between test step:

image:test-management:remediation-remediate-element-selection-naigation-steps.PNG[width=300,atl="Next page and previous page buttons"]

== Annotate a test step
* The element inspector with element hierarchy and attributes:

In *Sessions*, xref:session-explorer:search-for-a-session.adoc[search for a session], then select the session.
image:test-management:remediation-remediate-element-selection-element-inspector.PNG[width=750,alt="element inspector with element hierarchy and attributes"]

image:select-a-session-context.png[width=1000,alt="Search and select a session"]
* Screenshot of the test step with the selected element highlighted, and the dot showing the coordinates of the touch action:

Select *Automation Test Case*.
image:test-management:remediation-remediate-element-selection-touch-action-coordinates.PNG[width=300,alt="dot showing the coordinates of the touch action"]

image:select-automated-test-case-context.png[width=1000,alt="Select Automated Test Case"]
To remediate a test step:

If one of your test steps were flagged, you'll see a warning similar to the following:
. Navigate to the test step using the navigation buttons.
. Select an element from either the element hierarchy or the screenshot. Refer to the https://kobiton.atlassian.net/wiki/spaces/KOBITON/pages/3640131693/Remediate+element+selection+Review#Remediation-guidelines[remediation guidelines] when selecting the element.
+
NOTE: You can hover the mouse over the screenshot to highlight the element closest to it.
. When finished, select *Submit*.
+
CAUTION: Once you submit, you cannot remediate the same test step again. Proceed with caution.

image:annotate-warning-context.png[width=1000,alt="Test steps are flagged with the below warning"]
Repeat these steps for all test steps that need remediation. Once all test steps have been remediated, the following message will appear:

Scroll through your test steps and look for any steps highlighted in red with the option to annotate.
image:test-management:remediation-remediate-element-selection-test-steps-message-success.PNG[width=750,alt="Remediation steps completion popup, success message"]

image:select-annotate-closeup.png[width=900,alt="Select Annotate"]
Select the *Save* button to save the changes to a new test case version.

Select *Annotate*.
CAUTION: Changes will not be automatically saved.

image:test-case-ready-to-go-context.png[width=1000,alt="Test cases are ready to go"]
At this point, the test case is fully prepared and ready for test runs.

== Annotation options
== Remediation guidelines

These are the different options for annotating a test step:
When remediating, follow these guidelines:

** xref:test-management:remediation/crash-remediation.adoc[]
** xref:test-management:remediation/element-selection-remediation.adoc[]
* Select the element that is as low in the hierarchy as possible, while ensuring it is still the correct element.
* Chose the element closest to the original touch action.
* Whenever possible, select an element with a unique attribute.
Original file line number Diff line number Diff line change
@@ -1,12 +1,70 @@
= Element selection remediation
:navtitle: Element selection remediation
= Resolve a blocker
:navtitle: Resolve a blocker

The User Interface (UI) of an element often changes across multiple devices. This can interrupt revisits on different devices because it's challenging to manage the appearance of an element through various device ratios, like 18:9, 17:9, and 16:9. But, with Scriptless Automation, you can easily handle these challenges through the UI without any scripting.
Learn how to resolve a blocker using Blocker Remediation, so you can execute the test run successfully.

image:scriptless-automation:ui-remediation-window.png[width=700,alt="UI Remediation window"]
== What is a blocker?

When revisiting on a Galaxy J5, a blocker is raised because a UI change covers and makes the **Login** button un-clickable. You can resolve this by manually selecting the **Login** button in the Scriptless Automation Remediation. This selection becomes the new 'baseline' for the test case, ensuring smooth execution.
In test steps that use the touch action, the user interface (UI) of an element often changes across multiple devices. If the difference is significant, the AI will raise a blocker and is unable to select the element.

image:scriptless-automation:ui-remediation2.png[width=700,alt="Another view of UI Remediation window"]
This situation can disrupt revisits on different devices due to difficulties in managing element appearance across various screen ratios, such as 18:9, 17:9, and 16:9. However, you can easily resolve these issues in Test Management without scripting by using Blocker Remediation.

In situations where different screen ratios crop a list view cell, making it undetectable, this would typically result in a failed test case with other “Record & Playback” technologies. However, with Scriptless Automation, you can select the correct list view cell and submit the remediation to continue the test.
== Resolve a blocker

When a blocker is encountered, the *Test Run Results* page will display the *Needs Actions* status:

image:test-management:remediation-resolve-a-blocker-needs-action-status.PNG[width=750]

Select the *Needs Actions* status to go to the *Session Explorer* page.

In the Session Timeline, the step with the blocker is marked with a red icon. Select this icon, then choose *Resolve Blocker*.

image:test-management:remediation-resolve-a-blocker-session-explorer.PNG[width=750,alt="Session timeline with blocker marked with a red icon."]

The *Blocker Remediation* popup appears:

image:test-management:remediation-resolve-a-blocker-blocker-remediation-popup.PNG[width=750,alt="Blocker Remediation popup with Baseline and Revisit screens"]

The following tools will help you remediate:

* Navigation buttons to switch between test steps.

image:test-management:remediation-resolve-a-blocker-navigation-buttons.PNG[width=750,alt="Navigation buttons to switch between test steps"]

* The original screenshot of the baseline session is shown alongside the screenshot of the revisit session.
** The selected element is highlighted in the *Baseline* screenshot.
** Hover the mouse over the *Revisit* screenshot to highlight the element closest to it.

image:test-management:remediation-resolve-a-blocker-baseline-revisit.PNG[width=750,alt="Selected element is highlighted. Hover over the Revisit screenshot to highlight the element."]

To remediate a test step:

. Navigate to the desired test step using the navigation buttons.
+
NOTE: You can only navigate to test steps that use the touch action
. Select an element from the Revisit screenshot.
. When finished, select Submit.

NOTE: You can only resolve blocker for one test step in one revisit session. If a test run has many test steps that require Blocker Remediation, rerun the test run again, resolve the next blocker, and repeat until there is no blocker left.

CAUTION: Once you submit, you cannot resolve the blocker for the current session again. Proceed with caution.

After submitting, the submitted test step will be set as the new baseline when running the same test case on any device with the same model and OS version. To verify, rerun the test run again on any device with the same model and OS version.

== Notes

Blocker Remediation does not work in the following cases:

* The element does not involve a touch action, such as swiping or scrolling.
* The element’s position and appearance is not static, such as:
** Floating element.
** Element that can hide or display based on user behavior (playback button in videos player).
** Element with animations.
* The element cannot be identified via Appium Inspector, such as _label_ or _xPath_, and requires touching on an exact coordinate on the screen. For example, an object in a mobile game.
* The element is outside the current view and requires additional actions to be visible, such as scrolling vertically more than 5 pages, scrolling horizontally, or swiping left/right.
+
NOTE: The AI can automatically find the element by scrolling vertically within a 5-page range.
* The element is not selectable due to a bug.
* An in-app pop-up (that did not appear in the baseline session) blocks the element from being selected.

NOTE: System pop-ups, such as software update notices, are automatically dismissed by the AI.
Loading
Loading