Skip to content

Robot Framework Selenium - Cannot reliably click/scroll in Flutter web canvas elements #1936

@Abratexz

Description

@Abratexz

I'm internship QA testing and completely new to testing right now. I'm on Flutter web application with Robot Framework and Selenium Library. My task is to perform end-to-end (E2E) testing on a Flutter web app that heavily uses canvas structure. The test cases involve basic interactions such as clicking, pointing, focusing, and scrolling to elements. Initially, my team suggested using aria-label attributes as keys for identifying elements, which worked well for basic actions.

However, I've encountered several issues when trying a test scenario involving:

Logging in

Selecting a menu item

Editing profile data

Scrolling within a card

Returning to the homepage

The problem starts from the login step, where using standard Selenium actions (Click Element and Input Text) results in errors saying the elements are intercepted or hidden by Flutter. To bypass this, I used the Press Keys function to simulate typing and pressing the Enter key, which allowed me to log in.

After logging in, I was able to interact with menu elements using key presses, but the next major issue arose with scrolling. The website has a scrollable card component, and none of the methods I've tried (Scroll Element Into View, document.scrollIntoView(), or window.scroll) seem to fully scroll the element into view. They only scroll partially or don't scroll at all, leaving elements out of view.

Could someone experienced in Robot Framework and Selenium testing with Flutter web apps provide guidance or recommend workarounds to handle interactions reliably, especially control scrolling and focus Element within Flutter canvas structures?

of course, I'm trying asking ChatGPT ,Sonnet and OTHER AI b4 posting

Some error picture

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions