Skip to content

[grid] Session can be deleted via Grid UI #15808

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Jun 23, 2025
Merged

[grid] Session can be deleted via Grid UI #15808

merged 13 commits into from
Jun 23, 2025

Conversation

VietND96
Copy link
Member

@VietND96 VietND96 commented May 28, 2025

User description

🔗 Related Issues

Fixes #11519 - the oldest and most voted request.

💥 What does this PR do?

On Sessions view, adding a button to delete the session in the session capabilities dialog.
Assume that the user can enable basic auth to limit UI access, or disable Grid UI to prevent everyone from doing this.

Screen.Recording.2025-05-28.at.21.55.20.mp4

How to enable the deletion of any session on UI?

  • Set Node CLI config --delete-session-on-ui true or similar in TOML config.
  • Set capability from client code to override per session. For example: options.setCapability("se:deleteSessionOnUi", true)
Screen.Recording.2025-06-20.at.16.53.56.mp4

🔧 Implementation Notes

  • Request URL is construct from session capability webSocketUrl (a session enabled BiDi) after removing /se/ and everything after in path.
  • If session is not enabled BiDi, there is no capability webSocketUrl, request URL will be constructed based on current window.location.href after removing /ui/ and everything after in path

💡 Additional Considerations

🔄 Types of changes

  • Cleanup (formatting, renaming)
  • Bug fix (backwards compatible)
  • New feature (non-breaking change which adds functionality and tests!)
  • Breaking change (fix or feature that would cause existing functionality to change)

PR Type

Enhancement, Tests


Description

  • Add session deletion feature to Grid UI

    • Implements delete button and confirmation dialog in session info
    • Handles feedback for success and error cases
  • Add comprehensive tests for session deletion

    • Test UI, URL construction, error handling, and dialog behavior

Changes walkthrough 📝

Relevant files
Enhancement
RunningSessions.tsx
Implement session deletion UI and logic in RunningSessions

