You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is good for autoscaling (with max sessions > 1 per node), where all available slots in a Node will be utilized fully before assigning a session to another new Node.
Session assign with GreedySlotSelector strategy
GreedySlotSelector.mp4
Look back the session assign with DefaultSlotSelector
DefaultSlotSelector.mp4
Usage: pass value to CLI option --slot-selector when starting Distributor (or Hub/Standalone), or similar in TOML config
For example: --slot-selector org.openqa.selenium.grid.distributor.selector.GreedySlotSelector
How it works in the background
A greedy slot selector that aims to maximize node utilization by minimizing the number of partially filled nodes. The algorithm works as follows:
Sort nodes by their utilization load (descending).
Among nodes with the same utilization, prefer those with fewer total slots.
Then sort by the last session created (oldest first).
This approach helps to:
Fill up nodes that are already partially utilized
Minimize the number of nodes that are partially filled
Distribute load evenly across nodes
🔧 Implementation Notes
💡 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
Description
• Add GreedySlotSelector for maximizing node utilization in Grid
• Implements greedy algorithm prioritizing partially filled nodes
• Includes comprehensive test suite with 429 test lines
• Configurable via CLI --slot-matcher option
• Implements SlotSelector interface with greedy algorithm • Prioritizes nodes by utilization ratio (descending order) • Falls back to total slots, load, and browser version for tie-breaking • Includes factory method for configuration integration
• Comprehensive test suite with 11 test methods • Tests utilization prioritization over capability matching • Validates node selection ordering and load balancing • Includes helper methods for creating test nodes
• Fix JavaScript execution in link href on click() method for Firefox
• Ensure click() triggers JavaScript in href attribute (regression from 2.47.1 to 2.48.0/2.48.2)
• Address Firefox 42.0 compatibility issue
The greedy algorithm prioritizes utilization over capability matching, which may lead to suboptimal slot assignments when nodes with better capability matches have lower utilization. This could result in sessions being assigned to nodes that don't optimally match the requested capabilities.
returnnodes.stream()
.filter(node -> node.hasCapacity(capabilities, slotMatcher) && node.getAvailability() == UP)
.sorted(
// First and foremost, sort by utilization ratio (descending)// This ensures we ALWAYS try to fill nodes that are already partially utilized firstComparator.comparingDouble(this::getNodeUtilization)
.reversed()
// Then sort by total number of slots (ascending)// Among nodes with same utilization, prefer those with fewer total slots
.thenComparingLong(node -> node.getSlots().size())
// Then sort by node which has the lowest load (natural ordering)
.thenComparingDouble(NodeStatus::getLoad)
// Then last session created (oldest first)
.thenComparingLong(NodeStatus::getLastSessionCreated)
// Then sort by stereotype browserVersion (descending order)
.thenComparing(
Comparator.comparing(
NodeStatus::getBrowserVersion, newSemanticVersionComparator().reversed()))
// And use the node id as a tie-breaker
.thenComparing(NodeStatus::getNodeId))
.flatMap(
node ->
node.getSlots().stream()
.filter(slot -> slot.getSession() == null)
.filter(slot -> slot.isSupporting(capabilities, slotMatcher))
.map(Slot::getId))
.collect(toImmutableSet());
The test suite extensively validates that utilization is prioritized over capability matching, but lacks tests for edge cases like empty node sets, nodes with zero slots, or error handling scenarios that could occur in production environments.
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a new built-in greedy slot selector to enhance node utilization in the Selenium Grid by prioritizing partially filled nodes using a multi-criteria sorting approach.
Added GreedySlotSelector that implements a SlotSelector interface with a chain of comparators based on node utilization, slot count, load, session creation time, browser version, and node ID.
Provided comprehensive tests to validate the behavior of node selection and load balancing.
The method should handle potential edge cases where node or node.getSlots() could be null to prevent NullPointerException. Add null checks for robustness.
Why: The suggestion to add null checks for node and node.getSlots() is a valid defensive programming practice. However, the getNodeUtilization method is only called from a stream processing a Set<NodeStatus>, where null elements are not expected. The improvement in robustness is minor in this context.
The action failed because 2 tests failed: • canGetAllCookies() test in StorageCommandsTest failed for Microsoft Edge browser (both local and remote configurations) • The test failure occurred at line 283 in StorageCommandsTest.java with an AssertionFailedError: Expecting value to be true but was false • The failure appears to be related to BiDi (Bidirectional WebDriver) storage commands functionality when testing cookie retrieval in Edge browser
Relevant error logs:
1: ##[group]Runner Image Provisioner2: Hosted Compute Agent
...
947: Package 'php-sql-formatter' is not installed, so not removed948: Package 'php8.3-ssh2' is not installed, so not removed949: Package 'php-ssh2-all-dev' is not installed, so not removed950: Package 'php8.3-stomp' is not installed, so not removed951: Package 'php-stomp-all-dev' is not installed, so not removed952: Package 'php-swiftmailer' is not installed, so not removed953: Package 'php-symfony' is not installed, so not removed954: Package 'php-symfony-asset' is not installed, so not removed955: Package 'php-symfony-asset-mapper' is not installed, so not removed956: Package 'php-symfony-browser-kit' is not installed, so not removed957: Package 'php-symfony-clock' is not installed, so not removed958: Package 'php-symfony-debug-bundle' is not installed, so not removed959: Package 'php-symfony-doctrine-bridge' is not installed, so not removed960: Package 'php-symfony-dom-crawler' is not installed, so not removed961: Package 'php-symfony-dotenv' is not installed, so not removed962: Package 'php-symfony-error-handler' is not installed, so not removed963: Package 'php-symfony-event-dispatcher' is not installed, so not removed
...
1141: Package 'php-twig-html-extra' is not installed, so not removed1142: Package 'php-twig-i18n-extension' is not installed, so not removed1143: Package 'php-twig-inky-extra' is not installed, so not removed1144: Package 'php-twig-intl-extra' is not installed, so not removed1145: Package 'php-twig-markdown-extra' is not installed, so not removed1146: Package 'php-twig-string-extra' is not installed, so not removed1147: Package 'php8.3-uopz' is not installed, so not removed1148: Package 'php-uopz-all-dev' is not installed, so not removed1149: Package 'php8.3-uploadprogress' is not installed, so not removed1150: Package 'php-uploadprogress-all-dev' is not installed, so not removed1151: Package 'php8.3-uuid' is not installed, so not removed1152: Package 'php-uuid-all-dev' is not installed, so not removed1153: Package 'php-validate' is not installed, so not removed1154: Package 'php-vlucas-phpdotenv' is not installed, so not removed1155: Package 'php-voku-portable-ascii' is not installed, so not removed1156: Package 'php-wmerrors' is not installed, so not removed1157: Package 'php-xdebug-all-dev' is not installed, so not removed
...
1844: | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~1845: external/protobuf+/src/google/protobuf/compiler/java/full/enum.cc:125:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::compiler::java::EnumNonLiteGenerator::Alias>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]1846: 125 | for (int i = 0; i < aliases_.size(); i++) {1847: | ~~^~~~~~~~~~~~~~~~~1848: external/protobuf+/src/google/protobuf/compiler/java/full/enum.cc:209:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::EnumValueDescriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]1849: 209 | for (int i = 0; i < canonical_values_.size(); i++) {1850: | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~1851: external/protobuf+/src/google/protobuf/compiler/java/full/enum.cc: In member function ‘bool google::protobuf::compiler::java::EnumNonLiteGenerator::CanUseEnumValues()’:1852: external/protobuf+/src/google/protobuf/compiler/java/full/enum.cc:383:32: warning: comparison of integer expressions of different signedness: ‘std::vector<const google::protobuf::EnumValueDescriptor*>::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]1853: 383 | if (canonical_values_.size() != descriptor_->value_count()) {1854: | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~1855: (20:02:12) �[32mINFO: �[0mFrom Installing external/rules_ruby++ruby+bundle/rb/vendor/cache/bundler-2.6.3.gem (@@rules_ruby++ruby+bundle//:bundler-2.6.3):1856: Successfully installed bundler-2.6.31857: 1 gem installed1858: (20:02:12) �[32mINFO: �[0mFrom Building java/src/org/openqa/selenium/remote/libapi-class.jar (69 source files):1859: java/src/org/openqa/selenium/remote/ErrorHandler.java:46: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1860: private final ErrorCodes errorCodes;1861: ^1862: java/src/org/openqa/selenium/remote/ErrorHandler.java:60: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1863: this.errorCodes = new ErrorCodes();1864: ^1865: java/src/org/openqa/selenium/remote/ErrorHandler.java:68: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1866: public ErrorHandler(ErrorCodes codes, boolean includeServerErrors) {1867: ^1868: java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1869: ErrorCodes errorCodes = new ErrorCodes();1870: ^1871: java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1872: ErrorCodes errorCodes = new ErrorCodes();1873: ^1874: java/src/org/openqa/selenium/remote/ProtocolHandshake.java:181: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1875: response.setStatus(ErrorCodes.SUCCESS);1876: ^1877: java/src/org/openqa/selenium/remote/ProtocolHandshake.java:182: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1878: response.setState(ErrorCodes.SUCCESS_STRING);1879: ^1880: java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:53: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1881: new ErrorCodes().toStatus((String) rawError, Optional.of(tuple.getStatusCode())));1882: ^1883: java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:56: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1884: new ErrorCodes().getExceptionType((String) rawError);1885: ^1886: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1887: private final ErrorCodes errorCodes = new ErrorCodes();1888: ^1889: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1890: private final ErrorCodes errorCodes = new ErrorCodes();1891: ^1892: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:55: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1893: int status = response.getStatus() == ErrorCodes.SUCCESS ? HTTP_OK : HTTP_INTERNAL_ERROR;1894: ^1895: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:101: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1896: response.setStatus(ErrorCodes.UNKNOWN_COMMAND);1897: ^1898: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:103: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1899: response.setStatus(ErrorCodes.UNHANDLED_ERROR);1900: ^1901: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:117: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1902: response.setStatus(ErrorCodes.SUCCESS);1903: ^1904: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:118: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1905: response.setState(errorCodes.toState(ErrorCodes.SUCCESS));1906: ^1907: java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:124: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal1908: response.setState(errorCodes.toState(ErrorCodes.SUCCESS));1909: ^1910: 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 removal1911: private final ErrorCodes errorCodes = new ErrorCodes();1912: ^1913: 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 removal1914: private final ErrorCodes errorCodes = new ErrorCodes();1915: ^1916: 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 removal1917: response.setStatus(ErrorCodes.UNKNOWN_COMMAND);1918: ^1919: 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 removal1920: response.setStatus(ErrorCodes.UNHANDLED_ERROR);1921: ^1922: 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 removal1923: response.setStatus(ErrorCodes.SUCCESS);1924: ^
...
2034: 127 | for (int i = 0; i < path.size(); ++i) {2035: | ~~^~~~~~~~~~~~~2036: (20:02:17) �[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/test2037: (20:02:17) �[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/test2038: (20:02:17) �[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/test2039: (20:02:17) �[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/test2040: (20:02:17) �[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/test2041: (20:02:17) �[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/test2042: (20:02:17) �[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/test2043: (20:02:17) �[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/test2044: (20:02:17) �[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/test2045: (20:02:17) �[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/test2046: (20:02:17) �[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/test2047: (20:02:17) �[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/test2048: (20:02:17) �[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/test2049: (20:02:17) �[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/test2050: (20:02:17) �[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
...
2178: �[32m[11,622 / 12,589]�[0m 136 / 2061 tests;�[0m Building java/src/org/openqa/selenium/grid/distributor/selector/libselector.jar (3 source files); 7s remote, remote-cache ... (50 actions, 1 running)2179: (20:02:48) �[32mAnalyzing:�[0m 2369 targets (1673 packages loaded, 61564 targets configured)2180: �[32m[11,660 / 12,672]�[0m 149 / 2061 tests;�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver:virtual_authenticator-chrome-bidi; 4s ... (50 actions, 0 running)2181: (20:02:53) �[32mAnalyzing:�[0m 2369 targets (1673 packages loaded, 63087 targets configured)2182: �[32m[11,692 / 12,784]�[0m 171 / 2061 tests;�[0m Testing //py:common-chrome-bidi-test/selenium/webdriver/common/bidi_browser_tests.py; 5s remote, remote-cache ... (50 actions, 0 running)2183: (20:02:58) �[32mAnalyzing:�[0m 2369 targets (1673 packages loaded, 63135 targets configured)2184: �[32m[11,725 / 13,006]�[0m 196 / 2061 tests;�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver:timeout-chrome-beta-bidi; 4s ... (50 actions, 2 running)2185: (20:03:03) �[32mAnalyzing:�[0m 2369 targets (1676 packages loaded, 63189 targets configured)2186: �[32m[11,749 / 13,187]�[0m 213 / 2061 tests;�[0m Building java/src/org/openqa/selenium/grid/distributor/libdistributor.jar (9 source files); 8s remote, remote-cache ... (50 actions, 1 running)2187: (20:03:08) �[32mAnalyzing:�[0m 2369 targets (1680 packages loaded, 65021 targets configured)2188: �[32m[11,846 / 13,330]�[0m 299 / 2190 tests;�[0m Building java/test/org/openqa/selenium/grid/distributor/selector/GreedySlotSelectorTest.jar (1 source file); 3s remote, remote-cache ... (50 actions, 1 running)2189: (20:03:12) �[32mINFO: �[0mAnalyzed 2369 targets (1681 packages loaded, 65253 targets configured).2190: (20:03:13) �[32m[12,002 / 13,522]�[0m 437 / 2369 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:navigation-firefox-bidi; 0s remote, remote-cache ... (50 actions, 0 running)2191: (20:03:18) �[32m[12,534 / 14,013]�[0m 592 / 2369 tests;�[0m Building java/src/org/openqa/selenium/grid/sessionqueue/local/liblocal.jar (1 source file); 2s remote, remote-cache ... (46 actions, 12 running)2192: (20:03:19) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/libsmall-tests-test-lib.jar (5 source files) and running annotation processors (AutoServiceProcessor):2193: java/test/org/openqa/selenium/remote/WebDriverFixture.java:170: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2194: response.setStatus(new ErrorCodes().toStatus(state, Optional.of(400)));2195: ^2196: (20:03:19) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/RemotableByTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):2197: java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2198: import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;2199: ^2200: java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2201: import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;2202: ^2203: java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2204: import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;2205: ^2206: java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2207: private final ErrorCodes errorCodes = new ErrorCodes();2208: ^2209: java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2210: private final ErrorCodes errorCodes = new ErrorCodes();2211: ^2212: java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2213: private final ErrorCodes errorCodes = new ErrorCodes();2214: ^2215: java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2216: private final ErrorCodes errorCodes = new ErrorCodes();2217: ^2218: (20:03:19) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/ErrorHandlerTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):2219: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:79: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2220: handler.throwIfResponseFailed(createResponse(ErrorCodes.SUCCESS), 100);2221: ^2222: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:85: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2223: assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);2224: ^2225: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:86: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2226: assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);2227: ^2228: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:87: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2229: assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);2230: ^2231: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:88: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2232: assertThrowsCorrectExceptionType(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);2233: ^2234: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:90: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2235: ErrorCodes.METHOD_NOT_ALLOWED, UnsupportedCommandException.class);2236: ^2237: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:92: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2238: ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);2239: ^2240: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:94: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2241: ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);2242: ^2243: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:95: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2244: assertThrowsCorrectExceptionType(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);2245: ^2246: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:107: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2247: Response response = createResponse(ErrorCodes.UNHANDLED_ERROR);2248: ^2249: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:120: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2250: createResponse(ErrorCodes.UNHANDLED_ERROR, "boom"), 123))2251: ^2252: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:133: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2253: createResponse(ErrorCodes.UNHANDLED_ERROR, ImmutableMap.of("message", "boom")),2254: ^2255: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:147: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2256: ErrorCodes.UNHANDLED_ERROR,2257: ^2258: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:167: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2259: ErrorCodes.UNHANDLED_ERROR,2260: ^2261: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:193: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2262: createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))2263: ^2264: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:214: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2265: createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))2266: ^2267: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:248: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2268: createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))2269: ^2270: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:280: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2271: createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))2272: ^2273: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:308: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2274: createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))2275: ^2276: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:327: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2277: createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))2278: ^2279: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:355: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2280: createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))2281: ^2282: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:394: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2283: createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))2284: ^2285: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:426: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2286: createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))2287: ^2288: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:435: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2289: exceptions.put(ErrorCodes.NO_SUCH_SESSION, NoSuchSessionException.class);2290: ^2291: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:436: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2292: exceptions.put(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);2293: ^2294: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:437: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2295: exceptions.put(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);2296: ^2297: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:438: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2298: exceptions.put(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);2299: ^2300: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:439: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2301: exceptions.put(ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);2302: ^2303: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:440: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2304: exceptions.put(ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);2305: ^2306: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2307: exceptions.put(ErrorCodes.UNHANDLED_ERROR, WebDriverException.class);2308: ^2309: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:442: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2310: exceptions.put(ErrorCodes.JAVASCRIPT_ERROR, JavascriptException.class);2311: ^2312: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:443: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2313: exceptions.put(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);2314: ^2315: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:444: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2316: exceptions.put(ErrorCodes.TIMEOUT, TimeoutException.class);2317: ^2318: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:445: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2319: exceptions.put(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);2320: ^2321: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:446: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2322: exceptions.put(ErrorCodes.INVALID_COOKIE_DOMAIN, InvalidCookieDomainException.class);2323: ^2324: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:447: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2325: exceptions.put(ErrorCodes.UNABLE_TO_SET_COOKIE, UnableToSetCookieException.class);2326: ^2327: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:448: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2328: exceptions.put(ErrorCodes.UNEXPECTED_ALERT_PRESENT, UnhandledAlertException.class);2329: ^2330: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:449: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2331: exceptions.put(ErrorCodes.NO_ALERT_PRESENT, NoAlertPresentException.class);2332: ^2333: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:450: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2334: exceptions.put(ErrorCodes.ASYNC_SCRIPT_TIMEOUT, ScriptTimeoutException.class);2335: ^2336: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:451: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2337: exceptions.put(ErrorCodes.INVALID_SELECTOR_ERROR, InvalidSelectorException.class);2338: ^2339: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:452: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2340: exceptions.put(ErrorCodes.SESSION_NOT_CREATED, SessionNotCreatedException.class);2341: ^2342: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:453: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2343: exceptions.put(ErrorCodes.MOVE_TARGET_OUT_OF_BOUNDS, MoveTargetOutOfBoundsException.class);2344: ^2345: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2346: exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR, InvalidSelectorException.class);2347: ^2348: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:455: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2349: exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR_RETURN_TYPER, InvalidSelectorException.class);2350: ^2351: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:469: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2352: ? ErrorCodes.INVALID_SELECTOR_ERROR2353: ^2354: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:471: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2355: assertThat(new ErrorCodes().toStatusCode(e)).isEqualTo(expected);2356: ^2357: java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:483: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2358: response.setState(new ErrorCodes().toState(status));2359: ^2360: (20:03:20) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/json/JsonTest.jar (1 source file):2361: java/test/org/openqa/selenium/json/JsonTest.java:430: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2362: assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));2363: ^2364: java/test/org/openqa/selenium/json/JsonTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2365: assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));2366: ^2367: java/test/org/openqa/selenium/json/JsonTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal2368: assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(32));2369: ^2370: (20:03:23) �[32m[13,117 / 14,384]�[0m 773 / 2369 tests;�[0m Building java/src/org/openqa/selenium/grid/distributor/config/libconfig.jar (2 source files) and running annotation processors (AutoServiceProcessor); 3s remote, remote-cache ... (47 actions, 16 running)2371: (20:03:23) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.jar (1 source file):2372: 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 removal2373: import static org.openqa.selenium.remote.ErrorCodes.METHOD_NOT_ALLOWED;2374: ^2375: 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 removal2376: assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.SUCCESS);2377: ^2378: 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 removal2379: assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);2380: ^2381: 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 removal2382: assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);2383: ^
...
2444: (20:04:25) �[32m[16,036 / 16,109]�[0m 2001 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 37s remote, remote-cache ... (9 actions, 5 running)2445: (20:04:29) �[31m�[1mFAIL: �[0m//java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/bidi/storage/StorageCommandsTest-edge/test_attempts/attempt_1.log)2446: (20:04:31) �[32m[16,037 / 16,109]�[0m 2002 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 43s remote, remote-cache ... (8 actions, 5 running)2447: (20:04:36) �[32m[16,039 / 16,109]�[0m 2004 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 48s remote, remote-cache ... (6 actions, 5 running)2448: (20:04:43) �[32m[16,043 / 16,109]�[0m 2007 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 55s remote, remote-cache ... (3 actions, 2 running)2449: (20:04:48) �[32m[16,047 / 16,218]�[0m 2008 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 60s remote, remote-cache ... (50 actions, 4 running)2450: (20:04:53) �[32m[16,049 / 16,266]�[0m 2008 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 65s remote, remote-cache ... (49 actions, 4 running)2451: (20:04:58) �[32m[16,051 / 16,316]�[0m 2008 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 70s remote, remote-cache ... (50 actions, 6 running)2452: (20:05:04) �[32m[16,052 / 16,316]�[0m 2008 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 76s remote, remote-cache ... (50 actions, 9 running)2453: (20:05:11) �[32m[16,053 / 16,318]�[0m 2008 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 83s remote, remote-cache ... (50 actions, 8 running)2454: (20:05:16) �[32m[16,054 / 16,318]�[0m 2009 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 88s remote, remote-cache ... (50 actions, 10 running)2455: (20:05:21) �[32m[16,054 / 16,318]�[0m 2009 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 93s remote, remote-cache ... (50 actions, 15 running)2456: (20:05:27) �[32m[16,056 / 16,319]�[0m 2010 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 99s remote, remote-cache ... (50 actions, 15 running)2457: (20:05:32) �[32m[16,058 / 16,321]�[0m 2010 / 2369 tests;�[0m Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge; 104s remote, remote-cache ... (50 actions, 17 running)2458: (20:05:36) �[31m�[1mFAIL: �[0m//java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/bidi/storage/StorageCommandsTest-edge/test.log)2459: �[31m�[1mFAILED: �[0m//java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge (Summary)2460: /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/bidi/storage/StorageCommandsTest-edge/test.log2461: /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/bidi/storage/StorageCommandsTest-edge/test_attempts/attempt_1.log2462: (20:05:36) �[32mINFO: �[0mFrom Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge:2463: ==================== Test output for //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge:2464: Failures: 12465: 1) canGetAllCookies() (org.openqa.selenium.bidi.storage.StorageCommandsTest)2466: org.opentest4j.AssertionFailedError: 2467: Expecting value to be true but was false2468: at org.openqa.selenium.bidi.storage.StorageCommandsTest.canGetAllCookies(StorageCommandsTest.java:283)2469: Execution result: https://gypsum.cluster.engflow.com/actions/executions/ChA-6W_NpUFQ54Dgk2XNuH38EgdkZWZhdWx0GiUKIIQa1mN7CUp_CKvSuES5HS0yYvJjsUhm4fIGi0g59LhNELwD2470: ================================================================================2471: ==================== Test output for //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge:2472: Failures: 12473: 1) canGetAllCookies() (org.openqa.selenium.bidi.storage.StorageCommandsTest)2474: org.opentest4j.AssertionFailedError: 2475: Expecting value to be true but was false2476: at org.openqa.selenium.bidi.storage.StorageCommandsTest.canGetAllCookies(StorageCommandsTest.java:283)2477: Execution result: https://gypsum.cluster.engflow.com/actions/executions/ChA-6W_NpUFQ54Dgk2XNuH38EgdkZWZhdWx0GiUKIIQa1mN7CUp_CKvSuES5HS0yYvJjsUhm4fIGi0g59LhNELwD2478: ================================================================================2479: (20:05:41) �[32m[16,059 / 16,321]�[0m 2011 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //java/test/org/openqa/selenium/interactions:DefaultKeyboardTest-remote; 53s ... (50 actions, 18 running)2480: (20:05:46) �[32m[16,061 / 16,322]�[0m 2012 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //java/test/org/openqa/selenium/devtools:CdpVersionFinderTest-remote; 58s ... (50 actions, 18 running)2481: (20:05:54) �[32m[16,061 / 16,322]�[0m 2012 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //java/test/org/openqa/selenium/devtools:CdpVersionFinderTest-remote; 65s ... (50 actions, 19 running)2482: (20:06:00) �[32m[16,063 / 16,322]�[0m 2014 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //java/test/org/openqa/selenium/bidi/input:DragAndDropTest-chrome-remote; 71s ... (50 actions, 20 running)2483: (20:06:06) �[32m[16,065 / 16,322]�[0m 2016 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Building java/test/org/openqa/selenium/grid/distributor/DrainTest-remote.jar (1 source file); 77s ... (50 actions, 21 running)2484: (20:06:11) �[32m[16,069 / 16,323]�[0m 2019 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-remote; 81s ... (50 actions, 22 running)2485: (20:06:17) �[32m[16,074 / 16,326]�[0m 2021 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 82s remote, remote-cache ... (50 actions, 24 running)2486: (20:06:23) �[32m[16,077 / 16,326]�[0m 2024 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 88s remote, remote-cache ... (50 actions, 31 running)2487: (20:06:28) �[32m[16,082 / 16,326]�[0m 2027 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 93s remote, remote-cache ... (50 actions, 32 running)2488: (20:06:33) �[32m[16,085 / 16,326]�[0m 2029 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 98s remote, remote-cache ... (50 actions, 34 running)2489: (20:06:38) �[32m[16,087 / 16,326]�[0m 2031 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 103s remote, remote-cache ... (50 actions, 35 running)2490: (20:06:44) �[32m[16,090 / 16,327]�[0m 2033 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 108s remote, remote-cache ... (50 actions, 35 running)2491: (20:06:49) �[32m[16,095 / 16,329]�[0m 2035 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 113s remote, remote-cache ... (50 actions, 34 running)2492: (20:06:54) �[32m[16,098 / 16,330]�[0m 2037 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 119s remote, remote-cache ... (50 actions, 34 running)2493: (20:06:59) �[32m[16,100 / 16,332]�[0m 2037 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-chrome-remote; 124s remote, remote-cache ... (50 actions, 34 running)2494: (20:07:06) �[32m[16,105 / 16,333]�[0m 2040 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:LocateNodesTest-remote; 104s remote, remote-cache ... (50 actions, 34 running)2495: (20:07:11) �[32m[16,111 / 16,335]�[0m 2045 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:LocateNodesTest-remote; 109s remote, remote-cache ... (50 actions, 34 running)2496: (20:07:16) �[32m[16,114 / 16,335]�[0m 2049 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 67s remote, remote-cache ... (50 actions, 35 running)2497: (20:07:21) �[32m[16,124 / 16,338]�[0m 2051 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 72s remote, remote-cache ... (50 actions, 34 running)2498: (20:07:27) �[32m[16,132 / 16,342]�[0m 2057 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 77s remote, remote-cache ... (50 actions, 35 running)2499: (20:07:33) �[32m[16,136 / 16,342]�[0m 2061 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 83s remote, remote-cache ... (50 actions, 35 running)2500: (20:07:38) �[32m[16,145 / 16,346]�[0m 2068 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 88s remote, remote-cache ... (50 actions, 34 running)2501: (20:07:43) �[32m[16,148 / 16,351]�[0m 2068 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 93s remote, remote-cache ... (50 actions, 35 running)2502: (20:07:48) �[32m[16,153 / 16,356]�[0m 2070 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 99s remote, remote-cache ... (50 actions, 38 running)2503: (20:07:54) �[32m[16,154 / 16,356]�[0m 2071 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 104s remote, remote-cache ... (50 actions, 41 running)2504: (20:07:55) �[31m�[1mFAIL: �[0m//java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge-remote (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/bidi/storage/StorageCommandsTest-edge-remote/test_attempts/attempt_1.log)2505: (20:07:59) �[32m[16,162 / 16,356]�[0m 2079 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 110s remote, remote-cache ... (50 actions, 46 running)2506: (20:08:04) �[32m[16,167 / 16,357]�[0m 2083 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 115s remote, remote-cache ... (50 actions, 49 running)2507: (20:08:10) �[32m[16,171 / 16,360]�[0m 2085 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 120s remote, remote-cache ... (50 actions, 49 running)2508: (20:08:15) �[32m[16,174 / 16,363]�[0m 2085 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 126s remote, remote-cache ... (50 actions, 48 running)2509: (20:08:21) �[32m[16,181 / 16,366]�[0m 2091 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 131s remote, remote-cache ... (50 actions running)2510: (20:08:26) �[32m[16,187 / 16,368]�[0m 2095 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 136s remote, remote-cache ... (50 actions, 48 running)2511: (20:08:31) �[32m[16,195 / 16,374]�[0m 2099 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 142s remote, remote-cache ... (50 actions, 48 running)2512: (20:08:37) �[32m[16,200 / 16,375]�[0m 2103 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 147s remote, remote-cache ... (50 actions, 49 running)2513: (20:08:42) �[32m[16,205 / 16,379]�[0m 2105 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 152s remote, remote-cache ... (50 actions, 48 running)2514: (20:08:49) �[32m[16,206 / 16,379]�[0m 2107 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 159s remote, remote-cache ... (50 actions running)2515: (20:08:54) �[32m[16,208 / 16,379]�[0m 2108 / 2369 tests, �[31m�[1m1 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 165s remote, remote-cache ... (50 actions, 49 running)2516: (20:08:57) �[31m�[1mFAIL: �[0m//java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge-remote (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/bidi/storage/StorageCommandsTest-edge-remote/test.log)2517: �[31m�[1mFAILED: �[0m//java/test/org/openqa/selenium/bidi/storage:StorageCommandsTest-edge-remote (Summary)2518: /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/bidi/storage/StorageCommandsTest-edge-remote/test.log
...
2623: 20:07:49.540 INFO [GridModel.release] - Releasing slot for session id 078918c35b74ae730e8a9fda39e9fb072624: 20:07:49.540 INFO [SessionSlot.stop] - Stopping session 078918c35b74ae730e8a9fda39e9fb072625: 20:07:49.599 INFO [LocalDistributor.newSession] - Session request received by the Distributor: 2626: [Capabilities {browserName: MicrosoftEdge, ms:edgeOptions: {args: [disable-extensions, disable-infobars, disable-breakpad, disable-dev-shm-usage, no-sandbox], binary: external/+pin_browsers_exte..., extensions: [], prefs: {exit_type: None, exited_cleanly: true}}, unhandledPromptBehavior: ignore, webSocketUrl: true}]2627: 20:07:52.023 INFO [LocalNode.newSession] - Session created by the Node. Id: 03e616de791d4e7151bb12206728fe3b, Caps: Capabilities {acceptInsecureCerts: false, browserName: MicrosoftEdge, browserVersion: 137.0.3296.68, fedcm:accounts: true, ms:edgeOptions: {debuggerAddress: localhost:32841}, msedge: {msedgedriverVersion: 137.0.3296.68 (f3affdcf267b..., userDataDir: /tmp/.com.microsoft.Edge.8s...}, networkConnectionEnabled: false, pageLoadStrategy: normal, platformName: linux, proxy: Proxy(), se:cdp: ws://127.0.0.1:25439/sessio..., se:cdpVersion: 137.0.3296.68, se:gridWebSocketUrl: ws://localhost:32248/sessio..., setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: ignore, webSocketUrl: ws://127.0.0.1:25439/sessio..., webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true}2628: 20:07:52.035 INFO [LocalDistributor.newSession] - Session created by the Distributor. Id: 03e616de791d4e7151bb12206728fe3b 2629: Caps: Capabilities {acceptInsecureCerts: false, browserName: MicrosoftEdge, browserVersion: 137.0.3296.68, fedcm:accounts: true, ms:edgeOptions: {debuggerAddress: localhost:32841}, msedge: {msedgedriverVersion: 137.0.3296.68 (f3affdcf267b..., userDataDir: /tmp/.com.microsoft.Edge.8s...}, networkConnectionEnabled: false, pageLoadStrategy: normal, platformName: linux, proxy: Proxy(), se:cdp: ws://127.0.0.1:25439/sessio..., se:cdpVersion: 137.0.3296.68, se:gridWebSocketUrl: ws://localhost:32248/sessio..., setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: ignore, webSocketUrl: ws://127.0.0.1:25439/sessio..., webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true}2630: 20:07:52.097 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://localhost:32248/session/03e616de791d4e7151bb12206728fe3b2631: 20:07:52.157 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://localhost:32841/devtools/browser/058b4c04-d772-4701-a45e-07199fa891122632: 20:07:54.611 INFO [LocalNode.stopTimedOutSession] - Session id 03e616de791d4e7151bb12206728fe3b is stopping on demand...2633: 20:07:54.611 INFO [LocalSessionMap.remove] - Deleted session from local Session Map, Id: 03e616de791d4e7151bb12206728fe3b2634: 20:07:54.611 INFO [GridModel.release] - Releasing slot for session id 03e616de791d4e7151bb12206728fe3b2635: 20:07:54.612 INFO [SessionSlot.stop] - Stopping session 03e616de791d4e7151bb12206728fe3b2636: Failures: 12637: 1) canGetAllCookies() (org.openqa.selenium.bidi.storage.StorageCommandsTest)2638: org.opentest4j.AssertionFailedError: 2639: Expecting value to be true but was false
...
2746: 20:08:51.603 INFO [GridModel.release] - Releasing slot for session id 37386a6f1ca08e1e1359e58525295ce22747: 20:08:51.603 INFO [SessionSlot.stop] - Stopping session 37386a6f1ca08e1e1359e58525295ce22748: 20:08:51.667 INFO [LocalDistributor.newSession] - Session request received by the Distributor: 2749: [Capabilities {browserName: MicrosoftEdge, ms:edgeOptions: {args: [disable-extensions, disable-infobars, disable-breakpad, disable-dev-shm-usage, no-sandbox], binary: external/+pin_browsers_exte..., extensions: [], prefs: {exit_type: None, exited_cleanly: true}}, unhandledPromptBehavior: ignore, webSocketUrl: true}]2750: 20:08:53.876 INFO [LocalNode.newSession] - Session created by the Node. Id: 6c6b3a34589eeb675425c8538b671861, Caps: Capabilities {acceptInsecureCerts: false, browserName: MicrosoftEdge, browserVersion: 137.0.3296.68, fedcm:accounts: true, ms:edgeOptions: {debuggerAddress: localhost:38397}, msedge: {msedgedriverVersion: 137.0.3296.68 (f3affdcf267b..., userDataDir: /tmp/.com.microsoft.Edge.ju...}, networkConnectionEnabled: false, pageLoadStrategy: normal, platformName: linux, proxy: Proxy(), se:cdp: ws://127.0.0.1:4014/session..., se:cdpVersion: 137.0.3296.68, se:gridWebSocketUrl: ws://localhost:8174/session..., setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: ignore, webSocketUrl: ws://127.0.0.1:4014/session..., webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true}2751: 20:08:53.891 INFO [LocalDistributor.newSession] - Session created by the Distributor. Id: 6c6b3a34589eeb675425c8538b671861 2752: Caps: Capabilities {acceptInsecureCerts: false, browserName: MicrosoftEdge, browserVersion: 137.0.3296.68, fedcm:accounts: true, ms:edgeOptions: {debuggerAddress: localhost:38397}, msedge: {msedgedriverVersion: 137.0.3296.68 (f3affdcf267b..., userDataDir: /tmp/.com.microsoft.Edge.ju...}, networkConnectionEnabled: false, pageLoadStrategy: normal, platformName: linux, proxy: Proxy(), se:cdp: ws://127.0.0.1:4014/session..., se:cdpVersion: 137.0.3296.68, se:gridWebSocketUrl: ws://localhost:8174/session..., setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: ignore, webSocketUrl: ws://127.0.0.1:4014/session..., webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true}2753: 20:08:53.984 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://localhost:8174/session/6c6b3a34589eeb675425c8538b6718612754: 20:08:54.081 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://localhost:38397/devtools/browser/e5027dca-2697-4803-b1a9-ccb7b52f60d42755: 20:08:56.374 INFO [LocalNode.stopTimedOutSession] - Session id 6c6b3a34589eeb675425c8538b671861 is stopping on demand...2756: 20:08:56.375 INFO [LocalSessionMap.remove] - Deleted session from local Session Map, Id: 6c6b3a34589eeb675425c8538b6718612757: 20:08:56.375 INFO [GridModel.release] - Releasing slot for session id 6c6b3a34589eeb675425c8538b6718612758: 20:08:56.376 INFO [SessionSlot.stop] - Stopping session 6c6b3a34589eeb675425c8538b6718612759: Failures: 12760: 1) canGetAllCookies() (org.openqa.selenium.bidi.storage.StorageCommandsTest)2761: org.opentest4j.AssertionFailedError: 2762: Expecting value to be true but was false2763: at org.openqa.selenium.bidi.storage.StorageCommandsTest.canGetAllCookies(StorageCommandsTest.java:283)2764: Execution result: https://gypsum.cluster.engflow.com/actions/executions/ChBOoLKsW6VUfqXUD-AqYVJfEgdkZWZhdWx0GiUKIJqa99AI4dWLhGf1R3Nlwmx4QB3BhYvAk4F3yiMYnuT2ELwD2765: ================================================================================2766: (20:09:01) �[32m[16,215 / 16,379]�[0m 2115 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 171s remote, remote-cache ... (50 actions running)2767: (20:09:06) �[32m[16,215 / 16,379]�[0m 2116 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 177s remote, remote-cache ... (50 actions running)2768: (20:09:11) �[32m[16,218 / 16,379]�[0m 2119 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 182s remote, remote-cache ... (50 actions running)2769: (20:09:17) �[32m[16,225 / 16,379]�[0m 2125 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 187s remote, remote-cache ... (50 actions, 49 running)2770: (20:09:22) �[32m[16,233 / 16,379]�[0m 2133 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 193s remote, remote-cache ... (50 actions running)2771: (20:09:27) �[32m[16,238 / 16,379]�[0m 2138 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 198s remote, remote-cache ... (50 actions running)2772: (20:09:33) �[32m[16,245 / 16,379]�[0m 2145 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 203s remote, remote-cache ... (50 actions, 49 running)2773: (20:09:38) �[32m[16,250 / 16,379]�[0m 2150 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 208s remote, remote-cache ... (50 actions, 49 running)2774: (20:09:43) �[32m[16,251 / 16,379]�[0m 2151 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 213s remote, remote-cache ... (50 actions running)2775: (20:09:48) �[32m[16,256 / 16,379]�[0m 2157 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 219s remote, remote-cache ... (50 actions running)2776: (20:09:53) �[32m[16,264 / 16,379]�[0m 2164 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 224s remote, remote-cache ... (50 actions, 49 running)2777: (20:09:58) �[32m[16,269 / 16,379]�[0m 2169 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 229s remote, remote-cache ... (50 actions, 49 running)2778: (20:10:04) �[32m[16,279 / 16,379]�[0m 2180 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 234s remote, remote-cache ... (50 actions running)2779: (20:10:09) �[32m[16,282 / 16,379]�[0m 2183 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 239s remote, remote-cache ... (50 actions running)2780: (20:10:14) �[32m[16,287 / 16,379]�[0m 2187 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 245s remote, remote-cache ... (50 actions, 49 running)2781: (20:10:19) �[32m[16,294 / 16,379]�[0m 2195 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 250s remote, remote-cache ... (50 actions, 49 running)2782: (20:10:24) �[32m[16,306 / 16,379]�[0m 2206 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 255s remote, remote-cache ... (50 actions, 49 running)2783: (20:10:29) �[32m[16,322 / 16,379]�[0m 2222 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/script:ScriptCommandsTest-remote; 260s remote, remote-cache ... (50 actions, 49 running)2784: (20:10:35) �[32m[16,332 / 16,379]�[0m 2232 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 236s remote, remote-cache ... (47 actions running)2785: (20:10:40) �[32m[16,336 / 16,379]�[0m 2237 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 242s remote, remote-cache ... (43 actions running)2786: (20:10:46) �[32m[16,342 / 16,379]�[0m 2242 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 247s remote, remote-cache ... (37 actions running)2787: (20:10:51) �[32m[16,346 / 16,379]�[0m 2246 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 252s remote, remote-cache ... (33 actions running)2788: (20:10:56) �[32m[16,351 / 16,379]�[0m 2251 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 257s remote, remote-cache ... (28 actions running)2789: (20:11:02) �[32m[16,356 / 16,379]�[0m 2256 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 263s remote, remote-cache ... (23 actions running)2790: (20:11:11) �[32m[16,359 / 16,379]�[0m 2259 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 272s remote, remote-cache ... (20 actions running)2791: (20:11:16) �[32m[16,360 / 16,379]�[0m 2260 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 277s remote, remote-cache ... (19 actions running)2792: (20:11:25) �[32m[16,360 / 16,379]�[0m 2261 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 286s remote, remote-cache ... (19 actions running)2793: (20:11:30) �[32m[16,362 / 16,379]�[0m 2262 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 291s remote, remote-cache ... (17 actions running)2794: (20:11:36) �[32m[16,364 / 16,379]�[0m 2264 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 297s remote, remote-cache ... (15 actions running)2795: (20:11:41) �[32m[16,365 / 16,379]�[0m 2265 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 302s remote, remote-cache ... (14 actions running)2796: (20:11:46) �[32m[16,367 / 16,379]�[0m 2268 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 307s remote, remote-cache ... (12 actions running)2797: (20:11:52) �[32m[16,368 / 16,379]�[0m 2269 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/bidi/browsingcontext:BrowsingContextTest-remote; 313s remote, remote-cache ... (11 actions running)2798: (20:11:59) �[31m�[1mFAIL: �[0m//java/test/org/openqa/selenium/grid/router:StressTest (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/grid/router/StressTest/test_attempts/attempt_1.log)2799: (20:11:59) �[32m[16,370 / 16,379]�[0m 2270 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-chrome; 122s remote, remote-cache ... (9 actions running)2800: (20:12:06) �[32m[16,370 / 16,379]�[0m 2270 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-chrome; 129s remote, remote-cache ... (9 actions running)2801: (20:12:16) �[32m[16,370 / 16,379]�[0m 2270 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-chrome; 139s remote, remote-cache ... (9 actions running)2802: (20:12:28) �[32m[16,370 / 16,379]�[0m 2271 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-chrome; 151s remote, remote-cache ... (9 actions running)2803: (20:12:36) �[32m[16,371 / 16,379]�[0m 2271 / 2369 tests, �[31m�[1m2 failed�[0m;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest-chrome; 159s remote, remote-cache ... (8 actions ...
VietND96
changed the title
[grid] Add GreedySlotSelector as a built-in slot-matcher option
[grid] Add GreedySlotSelector as a built-in slot-selector option
Jun 17, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
User description
🔗 Related Issues
💥 What does this PR do?
Fixes #15870
This is good for autoscaling (with max sessions > 1 per node), where all available slots in a Node will be utilized fully before assigning a session to another new Node.
Session assign with GreedySlotSelector strategy
GreedySlotSelector.mp4
Look back the session assign with DefaultSlotSelector
DefaultSlotSelector.mp4
Usage: pass value to CLI option
--slot-selectorwhen starting Distributor (or Hub/Standalone), or similar in TOML configFor example:
--slot-selector org.openqa.selenium.grid.distributor.selector.GreedySlotSelectorHow it works in the background
A greedy slot selector that aims to maximize node utilization by minimizing the number of partially filled nodes. The algorithm works as follows:
This approach helps to:
🔧 Implementation Notes
💡 Additional Considerations
🔄 Types of changes
PR Type
Enhancement
Description
• Add GreedySlotSelector for maximizing node utilization in Grid
• Implements greedy algorithm prioritizing partially filled nodes
• Includes comprehensive test suite with 429 test lines
• Configurable via CLI --slot-matcher option
Changes walkthrough 📝
GreedySlotSelector.java
New GreedySlotSelector implementationjava/src/org/openqa/selenium/grid/distributor/selector/GreedySlotSelector.java
• Implements SlotSelector interface with greedy algorithm
•
Prioritizes nodes by utilization ratio (descending order)
• Falls back
to total slots, load, and browser version for tie-breaking
• Includes
factory method for configuration integration
GreedySlotSelectorTest.java
Complete test coverage for GreedySlotSelectorjava/test/org/openqa/selenium/grid/distributor/selector/GreedySlotSelectorTest.java
• Comprehensive test suite with 11 test methods
• Tests utilization
prioritization over capability matching
• Validates node selection
ordering and load balancing
• Includes helper methods for creating
test nodes