robotframework / robotframework/SeleniumLibrary

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

Open
#1,936 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1.5k
Forks
787
PR merge metrics
No merged PRs in 30d

Description

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

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No repository file, test, or entry point is named; start by reproducing the login, focus, and scrolling scenario against the Flutter web application described in the issue. A useful outcome would be a confirmed, project-specific workaround or a clearly scoped reproducible bug, but the issue does not define a repository change or test for completion.

Written by the indexing model from the issue text.

Assessment

Tech stack
flutter, python
Domain
testing-qa, web-dev
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
18/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.