javascript/grid-ui/src/components/RunningSessions/RunningSessions.tsx

  • Added state and handlers for session deletion and feedback dialogs
  • Implemented delete button in session info dialog
  • Added confirmation and feedback dialogs for deletion process
  • Constructed correct DELETE request URLs based on session capabilities
  • +152/-8 
    Tests
    RunningSessions.test.tsx
    Add tests for session deletion UI and logic                           

    javascript/grid-ui/src/tests/components/RunningSessions.test.tsx

  • Mocked fetch and window.location for test environment
  • Added test sessions with and without webSocketUrl
  • Added tests for delete button, confirmation dialog, URL logic, and
    feedback
  • Verified error handling and dialog closing in deletion flow
  • +248/-2 

    Need help?
  • Type /help how to ... in the comments thread for any questions about Qodo Merge usage.
  • Check out the documentation for more information.
  • Copy link
    Contributor

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 PR contains tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    URL Construction

    The URL construction logic for session deletion has inconsistencies. When using webSocketUrl, it attempts to extract the base path from the URL, but the logic may not handle all URL formats correctly. The fallback URL construction uses a different approach.

    let deleteUrl = ''
    
    const parsed = JSON.parse(session.capabilities)
    let wsUrl = parsed['webSocketUrl'] ?? ''
    if (wsUrl.length > 0) {
      try {
        const url = new URL(origin)
        const sessionUrl = new URL(wsUrl)
        url.pathname = sessionUrl.pathname.split('/se/')[0] // Remove /se/ and everything after
        url.protocol = sessionUrl.protocol === 'wss:' ? 'https:' : 'http:'
        deleteUrl = url.href
      } catch (error) {
        deleteUrl = ''
      }
    }
    
    if (!deleteUrl) {
      const currentUrl = window.location.href
      const baseUrl = currentUrl.split('/ui/')[0] // Remove /ui/ and everything after
      deleteUrl = `${baseUrl}/session/${sessionToDelete}`
    }
    
    Error Handling

    The error handling in the delete session function could be improved. It catches errors but doesn't distinguish between different types of errors (network, parsing, etc.) which could help provide more specific feedback to users.

    } catch (error) {
      console.error('Error deleting session:', error)
      setFeedbackMessage('Error deleting session')
      setFeedbackSeverity('error')
    }
    

    Copy link
    Contributor

    qodo-merge-pro bot commented May 28, 2025

    PR Code Suggestions ✨

    Explore these optional code suggestions:

    CategorySuggestion                                                                                                                                    Impact
    Possible issue
    Use correct WebSocket URL

    The code is using the wrong WebSocket URL property. It should use
    'se:gridWebSocketUrl' instead of 'webSocketUrl' for session deletion. The
    'webSocketUrl' points to the BiDi endpoint, while 'se:gridWebSocketUrl' contains
    the correct session URL.

    javascript/grid-ui/src/components/RunningSessions/RunningSessions.tsx [272-284]

     const parsed = JSON.parse(session.capabilities)
    -let wsUrl = parsed['webSocketUrl'] ?? ''
    +let wsUrl = parsed['se:gridWebSocketUrl'] ?? ''
     if (wsUrl.length > 0) {
       try {
         const url = new URL(origin)
         const sessionUrl = new URL(wsUrl)
         url.pathname = sessionUrl.pathname.split('/se/')[0] // Remove /se/ and everything after
         url.protocol = sessionUrl.protocol === 'wss:' ? 'https:' : 'http:'
         deleteUrl = url.href
       } catch (error) {
         deleteUrl = ''
       }
     }
    • Apply / Chat
    Suggestion importance[1-10]: 8

    __

    Why: This addresses a potential bug where the code uses webSocketUrl (BiDi endpoint) instead of se:gridWebSocketUrl (session URL) for deletion, which could cause incorrect URL construction for DELETE requests.

    Medium
    Improve URL fallback logic

    The fallback URL construction doesn't handle the case when the URL doesn't
    contain '/ui/'. Add a check to ensure the URL is properly constructed even if
    the expected pattern isn't found.

    javascript/grid-ui/src/components/RunningSessions/RunningSessions.tsx [286-290]

     if (!deleteUrl) {
       const currentUrl = window.location.href
    -  const baseUrl = currentUrl.split('/ui/')[0] // Remove /ui/ and everything after
    +  const baseUrl = currentUrl.includes('/ui/') 
    +    ? currentUrl.split('/ui/')[0] 
    +    : window.location.origin
       deleteUrl = `${baseUrl}/session/${sessionToDelete}`
     }
    • Apply / Chat
    Suggestion importance[1-10]: 6

    __

    Why: This improves robustness by handling edge cases where the URL doesn't contain /ui/, preventing potential URL construction issues in different deployment scenarios.

    Low
    • Update

    Copy link
    Member

    @diemol diemol left a comment

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    This needs to be protected under some flag because I know people will complain about having this option open without any validation.

    @VietND96 VietND96 added the B-grid Everything grid and server related label Jun 8, 2025
    @VietND96

    This comment was marked as outdated.

    @SeleniumHQ SeleniumHQ deleted a comment from qodo-merge-pro bot Jun 19, 2025
    Copy link
    Contributor

    qodo-merge-pro bot commented Jun 19, 2025

    CI Feedback 🧐

    (Feedback updated until commit 85a991e)

    A test triggered by this PR failed. Here is an AI-generated analysis of the failure:

    Action: Test / All RBE tests

    Failed stage: Run Bazel [❌]

    Failed test name: //java/test/org/openqa/selenium/grid/router:StressTest-remote

    Failure summary:

    The action failed because the test //java/test/org/openqa/selenium/grid/router:StressTest-remote
    timed out after running for over 2000 seconds (approximately 33 minutes). The test exceeded the
    maximum allowed execution time and was terminated with a TIMEOUT status. The test ran for 602.1s in
    its final attempt and consistently timed out across multiple runs.

    Relevant error logs:
    1:  ##[group]Runner Image Provisioner
    2:  Hosted Compute Agent
    ...
    
    947:  Package 'php-sql-formatter' is not installed, so not removed
    948:  Package 'php8.3-ssh2' is not installed, so not removed
    949:  Package 'php-ssh2-all-dev' is not installed, so not removed
    950:  Package 'php8.3-stomp' is not installed, so not removed
    951:  Package 'php-stomp-all-dev' is not installed, so not removed
    952:  Package 'php-swiftmailer' is not installed, so not removed
    953:  Package 'php-symfony' is not installed, so not removed
    954:  Package 'php-symfony-asset' is not installed, so not removed
    955:  Package 'php-symfony-asset-mapper' is not installed, so not removed
    956:  Package 'php-symfony-browser-kit' is not installed, so not removed
    957:  Package 'php-symfony-clock' is not installed, so not removed
    958:  Package 'php-symfony-debug-bundle' is not installed, so not removed
    959:  Package 'php-symfony-doctrine-bridge' is not installed, so not removed
    960:  Package 'php-symfony-dom-crawler' is not installed, so not removed
    961:  Package 'php-symfony-dotenv' is not installed, so not removed
    962:  Package 'php-symfony-error-handler' is not installed, so not removed
    963:  Package 'php-symfony-event-dispatcher' is not installed, so not removed
    ...
    
    1141:  Package 'php-twig-html-extra' is not installed, so not removed
    1142:  Package 'php-twig-i18n-extension' is not installed, so not removed
    1143:  Package 'php-twig-inky-extra' is not installed, so not removed
    1144:  Package 'php-twig-intl-extra' is not installed, so not removed
    1145:  Package 'php-twig-markdown-extra' is not installed, so not removed
    1146:  Package 'php-twig-string-extra' is not installed, so not removed
    1147:  Package 'php8.3-uopz' is not installed, so not removed
    1148:  Package 'php-uopz-all-dev' is not installed, so not removed
    1149:  Package 'php8.3-uploadprogress' is not installed, so not removed
    1150:  Package 'php-uploadprogress-all-dev' is not installed, so not removed
    1151:  Package 'php8.3-uuid' is not installed, so not removed
    1152:  Package 'php-uuid-all-dev' is not installed, so not removed
    1153:  Package 'php-validate' is not installed, so not removed
    1154:  Package 'php-vlucas-phpdotenv' is not installed, so not removed
    1155:  Package 'php-voku-portable-ascii' is not installed, so not removed
    1156:  Package 'php-wmerrors' is not installed, so not removed
    1157:  Package 'php-xdebug-all-dev' is not installed, so not removed
    ...
    
    1836:  AccessController.doPrivileged(
    1837:  ^
    1838:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/action_test.html -> javascript/atoms/test/action_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1839:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/attribute_test.html -> javascript/atoms/test/attribute_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1840:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/child_locator_test.html -> javascript/atoms/test/child_locator_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1841:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_link_test.html -> javascript/atoms/test/click_link_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1842:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_submit_test.html -> javascript/atoms/test/click_submit_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1843:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_test.html -> javascript/atoms/test/click_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1844:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/clientrect_test.html -> javascript/atoms/test/clientrect_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1845:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/color_test.html -> javascript/atoms/test/color_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1846:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/deps.js -> javascript/atoms/test/deps.js obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1847:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/dom_test.html -> javascript/atoms/test/dom_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1848:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/drag_test.html -> javascript/atoms/test/drag_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1849:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/enabled_test.html -> javascript/atoms/test/enabled_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1850:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/enter_submit_test.html -> javascript/atoms/test/enter_submit_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1851:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/error_test.html -> javascript/atoms/test/error_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1852:  (16:24:27) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/events_test.html -> javascript/atoms/test/events_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    ...
    
    2019:  * `Zip::OutputStream`
    2020:  * `Zip::DOSTime`
    2021:  Run your test suite with the `RUBYZIP_V3_API_WARN` environment
    2022:  variable set to see warnings about usage of the old API. This will
    2023:  help you to identify any changes that you need to make to your code.
    2024:  See https://github.com/rubyzip/rubyzip/wiki/Updating-to-version-3.x for
    2025:  more information.
    2026:  Please ensure that your Gemfiles and .gemspecs are suitably restrictive
    2027:  to avoid an unexpected breakage when 3.0 is released (e.g. ~> 2.3.0).
    2028:  See https://github.com/rubyzip/rubyzip for details. The Changelog also
    2029:  lists other enhancements and bugfixes that have been implemented since
    2030:  version 2.3.0.
    2031:  2 installed gems you directly depend on are looking for funding.
    2032:  Run `bundle fund` for details
    2033:  (16:24:28) �[32mINFO: �[0mFrom Building java/src/org/openqa/selenium/remote/libapi-class.jar (69 source files):
    2034:  java/src/org/openqa/selenium/remote/ErrorHandler.java:46: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2035:  private final ErrorCodes errorCodes;
    2036:  ^
    2037:  java/src/org/openqa/selenium/remote/ErrorHandler.java:60: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2038:  this.errorCodes = new ErrorCodes();
    2039:  ^
    2040:  java/src/org/openqa/selenium/remote/ErrorHandler.java:68: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2041:  public ErrorHandler(ErrorCodes codes, boolean includeServerErrors) {
    2042:  ^
    2043:  java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2044:  ErrorCodes errorCodes = new ErrorCodes();
    2045:  ^
    2046:  java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2047:  ErrorCodes errorCodes = new ErrorCodes();
    2048:  ^
    2049:  java/src/org/openqa/selenium/remote/ProtocolHandshake.java:181: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2050:  response.setStatus(ErrorCodes.SUCCESS);
    2051:  ^
    2052:  java/src/org/openqa/selenium/remote/ProtocolHandshake.java:182: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2053:  response.setState(ErrorCodes.SUCCESS_STRING);
    2054:  ^
    2055:  java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:53: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2056:  new ErrorCodes().toStatus((String) rawError, Optional.of(tuple.getStatusCode())));
    2057:  ^
    2058:  java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:56: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2059:  new ErrorCodes().getExceptionType((String) rawError);
    2060:  ^
    2061:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2062:  private final ErrorCodes errorCodes = new ErrorCodes();
    2063:  ^
    2064:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2065:  private final ErrorCodes errorCodes = new ErrorCodes();
    2066:  ^
    2067:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:55: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2068:  int status = response.getStatus() == ErrorCodes.SUCCESS ? HTTP_OK : HTTP_INTERNAL_ERROR;
    2069:  ^
    2070:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:101: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2071:  response.setStatus(ErrorCodes.UNKNOWN_COMMAND);
    2072:  ^
    2073:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:103: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2074:  response.setStatus(ErrorCodes.UNHANDLED_ERROR);
    2075:  ^
    2076:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:117: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2077:  response.setStatus(ErrorCodes.SUCCESS);
    2078:  ^
    2079:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:118: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2080:  response.setState(errorCodes.toState(ErrorCodes.SUCCESS));
    2081:  ^
    2082:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:124: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2083:  response.setState(errorCodes.toState(ErrorCodes.SUCCESS));
    2084:  ^
    2085:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:70: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2086:  private final ErrorCodes errorCodes = new ErrorCodes();
    2087:  ^
    2088:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:70: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2089:  private final ErrorCodes errorCodes = new ErrorCodes();
    2090:  ^
    2091:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:93: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2092:  response.setStatus(ErrorCodes.UNKNOWN_COMMAND);
    2093:  ^
    2094:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:98: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2095:  response.setStatus(ErrorCodes.UNHANDLED_ERROR);
    2096:  ^
    2097:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:145: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2098:  response.setStatus(ErrorCodes.SUCCESS);
    2099:  ^
    ...
    
    2175:  return self._open_to_write(zinfo, force_zip64=force_zip64)
    2176:  (16:24:52) �[32mAnalyzing:�[0m 2373 targets (1668 packages loaded, 62823 targets configured)
    2177:  �[32m[10,246 / 11,413]�[0m 102 / 1806 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 8s ... (50 actions, 5 running)
    2178:  (16:24:57) �[32mAnalyzing:�[0m 2373 targets (1670 packages loaded, 63097 targets configured)
    2179:  �[32m[10,269 / 11,473]�[0m 102 / 1812 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 13s ... (50 actions, 7 running)
    2180:  (16:25:02) �[32mAnalyzing:�[0m 2373 targets (1676 packages loaded, 63186 targets configured)
    2181:  �[32m[10,288 / 11,611]�[0m 102 / 1850 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 18s ... (50 actions, 9 running)
    2182:  (16:25:07) �[32mAnalyzing:�[0m 2373 targets (1676 packages loaded, 63186 targets configured)
    2183:  �[32m[10,310 / 11,864]�[0m 102 / 1936 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 23s ... (50 actions, 10 running)
    2184:  (16:25:12) �[32mAnalyzing:�[0m 2373 targets (1680 packages loaded, 63238 targets configured)
    2185:  �[32m[10,327 / 12,203]�[0m 102 / 2065 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 28s ... (50 actions, 10 running)
    2186:  (16:25:17) �[32mAnalyzing:�[0m 2373 targets (1681 packages loaded, 63491 targets configured)
    2187:  �[32m[10,370 / 12,509]�[0m 102 / 2337 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 33s ... (50 actions, 11 running)
    2188:  (16:25:21) �[32mINFO: �[0mAnalyzed 2373 targets (1684 packages loaded, 65280 targets configured).
    2189:  (16:25:21) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/json/JsonTest.jar (1 source file):
    2190:  java/test/org/openqa/selenium/json/JsonTest.java:430: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2191:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));
    2192:  ^
    2193:  java/test/org/openqa/selenium/json/JsonTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2194:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));
    2195:  ^
    2196:  java/test/org/openqa/selenium/json/JsonTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2197:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(32));
    2198:  ^
    2199:  (16:25:22) �[32m[10,413 / 12,593]�[0m 102 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 38s ... (50 actions, 12 running)
    2200:  (16:25:24) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.jar (1 source file):
    2201:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:26: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2202:  import static org.openqa.selenium.remote.ErrorCodes.METHOD_NOT_ALLOWED;
    2203:  ^
    2204:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:55: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2205:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.SUCCESS);
    2206:  ^
    2207:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:81: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2208:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);
    2209:  ^
    2210:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:107: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2211:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);
    2212:  ^
    2213:  (16:25:27) �[32m[10,455 / 12,639]�[0m 102 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 43s ... (50 actions, 12 running)
    2214:  (16:25:33) �[32m[10,497 / 12,679]�[0m 102 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 48s ... (50 actions, 12 running)
    2215:  (16:25:38) �[32m[10,540 / 12,712]�[0m 102 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 54s ... (50 actions, 12 running)
    2216:  (16:25:43) �[32m[10,583 / 12,729]�[0m 102 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 59s ... (50 actions, 12 running)
    2217:  (16:25:48) �[32m[10,627 / 12,734]�[0m 103 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 64s ... (50 actions, 11 running)
    2218:  (16:25:53) �[32m[10,669 / 12,744]�[0m 103 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 69s ... (50 actions, 12 running)
    2219:  (16:25:58) �[32m[10,743 / 12,782]�[0m 109 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 74s ... (50 actions, 12 running)
    2220:  (16:26:03) �[32m[10,804 / 12,806]�[0m 111 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 79s ... (50 actions, 12 running)
    2221:  (16:26:08) �[32m[10,847 / 12,818]�[0m 111 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 84s ... (50 actions, 12 running)
    2222:  (16:26:13) �[32m[10,888 / 12,826]�[0m 111 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 89s ... (50 actions, 12 running)
    2223:  (16:26:16) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/RemotableByTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):
    2224:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2225:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
    2226:  ^
    2227:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2228:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
    2229:  ^
    2230:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2231:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
    2232:  ^
    2233:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2234:  private final ErrorCodes errorCodes = new ErrorCodes();
    2235:  ^
    2236:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2237:  private final ErrorCodes errorCodes = new ErrorCodes();
    2238:  ^
    2239:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2240:  private final ErrorCodes errorCodes = new ErrorCodes();
    2241:  ^
    2242:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2243:  private final ErrorCodes errorCodes = new ErrorCodes();
    2244:  ^
    2245:  (16:26:18) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/ErrorHandlerTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):
    2246:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:79: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2247:  handler.throwIfResponseFailed(createResponse(ErrorCodes.SUCCESS), 100);
    2248:  ^
    2249:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:85: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2250:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);
    2251:  ^
    2252:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:86: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2253:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);
    2254:  ^
    2255:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:87: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2256:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);
    2257:  ^
    2258:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:88: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2259:  assertThrowsCorrectExceptionType(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);
    2260:  ^
    2261:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:90: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2262:  ErrorCodes.METHOD_NOT_ALLOWED, UnsupportedCommandException.class);
    2263:  ^
    2264:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:92: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2265:  ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);
    2266:  ^
    2267:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:94: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2268:  ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);
    2269:  ^
    2270:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:95: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2271:  assertThrowsCorrectExceptionType(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);
    2272:  ^
    2273:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:107: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2274:  Response response = createResponse(ErrorCodes.UNHANDLED_ERROR);
    2275:  ^
    2276:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:120: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2277:  createResponse(ErrorCodes.UNHANDLED_ERROR, "boom"), 123))
    2278:  ^
    2279:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:133: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2280:  createResponse(ErrorCodes.UNHANDLED_ERROR, ImmutableMap.of("message", "boom")),
    2281:  ^
    2282:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:147: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2283:  ErrorCodes.UNHANDLED_ERROR,
    2284:  ^
    2285:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:167: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2286:  ErrorCodes.UNHANDLED_ERROR,
    2287:  ^
    2288:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:193: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2289:  createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))
    2290:  ^
    2291:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:214: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2292:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2293:  ^
    2294:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:248: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2295:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2296:  ^
    2297:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:280: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2298:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2299:  ^
    2300:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:308: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2301:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2302:  ^
    2303:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:327: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2304:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2305:  ^
    2306:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:355: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2307:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2308:  ^
    2309:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:394: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2310:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2311:  ^
    2312:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:426: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2313:  createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))
    2314:  ^
    2315:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:435: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2316:  exceptions.put(ErrorCodes.NO_SUCH_SESSION, NoSuchSessionException.class);
    2317:  ^
    2318:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:436: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2319:  exceptions.put(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);
    2320:  ^
    2321:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:437: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2322:  exceptions.put(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);
    2323:  ^
    2324:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:438: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2325:  exceptions.put(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);
    2326:  ^
    2327:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:439: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2328:  exceptions.put(ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);
    2329:  ^
    2330:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:440: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2331:  exceptions.put(ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);
    2332:  ^
    2333:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2334:  exceptions.put(ErrorCodes.UNHANDLED_ERROR, WebDriverException.class);
    2335:  ^
    2336:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:442: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2337:  exceptions.put(ErrorCodes.JAVASCRIPT_ERROR, JavascriptException.class);
    2338:  ^
    2339:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:443: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2340:  exceptions.put(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);
    2341:  ^
    2342:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:444: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2343:  exceptions.put(ErrorCodes.TIMEOUT, TimeoutException.class);
    2344:  ^
    2345:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:445: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2346:  exceptions.put(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);
    2347:  ^
    2348:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:446: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2349:  exceptions.put(ErrorCodes.INVALID_COOKIE_DOMAIN, InvalidCookieDomainException.class);
    2350:  ^
    2351:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:447: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2352:  exceptions.put(ErrorCodes.UNABLE_TO_SET_COOKIE, UnableToSetCookieException.class);
    2353:  ^
    2354:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:448: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2355:  exceptions.put(ErrorCodes.UNEXPECTED_ALERT_PRESENT, UnhandledAlertException.class);
    2356:  ^
    2357:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:449: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2358:  exceptions.put(ErrorCodes.NO_ALERT_PRESENT, NoAlertPresentException.class);
    2359:  ^
    2360:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:450: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2361:  exceptions.put(ErrorCodes.ASYNC_SCRIPT_TIMEOUT, ScriptTimeoutException.class);
    2362:  ^
    2363:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:451: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2364:  exceptions.put(ErrorCodes.INVALID_SELECTOR_ERROR, InvalidSelectorException.class);
    2365:  ^
    2366:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:452: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2367:  exceptions.put(ErrorCodes.SESSION_NOT_CREATED, SessionNotCreatedException.class);
    2368:  ^
    2369:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:453: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2370:  exceptions.put(ErrorCodes.MOVE_TARGET_OUT_OF_BOUNDS, MoveTargetOutOfBoundsException.class);
    2371:  ^
    2372:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2373:  exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR, InvalidSelectorException.class);
    2374:  ^
    2375:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:455: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2376:  exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR_RETURN_TYPER, InvalidSelectorException.class);
    2377:  ^
    2378:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:469: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2379:  ? ErrorCodes.INVALID_SELECTOR_ERROR
    2380:  ^
    2381:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:471: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2382:  assertThat(new ErrorCodes().toStatusCode(e)).isEqualTo(expected);
    2383:  ^
    2384:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:483: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2385:  response.setState(new ErrorCodes().toState(status));
    2386:  ^
    2387:  (16:26:18) �[32m[10,930 / 12,848]�[0m 111 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 94s ... (50 actions, 13 running)
    2388:  (16:26:23) �[32m[10,973 / 12,855]�[0m 111 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 99s ... (50 actions, 13 running)
    2389:  (16:26:28) �[32m[11,015 / 12,867]�[0m 111 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 104s ... (50 actions, 14 running)
    2390:  (16:26:33) �[32m[11,137 / 12,917]�[0m 129 / 2373 tests;�[0m [Sched] Testing //javascript/selenium-webdriver:test-bidi-network-commands-test.js-firefox; 109s ... (50 actions, 14 running)
    2391:  (16:26:36) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/libsmall-tests-test-lib.jar (5 source files) and running annotation processors (AutoServiceProcessor):
    2392:  java/test/org/openqa/selenium/remote/WebDriverFixture.java:170: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2393:  response.setStatus(new ErrorCodes().toStatus(state, Optional.of(400)));
    2394:  ^
    ...
    
    2549:  (16:54:04) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1526s remote, remote-cache
    2550:  (16:55:04) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1586s remote, remote-cache
    2551:  (16:56:04) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1646s remote, remote-cache
    2552:  (16:57:04) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1706s remote, remote-cache
    2553:  (16:58:04) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1766s remote, remote-cache
    2554:  (16:59:05) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1826s remote, remote-cache
    2555:  (17:00:05) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1886s remote, remote-cache
    2556:  (17:01:05) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 1946s remote, remote-cache
    2557:  (17:02:05) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 2006s remote, remote-cache
    2558:  (17:02:42) �[32m[16,393 / 16,394]�[0m 2282 / 2373 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote; 2044s remote, remote-cache
    2559:  �[31m�[1mTIMEOUT: �[0m//java/test/org/openqa/selenium/grid/router:StressTest-remote (Summary)
    2560:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/grid/router/StressTest-remote/test.log
    2561:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/grid/router/StressTest-remote/test_attempts/attempt_1.log
    2562:  (17:02:42) �[32mINFO: �[0mFrom Testing //java/test/org/openqa/selenium/grid/router:StressTest-remote:
    2563:  stdout (/home/runner/.bazel/execroot/_main/bazel-out/_tmp/actions/stdout-15174) 192330006 exceeds maximum size of --experimental_ui_max_stdouterr_bytes=1048576 bytes; skipping
    2564:  (17:02:47) �[32m[16,411 / 16,412]�[0m 2300 / 2373 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-firefox-remote; 0s remote, remote-cache
    2565:  (17:02:52) �[32m[16,431 / 16,432]�[0m 2321 / 2373 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-chrome; 0s remote, remote-cache
    2566:  (17:02:57) �[32m[16,452 / 16,453]�[0m 2341 / 2373 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-edge-remote; 0s remote, remote-cache
    2567:  (17:03:02) �[32m[16,473 / 16,474]�[0m 2363 / 2373 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-edge-bidi; 0s remote, remote-cache
    2568:  (17:03:05) �[32mINFO: �[0mFound 2373 test targets...
    2569:  (17:03:05) �[32mINFO: �[0mElapsed time: 2435.605s, Critical Path: 2123.77s
    2570:  (17:03:05) �[32mINFO: �[0m15752 processes: 7757 remote cache hit, 7832 internal, 47 local, 116 remote.
    2571:  (17:03:05) �[32mINFO: �[0mBuild completed, 1 test FAILED, 15752 total actions
    2572:  (17:03:05) �[32mINFO:�[0m 
    ...
    
    2690:  //dotnet/test/common:ElementElementFindingTest-chrome           �[0m�[32m(cached) PASSED�[0m in 8.4s
    2691:  //dotnet/test/common:ElementElementFindingTest-edge             �[0m�[32m(cached) PASSED�[0m in 12.2s
    2692:  //dotnet/test/common:ElementElementFindingTest-firefox          �[0m�[32m(cached) PASSED�[0m in 17.7s
    2693:  //dotnet/test/common:ElementEqualityTest-chrome                 �[0m�[32m(cached) PASSED�[0m in 10.0s
    2694:  //dotnet/test/common:ElementEqualityTest-edge                   �[0m�[32m(cached) PASSED�[0m in 10.8s
    2695:  //dotnet/test/common:ElementEqualityTest-firefox                �[0m�[32m(cached) PASSED�[0m in 15.3s
    2696:  //dotnet/test/common:ElementFindingTest-chrome                  �[0m�[32m(cached) PASSED�[0m in 28.2s
    2697:  //dotnet/test/common:ElementFindingTest-edge                    �[0m�[32m(cached) PASSED�[0m in 36.5s
    2698:  //dotnet/test/common:ElementFindingTest-firefox                 �[0m�[32m(cached) PASSED�[0m in 56.1s
    2699:  //dotnet/test/common:ElementPropertyTest-chrome                 �[0m�[32m(cached) PASSED�[0m in 8.1s
    2700:  //dotnet/test/common:ElementPropertyTest-edge                   �[0m�[32m(cached) PASSED�[0m in 11.8s
    2701:  //dotnet/test/common:ElementPropertyTest-firefox                �[0m�[32m(cached) PASSED�[0m in 10.3s
    2702:  //dotnet/test/common:ElementSelectingTest-chrome                �[0m�[32m(cached) PASSED�[0m in 12.9s
    2703:  //dotnet/test/common:ElementSelectingTest-edge                  �[0m�[32m(cached) PASSED�[0m in 14.4s
    2704:  //dotnet/test/common:ElementSelectingTest-firefox               �[0m�[32m(cached) PASSED�[0m in 27.8s
    2705:  //dotnet/test/common:ErrorsTest-chrome                          �[0m�[32m(cached) PASSED�[0m in 6.7s
    2706:  //dotnet/test/common:ErrorsTest-edge                            �[0m�[32m(cached) PASSED�[0m in 7.5s
    2707:  //dotnet/test/common:ErrorsTest-firefox                         �[0m�[32m(cached) PASSED�[0m in 16.0s
    2708:  //dotnet/test/common:ExecutingAsyncJavascriptTest-chrome        �[0m�[32m(cached) PASSED�[0m in 20.9s
    ...
    
    3046:  //java/test/org/openqa/selenium:ElementEqualityTest             �[0m�[32m(cached) PASSED�[0m in 17.5s
    3047:  //java/test/org/openqa/selenium:ElementEqualityTest-chrome      �[0m�[32m(cached) PASSED�[0m in 10.4s
    3048:  //java/test/org/openqa/selenium:ElementEqualityTest-edge        �[0m�[32m(cached) PASSED�[0m in 13.0s
    3049:  //java/test/org/openqa/selenium:ElementEqualityTest-firefox-beta �[0m�[32m(cached) PASSED�[0m in 16.9s
    3050:  //java/test/org/openqa/selenium:ElementEqualityTest-spotbugs    �[0m�[32m(cached) PASSED�[0m in 9.4s
    3051:  //java/test/org/openqa/selenium:ElementFindingTest              �[0m�[32m(cached) PASSED�[0m in 49.4s
    3052:  //java/test/org/openqa/selenium:ElementFindingTest-chrome       �[0m�[32m(cached) PASSED�[0m in 26.6s
    3053:  //java/test/org/openqa/selenium:ElementFindingTest-edge         �[0m�[32m(cached) PASSED�[0m in 29.8s
    3054:  //java/test/org/openqa/selenium:ElementFindingTest-firefox-beta �[0m�[32m(cached) PASSED�[0m in 45.7s
    3055:  //java/test/org/openqa/selenium:ElementFindingTest-spotbugs     �[0m�[32m(cached) PASSED�[0m in 13.8s
    3056:  //java/test/org/openqa/selenium:ElementSelectingTest            �[0m�[32m(cached) PASSED�[0m in 29.9s
    3057:  //java/test/org/openqa/selenium:ElementSelectingTest-chrome     �[0m�[32m(cached) PASSED�[0m in 12.3s
    3058:  //java/test/org/openqa/selenium:ElementSelectingTest-edge       �[0m�[32m(cached) PASSED�[0m in 16.3s
    3059:  //java/test/org/openqa/selenium:ElementSelectingTest-firefox-beta �[0m�[32m(cached) PASSED�[0m in 28.8s
    3060:  //java/test/org/openqa/selenium:ElementSelectingTest-spotbugs   �[0m�[32m(cached) PASSED�[0m in 10.1s
    3061:  //java/test/org/openqa/selenium:ErrorsTest                      �[0m�[32m(cached) PASSED�[0m in 15.8s
    3062:  //java/test/org/openqa/selenium:ErrorsTest-chrome               �[0m�[32m(cached) PASSED�[0m in 7.7s
    3063:  //java/test/org/openqa/selenium:ErrorsTest-edge                 �[0m�[32m(cached) PASSED�[0m in 10.2s
    3064:  //java/test/org/openqa/selenium:ErrorsTest-firefox-beta         �[0m�[32m(cached) PASSED�[0m in 16.5s
    3065:  //java/test/org/openqa/selenium:ErrorsTest-spotbugs             �[0m�[32m(cached) PASSED�[0m in 8.0s
    3066:  //java/test/org/openqa/selenium:ExecutingAsyncJavascriptTest    �[0m�[32m(cached) PASSED�[0m in 36.8s
    ...
    
    3797:  //java/test/org/openqa/selenium/net:UrlsTest-spotbugs           �[0m�[32m(cached) PASSED�[0m in 9.0s
    3798:  //java/test/org/openqa/selenium/net:net-spotbugs                �[0m�[32m(cached) PASSED�[0m in 11.6s
    3799:  //java/test/org/openqa/selenium/netty/server:NettyServerTest    �[0m�[32m(cached) PASSED�[0m in 5.4s
    3800:  //java/test/org/openqa/selenium/netty/server:NettyServerTest-spotbugs �[0m�[32m(cached) PASSED�[0m in 12.3s
    3801:  //java/test/org/openqa/selenium/netty/server:RequestConverterTest �[0m�[32m(cached) PASSED�[0m in 1.6s
    3802:  //java/test/org/openqa/selenium/netty/server:RequestConverterTest-spotbugs �[0m�[32m(cached) PASSED�[0m in 9.5s
    3803:  //java/test/org/openqa/selenium/netty/server:WebSocketServingTest �[0m�[32m(cached) PASSED�[0m in 15.0s
    3804:  //java/test/org/openqa/selenium/netty/server:WebSocketServingTest-spotbugs �[0m�[32m(cached) PASSED�[0m in 11.1s
    3805:  //java/test/org/openqa/selenium/netty/server:medium-tests-test-lib-spotbugs �[0m�[32m(cached) PASSED�[0m in 10.5s
    3806:  //java/test/org/openqa/selenium/os:ExternalProcessTest          �[0m�[32m(cached) PASSED�[0m in 2.4s
    3807:  //java/test/org/openqa/selenium/os:ExternalProcessTest-spotbugs �[0m�[32m(cached) PASSED�[0m in 11.4s
    3808:  //java/test/org/openqa/selenium/remote:AugmenterTest            �[0m�[32m(cached) PASSED�[0m in 5.2s
    3809:  //java/test/org/openqa/selenium/remote:AugmenterTest-spotbugs   �[0m�[32m(cached) PASSED�[0m in 12.4s
    3810:  //java/test/org/openqa/selenium/remote:DesiredCapabilitiesTest  �[0m�[32m(cached) PASSED�[0m in 1.9s
    3811:  //java/test/org/openqa/selenium/remote:DesiredCapabilitiesTest-spotbugs �[0m�[32m(cached) PASSED�[0m in 12.0s
    3812:  //java/test/org/openqa/selenium/remote:ErrorCodecTest           �[0m�[32m(cached) PASSED�[0m in 2.2s
    3813:  //java/test/org/openqa/selenium/remote:ErrorCodecTest-spotbugs  �[0m�[32m(cached) PASSED�[0m in 7.4s
    3814:  //java/test/org/openqa/selenium/remote:ErrorHandlerTest         �[0m�[32m(cached) PASSED�[0m in 2.3s
    3815:  //java/test/org/openqa/selenium/remote:ErrorHandlerTest-spotbugs �[0m�[32m(cached) PASSED�[0m in 12.1s
    3816:  //java/test/org/openqa/selenium/remote:JsonToWebElementConverterTest �[0m�[32m(cached) PASSED�[0m in 1.5s
    ...
    
    4379:  //py:common-firefox-test/selenium/webdriver/support/relative_by_tests.py �[0m�[32m(cached) PASSED�[0m in 17.6s
    4380:  //py:test-chrome-test/selenium/webdriver/chrome/chrome_launcher_tests.py �[0m�[32m(cached) PASSED�[0m in 9.1s
    4381:  //py:test-chrome-test/selenium/webdriver/chrome/chrome_network_emulation_tests.py �[0m�[32m(cached) PASSED�[0m in 5.5s
    4382:  //py:test-chrome-test/selenium/webdriver/chrome/chrome_service_tests.py �[0m�[32m(cached) PASSED�[0m in 12.6s
    4383:  //py:test-chrome-test/selenium/webdriver/chrome/proxy_tests.py  �[0m�[32m(cached) PASSED�[0m in 4.3s
    4384:  //py:test-edge-test/selenium/webdriver/edge/edge_launcher_tests.py �[0m�[32m(cached) PASSED�[0m in 11.6s
    4385:  //py:test-edge-test/selenium/webdriver/edge/edge_service_tests.py �[0m�[32m(cached) PASSED�[0m in 17.3s
    4386:  //py:unit-test/unit/selenium/webdriver/chrome/chrome_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.5s
    4387:  //py:unit-test/unit/selenium/webdriver/common/cdp_module_fallback_tests.py �[0m�[32m(cached) PASSED�[0m in 4.4s
    4388:  //py:unit-test/unit/selenium/webdriver/common/common_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.0s
    4389:  //py:unit-test/unit/selenium/webdriver/common/fedcm/account_tests.py �[0m�[32m(cached) PASSED�[0m in 3.5s
    4390:  //py:unit-test/unit/selenium/webdriver/common/fedcm/dialog_tests.py �[0m�[32m(cached) PASSED�[0m in 3.1s
    4391:  //py:unit-test/unit/selenium/webdriver/common/print_page_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.4s
    4392:  //py:unit-test/unit/selenium/webdriver/edge/edge_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.4s
    4393:  //py:unit-test/unit/selenium/webdriver/firefox/firefox_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.2s
    4394:  //py:unit-test/unit/selenium/webdriver/remote/error_handler_tests.py �[0m�[32m(cached) PASSED�[0m in 3.7s
    4395:  //py:unit-test/unit/selenium/webdriver/remote/new_session_tests.py �[0m�[32m(cached) PASSED�[0m in 4.1s
    ...
    
    4461:  //rb/spec/integration/selenium/webdriver:driver-firefox-beta-remote �[0m�[32m(cached) PASSED�[0m in 65.8s
    4462:  //rb/spec/integration/selenium/webdriver:driver-firefox-bidi    �[0m�[32m(cached) PASSED�[0m in 27.0s
    4463:  //rb/spec/integration/selenium/webdriver:driver-firefox-remote  �[0m�[32m(cached) PASSED�[0m in 66.2s
    4464:  //rb/spec/integration/selenium/webdriver:element-chrome-beta    �[0m�[32m(cached) PASSED�[0m in 44.6s
    4465:  //rb/spec/integration/selenium/webdriver:element-chrome-beta-bidi �[0m�[32m(cached) PASSED�[0m in 19.8s
    4466:  //rb/spec/integration/selenium/webdriver:element-chrome-beta-remote �[0m�[32m(cached) PASSED�[0m in 54.6s
    4467:  //rb/spec/integration/selenium/webdriver:element-edge           �[0m�[32m(cached) PASSED�[0m in 48.4s
    4468:  //rb/spec/integration/selenium/webdriver:element-edge-bidi      �[0m�[32m(cached) PASSED�[0m in 21.7s
    4469:  //rb/spec/integration/selenium/webdriver:element-edge-remote    �[0m�[32m(cached) PASSED�[0m in 57.8s
    4470:  //rb/spec/integration/selenium/webdriver:element-firefox        �[0m�[32m(cached) PASSED�[0m in 68.3s
    4471:  //rb/spec/integration/selenium/webdriver:element-firefox-beta   �[0m�[32m(cached) PASSED�[0m in 84.2s
    4472:  //rb/spec/integration/selenium/webdriver:element-firefox-beta-bidi �[0m�[32m(cached) PASSED�[0m in 23.6s
    4473:  //rb/spec/integration/selenium/webdriver:element-firefox-beta-remote �[0m�[32m(cached) PASSED�[0m in 77.1s
    4474:  //rb/spec/integration/selenium/webdriver:element-firefox-bidi   �[0m�[32m(cached) PASSED�[0m in 24.8s
    4475:  //rb/spec/integration/selenium/webdriver:element-firefox-remote �[0m�[32m(cached) PASSED�[0m in 84.7s
    4476:  //rb/spec/integration/selenium/webdriver:error-chrome           �[0m�[32m(cached) PASSED�[0m in 21.8s
    4477:  //rb/spec/integration/selenium/webdriver:error-chrome-beta      �[0m�[32m(cached) PASSED�[0m in 22.0s
    4478:  //rb/spec/integration/selenium/webdriver:error-chrome-beta-bidi �[0m�[32m(cached) PASSED�[0m in 18.3s
    4479:  //rb/spec/integration/selenium/webdriver:error-chrome-beta-remote �[0m�[32m(cached) PASSED�[0m in 25.9s
    4480:  //rb/spec/integration/selenium/webdriver:error-chrome-bidi      �[0m�[32m(cached) PASSED�[0m in 19.7s
    4481:  //rb/spec/integration/selenium/webdriver:error-chrome-remote    �[0m�[32m(cached) PASSED�[0m in 26.1s
    4482:  //rb/spec/integration/selenium/webdriver:error-edge             �[0m�[32m(cached) PASSED�[0m in 25.0s
    4483:  //rb/spec/integration/selenium/webdriver:error-edge-bidi        �[0m�[32m(cached) PASSED�[0m in 18.6s
    4484:  //rb/spec/integration/selenium/webdriver:error-edge-remote      �[0m�[32m(cached) PASSED�[0m in 28.2s
    4485:  //rb/spec/integration/selenium/webdriver:error-firefox          �[0m�[32m(cached) PASSED�[0m in 35.0s
    4486:  //rb/spec/integration/selenium/webdriver:error-firefox-beta     �[0m�[32m(cached) PASSED�[0m in 40.5s
    4487:  //rb/spec/integration/selenium/webdriver:error-firefox-beta-bidi �[0m�[32m(cached) PASSED�[0m in 27.9s
    4488:  //rb/spec/integration/selenium/webdriver:error-firefox-beta-remote �[0m�[32m(cached) PASSED�[0m in 34.2s
    4489:  //rb/spec/integration/selenium/webdriver:error-firefox-bidi     �[0m�[32m(cached) PASSED�[0m in 29.1s
    4490:  //rb/spec/integration/selenium/webdriver:error-firefox-remote   �[0m�[32m(cached) PASSED�[0m in 35.8s
    4491:  //rb/spec/integration/selenium/webdriver:fedcm-chrome           �[0m�[32m(cached) PASSED�[0m in 46.3s
    ...
    
    4934:  //javascript/selenium-webdriver:test-lib-webdriver-script-test.js-chrome �[0m�[32mPASSED�[0m in 26.1s
    4935:  //javascript/selenium-webdriver:test-lib-webdriver-script-test.js-firefox �[0m�[32mPASSED�[0m in 64.9s
    4936:  //javascript/selenium-webdriver:test-logging-test.js-firefox             �[0m�[32mPASSED�[0m in 1.5s
    4937:  //javascript/selenium-webdriver:test-page-loading-test.js-firefox        �[0m�[32mPASSED�[0m in 16.1s
    4938:  //javascript/selenium-webdriver:test-print-pdf-test.js-chrome            �[0m�[32mPASSED�[0m in 4.6s
    4939:  //javascript/selenium-webdriver:test-proxy-test.js-chrome                �[0m�[32mPASSED�[0m in 1.1s
    4940:  //javascript/selenium-webdriver:test-select-test.js-chrome               �[0m�[32mPASSED�[0m in 8.6s
    4941:  //javascript/selenium-webdriver:test-stale-element-test.js-chrome        �[0m�[32mPASSED�[0m in 3.5s
    4942:  //javascript/selenium-webdriver:test-webComponent-test.js-chrome         �[0m�[32mPASSED�[0m in 4.9s
    4943:  //javascript/selenium-webdriver:test-webComponent-test.js-firefox        �[0m�[32mPASSED�[0m in 0.8s
    4944:  //javascript/selenium-webdriver:test-window-test.js-firefox              �[0m�[32mPASSED�[0m in 9.7s
    4945:  //java/test/org/openqa/selenium/grid/router:StressTest-remote           �[0m�[31m�[1mTIMEOUT�[0m in 2 out of 2 in 602.1s
    4946:  Stats over 2 runs: max = 602.1s, min = 601.5s, avg = 601.8s, dev = 0.3s
    4947:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/grid/router/StressTest-remote/test.log
    4948:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/grid/router/StressTest-remote/test_attempts/attempt_1.log
    4949:  Executed 51 out of 2373 tests: 2372 tests pass and �[0m�[31m�[1m1 fails remotely�[0m.
    4950:  There were tests whose specified size is too big. Use the --test_verbose_timeout_warnings command line option to see which ones these are.
    4951:  (17:03:06) �[32mINFO: �[0mStreaming build results to: https://gypsum.cluster.engflow.com/invocation/0b1e177e-d2e7-4cfe-9e70-afa2db75838f
    4952:  �[0m
    4953:  ##[error]Process completed with exit code 3.
    4954:  Post job cleanup.
    

    @VietND96 VietND96 requested a review from diemol June 20, 2025 05:20
    @VietND96

    This comment was marked as outdated.

    @diemol diemol merged commit e1cb6a5 into trunk Jun 23, 2025
    60 of 62 checks passed
    @diemol diemol deleted the grid-ui-delete-session branch June 23, 2025 17:20
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    B-grid Everything grid and server related Review effort 2/5
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    [🚀 Feature]: Killing Sessions via UI
    2 participants