Flaky test in CI. Click without wait sometimes hit overlay before render complete. Add Wait For Elements State before Click.
7.5 KiB
Task 17: UI Settings Modal - Close Settings Modal Via Overlay
Suite: Robot.Ui.Settings Modal
Test: Close Settings Modal Via Overlay
Result: FAIL
Error: TimeoutError: locator.click: Timeout 10000ms exceeded. waiting for locator('id=config-modal .modal-overlay')
Instructions:
- The test tries to click a
.modal-overlayelement inside#config-modal, but the element is not found. - Inspect the settings modal HTML structure in the frontend.
- The overlay element may have a different class name (e.g.,
.modal-backdrop,.overlay) or may not exist as a separate element. - Update the locator in
tests/robot/ui/settings_modal.robotto match the actual DOM structure. - If the overlay click-to-close behavior is missing, implement it in the frontend.
Task 18: UI Settings Modal - Close Settings Modal Via Escape
Suite: Robot.Ui.Settings Modal
Test: Close Settings Modal Via Escape
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 3000ms exceeded. waiting for locator('id=config-modal') to be hidden — locator resolved to visible <div class="modal" id="config-modal">…</div>
Instructions:
- The test presses the Escape key to close the settings modal, but the modal remains visible.
- Investigate the modal JavaScript/frontend code to see if Escape key handling is implemented.
- If Escape-to-close is missing, add an event listener in the frontend that closes
#config-modalonkeydownwithkey === 'Escape'. - If the behavior exists but is broken, debug why the modal is not closing.
- Alternatively, update the test to use a different close method if Escape is not supported.
Task 19: UI Settings Modal - Disable Scheduler
Suite: Robot.Ui.Settings Modal
Test: Disable Scheduler
Result: FAIL
Error: TimeoutError: locator.uncheck: Timeout 10000ms exceeded. waiting for locator('id=scheduled-rescan-enabled') — element is not visible
Instructions:
- The test tries to uncheck
#scheduled-rescan-enabled, but the checkbox is not visible. - The checkbox may be inside a collapsed tab, hidden panel, or require scrolling.
- Investigate the settings modal layout — the scheduler settings may be on a different tab or section.
- Update the test in
tests/robot/ui/settings_modal.robotto navigate to the correct tab/section before interacting with the checkbox. - Alternatively, ensure the checkbox is visible when the modal opens.
Task 20: UI Settings Modal - Edit Backup Settings
Suite: Robot.Ui.Settings Modal
Test: Edit Backup Settings
Result: FAIL
Error: TimeoutError: locator.check: Timeout 10000ms exceeded. waiting for locator('id=backup-enabled') — element is not visible
Instructions:
- The test tries to check
#backup-enabled, but the checkbox is not visible. - Same root cause as Task 19: the backup settings may be inside a collapsed tab or hidden panel.
- Update the test in
tests/robot/ui/settings_modal.robotto navigate to the correct tab/section before interacting with the checkbox. - Ensure the backup settings section is visible when the modal opens or after clicking the appropriate tab.
Task 21: UI Settings Modal - Edit NFO Settings
Suite: Robot.Ui.Settings Modal
Test: Edit NFO Settings
Result: FAIL
Error: TimeoutError: locator.check: Timeout 10000ms exceeded. waiting for locator('id=nfo-auto-create') — element is not visible
Instructions:
- The NFO settings fields suffer from visibility issues similar to Tasks 19 and 20.
- Verify the test in
tests/robot/ui/settings_modal.robotcorrectly navigates to the NFO settings tab/section. - Ensure all form elements are visible before interacting with them.
- Update locators if the element IDs or structure changed.
Task 22: UI Setup Flow - Setup Page Loads
Suite: Robot.Ui.Setup Flow
Test: Setup Page Loads
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 5000ms exceeded. waiting for locator('id=setup-form') to be visible
Instructions:
- The setup flow tests expect
#setup-formto be visible, but it is not found. - Investigate the setup page frontend code.
- The app may already be configured, causing the setup page to redirect to the dashboard instead of showing the form.
- Check if a suite-level setup/teardown resets the app to an unconfigured state before running setup flow tests.
- Update the test setup in
tests/robot/ui/setup_flow.robotor the backend to ensure the setup form is available.
Task 23: UI Setup Flow - Password Strength Weak
Suite: Robot.Ui.Setup Flow
Test: Password Strength Weak
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 5000ms exceeded. waiting for locator('id=setup-form') to be visible
Instructions:
- Same root cause as Task 22: the setup form is not visible.
- Fix the suite setup so the app is in an unconfigured state before each setup flow test.
- Ensure
#setup-formis rendered when navigating to the setup page.
Task 24: UI Setup Flow - Password Strength Medium
Suite: Robot.Ui.Setup Flow
Test: Password Strength Medium
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 5000ms exceeded. waiting for locator('id=setup-form') to be visible
Instructions:
- Same root cause as Task 22: the setup form is not visible.
- Fix the suite setup so the app is in an unconfigured state before each setup flow test.
- Ensure
#setup-formis rendered when navigating to the setup page.
Task 25: UI Setup Flow - Password Strength Strong
Suite: Robot.Ui.Setup Flow
Test: Password Strength Strong
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 5000ms exceeded. waiting for locator('id=setup-form') to be visible
Instructions:
- Same root cause as Task 22: the setup form is not visible.
- Fix the suite setup so the app is in an unconfigured state before each setup flow test.
- Ensure
#setup-formis rendered when navigating to the setup page.
Task 26: UI Setup Flow - Setup Form Validation Empty Password
Suite: Robot.Ui.Setup Flow
Test: Setup Form Validation Empty Password
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 5000ms exceeded. waiting for locator('id=setup-form') to be visible
Instructions:
- Same root cause as Task 22: the setup form is not visible.
- Fix the suite setup so the app is in an unconfigured state before each setup flow test.
- Ensure
#setup-formis rendered when navigating to the setup page.
Task 27: UI Setup Flow - Setup Form Validation Mismatched Passwords
Suite: Robot.Ui.Setup Flow
Test: Setup Form Validation Mismatched Passwords
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 5000ms exceeded. waiting for locator('id=setup-form') to be visible
Instructions:
- Same root cause as Task 22: the setup form is not visible.
- Fix the suite setup so the app is in an unconfigured state before each setup flow test.
- Ensure
#setup-formis rendered when navigating to the setup page.
Task 28: UI Setup Flow - Complete Setup Flow
Suite: Robot.Ui.Setup Flow
Test: Complete Setup Flow
Result: FAIL
Error: TimeoutError: locator.waitFor: Timeout 5000ms exceeded. waiting for locator('id=setup-form') to be visible
Instructions:
- Same root cause as Task 22: the setup form is not visible.
- Fix the suite setup so the app is in an unconfigured state before each setup flow test.
- Ensure
#setup-formis rendered when navigating to the setup page.