{"id":6446,"library":"robotframework-seleniumtestability","title":"Robot Framework SeleniumTestability","description":"Robot Framework SeleniumTestability is a library that enhances Robot Framework's SeleniumLibrary by providing additional keywords to handle asynchronous events and improve test stability for modern web applications. It helps in waiting for page readiness, Angular, jQuery, and network idle states. The current version is 2.1.0, with releases often coinciding with major SeleniumLibrary or Selenium updates.","status":"active","version":"2.1.0","language":"en","source_language":"en","source_url":"https://github.com/marketsquare/robotframework-seleniumtestability","tags":["robot framework","selenium","web testing","asynchronous","test automation"],"install":[{"cmd":"pip install robotframework-seleniumtestability","lang":"bash","label":"Install latest version"}],"dependencies":[{"reason":"Version 2.0.0+ of this library requires Selenium 4 or greater for compatibility with modern SeleniumLibrary versions.","package":"selenium","optional":false},{"reason":"This library extends SeleniumLibrary and is designed to be used in conjunction with it. SeleniumLibrary must be installed and configured separately to provide the underlying browser automation.","package":"robotframework-seleniumlibrary","optional":false}],"imports":[{"note":"This library is loaded within Robot Framework test suites using the 'Library' keyword in .robot files, not via standard Python 'import' statements. The `Library` keyword makes the keywords available in the test suite.","symbol":"SeleniumTestability","correct":"Library    SeleniumTestability"}],"quickstart":{"code":"*** Settings ***\nLibrary    SeleniumLibrary    timeout=10s\nLibrary    SeleniumTestability\n\n*** Test Cases ***\nExample Test With Async Waits\n    Open Browser    https://example.com    chrome\n    Wait For Page Ready\n    Title Should Be    Example Domain\n    # Example: If your application uses jQuery, Angular, or waits for network idle\n    # Wait For JQuery Ready\n    # Wait For Angular Ready\n    # Wait Until Network Idle\n    Close Browser","lang":"robotframework","description":"This quickstart demonstrates how to include SeleniumTestability in your Robot Framework project and use its core 'Wait For Page Ready' keyword to ensure the page is fully loaded, including common asynchronous operations, before proceeding with test steps. Ensure `SeleniumLibrary` is also imported and configured."},"warnings":[{"fix":"Upgrade your 'selenium' package to version 4+ and 'robotframework-seleniumlibrary' to a compatible version (e.g., 5.0+), or pin 'robotframework-seleniumtestability' to an earlier version like `robotframework-seleniumtestability<2.0.0`.","message":"Version 2.0.0 introduced a breaking change requiring Selenium 4 (or greater) due to updates in Robot Framework SeleniumLibrary. If you are using an older SeleniumLibrary or Selenium 3, you must either upgrade your Selenium stack or use an older version of robotframework-seleniumtestability (<2.0.0).","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Combine SeleniumTestability's broad waits (e.g., 'Wait For Page Ready') with specific SeleniumLibrary waits for unique application behaviors (e.g., 'Wait Until Element Is Enabled' or custom `Wait Until Keyword Succeeds`).","message":"This library complements, but does not fully replace, the need for robust SeleniumLibrary waits. While it provides general asynchronous waits, complex or custom asynchronous operations might still require explicit 'Wait Until Element Is Visible' or 'Wait Until Element Contains' from SeleniumLibrary.","severity":"gotcha","affected_versions":"all"},{"fix":"Always include `Library    SeleniumLibrary` with its necessary arguments (like `timeout`) before `Library    SeleniumTestability` in your Robot Framework settings files (`.robot`). Ensure SeleniumLibrary is properly installed and its browser initialization keywords are used.","message":"Ensure SeleniumLibrary is imported and configured correctly *before* SeleniumTestability in your Robot Framework settings. SeleniumTestability relies on the browser context established by SeleniumLibrary.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-04-15T00:00:00.000Z","next_check":"2026-07-14T00:00:00.000Z"}