owncloud / web

:dragon_face: Next generation frontend for ownCloud Infinite Scale
https://owncloud.dev/clients/web/
GNU Affero General Public License v3.0
448 stars 157 forks source link

[QA] download related e2e tests fail on chromium-based browser when playwright tracing is enabled #11541

Open PrajwolAmatya opened 2 months ago

PrajwolAmatya commented 2 months ago

Description

Multiple builds are failing on keycloak tests while downloading resources via sidebar panel.

     And "Carol" navigates to the shared with me page # tests/e2e/cucumber/steps/ui/shares.ts:136
   ✖ And "Carol" downloads the following resources using the sidebar panel # tests/e2e/cucumber/steps/ui/resources.ts:105
       | resource      | from      | type   |
       | data.zip      | meal plan | file   |
       | lorem.txt     | meal plan | file   |
       | lorem-big.txt | meal plan | file   |
       | meal plan     |           | folder |
       locator.click: Timeout 30000ms exceeded.
       =========================== logs ===========================
       waiting for locator('.oc-files-actions-show-details-trigger')
       ============================================================
           at openForResource (/var/www/owncloud/web/tests/e2e/support/objects/app-files/utils/sidebar.ts:16:64)
           at async Object.open (/var/www/owncloud/web/tests/e2e/support/objects/app-files/utils/sidebar.ts:51:14)
           at async Object.downloadResources (/var/www/owncloud/web/tests/e2e/support/objects/app-files/resource/actions.ts:675:9)
           at async Resource.download (/var/www/owncloud/web/tests/e2e/support/objects/app-files/resource/index.ts:66:23)
           at async processDownload (/var/www/owncloud/web/tests/e2e/cucumber/steps/ui/resources.ts:492:17)
           at async World.<anonymous> (/var/www/owncloud/web/tests/e2e/cucumber/steps/ui/resources.ts:110:5)

Builds:

saw-jan commented 2 months ago

This is reproducable only when running test with REPORT_TRACING=true. :face_exhaling: and in CI we have REPORT_TRACING=true for keycloak pipeline

saw-jan commented 2 months ago

Tracing config fix: https://github.com/owncloud/web/pull/11571

saw-jan commented 2 months ago

Looks like the playwright tracing tracing.start breaks the web when using download action

Screenshot from 2024-09-12 18-15-25

saw-jan commented 2 months ago

Doesn't look like a problem with ocis or web. The problem might be with playwright library

saw-jan commented 2 months ago

might be a google-chrome version: tests were working with Google Chrome 123.0.6312.105 but started failing with Google Chrome 128.0.6613.119 Version got updated with the recent build of owncloudci/nodejs image

saw-jan commented 2 months ago

With the latest chromium-based browser and playwright tracing enabled, the HEAD request to download file causes the Sign In alert to appear. I don't think we can do anything from the test code

https://github.com/owncloud/web/blob/9a93ca210152d99332e33b836831a141e38c376d/packages/web-client/src/webdav/getFileUrl.ts#L45