Problem/Motivation
Core tests are randomly failing for the last 3 or so days
What's failing:
Drupal\Tests\layout_builder\FunctionalJavascript\InlineBlockPrivateFilesTest
1) Drupal\Tests\layout_builder\FunctionalJavascript\InlineBlockPrivateFilesTest::testPrivateFiles
Behat\Mink\Exception\ElementNotFoundException: Form field with id|name|label|value "files[settings_block_form_field_file_0]" not found.
/var/www/html/vendor/behat/mink/src/Element/TraversableElement.php:292
/var/www/html/core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockPrivateFilesTest.php:272
/var/www/html/core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockPrivateFilesTest.php:177
/var/www/html/core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockPrivateFilesTest.php:120
/var/www/html/vendor/phpunit/phpunit/src/Framework/TestResult.php:726
Drupal\Tests\media_library\FunctionalJavascript\WidgetOEmbedTest
1) Drupal\Tests\media_library\FunctionalJavascript\WidgetOEmbedTest::testWidgetOEmbed
"The media item has been created but has not yet been saved." not found
Failed asserting that a boolean is not empty.
/var/www/html/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:121
/var/www/html/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:55
/var/www/html/core/modules/media_library/tests/src/FunctionalJavascript/MediaLibraryTestBase.php:65
/var/www/html/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOEmbedTest.php:84
/var/www/html/vendor/phpunit/phpunit/src/Framework/TestResult.php:726
Drupal\Tests\media\FunctionalJavascript\MediaSourceOEmbedVideoTest
1) Drupal\Tests\media\FunctionalJavascript\MediaSourceOEmbedVideoTest::testMediaOEmbedVideoSource
Behat\Mink\Exception\ExpectationException: Current page is "/media/add/test_media_oembed_type", but "/admin/content/media" expected.
/var/www/html/core/tests/Drupal/Tests/WebAssert.php:540
/var/www/html/core/tests/Drupal/Tests/WebAssert.php:729
/var/www/html/core/modules/media/tests/src/FunctionalJavascript/MediaSourceOEmbedVideoTest.php:119
/var/www/html/vendor/phpunit/phpunit/src/Framework/TestResult.php:726
Drupal\FunctionalJavascriptTests\Tests\JSWebWithWebDriverAssertTest
1) Drupal\FunctionalJavascriptTests\Tests\JSWebWithWebDriverAssertTest::testJsWebAssert
Element not exists on page after too short wait.
/var/www/html/core/tests/Drupal/FunctionalJavascriptTests/Tests/JSWebAssertTest.php:46
/var/www/html/vendor/phpunit/phpunit/src/Framework/TestResult.php:726
Steps to reproduce
1) Drupal\FunctionalJavascriptTests\Tests\JSWebWithWebDriverAssertTest::testJsWebAssert
Element not exists on page after too short wait.
/var/www/html/core/tests/Drupal/FunctionalJavascriptTests/Tests/JSWebAssertTest.php:46
/var/www/html/vendor/phpunit/phpunit/src/Framework/TestResult.php:726
See https://www.drupal.org/node/3060/qa
Proposed resolution
Remaining tasks
User interface changes
API changes
Data model changes
Release notes snippet
| Comment | File | Size | Author |
|---|---|---|---|
| #27 | 3315753-8.patch | 4.32 KB | alexpott |
| #27 | 3315753-testWidgetUpload-only.patch | 4.18 KB | alexpott |
| #27 | 3315753-testWidgetUploadAdvancedUi-only.patch | 4.15 KB | alexpott |
| #26 | try-to-get-output2.patch | 3.66 KB | alexpott |
| #24 | 3315074-3-23.patch | 5.75 KB | alexpott |
Comments
Comment #2
alexpottComment #3
alexpottThat did not fix anything...
Comment #5
alexpottInteresting with #3 we start to get all the html in artifacts...
Comment #7
alexpottLet's get some more info from FilterTest
Comment #8
alexpottOpps wrong patch...
Comment #11
alexpottComment #12
alexpottComment #13
alexpottComment #14
alexpottComment #15
alexpottComment #17
alexpottComment #18
alexpottComment #19
alexpottWhoops miessed up the timeouts...
Comment #20
spokjeI was messing with this as well and also figured it has to be the
waitForbeing wonky.Never got to the slowness part of it though, I think it (at the very least) will reduce failure rates.
Since this is also confirmed by the runs in #19, where now "only" MariaDB has a failure related to this, I'm going to RTBC.
The fact that MariaDB still fails means we don't have a 100% waterproof solution (yet), but seeing the massive "red streak" on the TestBot auto-run on each commit/day, I think we want this in quick to, at the very least, mitigate the massive JS test failures.
Comment #21
alexpottCombining with the fix for FilterTest...
Comment #23
spokjeMariaDB fails on
WidgetUploadTest: Has no relation with thewaitFor-fix in this issue and is an already frequently seen JS failure.MySQL8 fails on
AdminUiTest: Sadly this has a relationship with our "friend"waitForthroughwaitForElement.Also MySQL57 fails seem related to this fix (or at least not fixed...)
So still no 100% fix, but already _much_ better than the current JS test failure storm.
Comment #24
alexpottI'm pretty sure the recent flood of fails are due to performance. Let's see what happens if change the 5ms wait to 50ms in assertWaitOnAjaxRequest.
Comment #26
alexpottOkay now that the FilterTest patch has landed let's get some more screenshots...
Comment #27
alexpottLooking at the difference between these test runs...
Comment #28
alexpottComment #29
spokjeI kinda lost track of which of the randoms in the IS are already solved.
Also I'm not sure what exactly there is to review here, could be that the change to NR was just to trigger to patches to by tested by TestBot?
Comment #30
alexpott@Spokje there's nothing to review here. This is more a tracking issue. I've been solving individual random fails in separate issues.
Comment #31
alexpottComment #32
nod_things seems to have settled down no?