Closed holmesworcester closed 2 years ago
https://github.com/ZbayApp/monorepo/pull/407 <- this covers one scenario where the user launching actual app is a joining user and user creating community is handled by integration tests ("headless") logic. Right now the test case is simple:
Other cases will be added in separate MRs.
I noticed the specific problem that sometimes occurs when running e2e test. It's often seen in CI but I am able to reproduce it locally:
Run test:create again without clearing data dir This results in test hanging on Loading screen. Looking at logs it seems like websocket is not connecting for some reason:
testcafe:browser-provider-electron:spawn:stderr 2022-04-07T16:16:22.250Z waggle:tor Apr 07 18:16:22.000 [notice] Bootstrapped 100% (done): Done
testcafe:browser-provider-electron:spawn:stderr
testcafe:browser-provider-electron:spawn:stderr 2022-04-07T16:16:22.250Z waggle:tor FINISHED BOOTSTRAPPING
testcafe:browser-provider-electron:spawn:stderr 2022-04-07T16:16:22.250Z waggle:tor FINISHED BOOTSTRAPPING, RESOLVING
testcafe:browser-provider-electron:spawn:stderr 2022-04-07T16:16:22.250Z waggle:tor AFTER SPAWNING TOR
⠋
Running tests in:
- Electron 17.3.1 / Linux 0.0
New user test
Navigating to file:///tmp/.mount_Quiet-VPxti2/resources/app.asar/dist/main/index.html#/
testcafe:browser-provider-electron:spawn:stderr WebContents #1 called ipcRenderer.sendSync() with 'electron-store-get-data' channel without listeners. +5s
testcafe:browser-provider-electron:spawn:stderr [567510:0407/181629.188294:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times! +2s
testcafe:browser-provider-electron:spawn:stderr [567510:0407/181629.198825:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times! +9ms
I can't see any browser console logs neither
Temporarly removed sentryWarning modal and disabled sentry. To be enabled: https://github.com/ZbayApp/monorepo/issues/408
Fix returning user tests: https://github.com/ZbayApp/monorepo/issues/427
Right now we don't have e2e tests that cover a user joining a community, or two users talking to each other, syncing newly created channels, etc.
Let's make an e2e test for joining a community and receiving a message, by:
We should make two versions of the test:
The smoke test will run with a small amount of data in the community.
The performance test will run with a lot of data in the community. It will test that a user can send a message immediately, and switch channels, with minimal lag, and it will test to make sure that all the channel data syncs before some timeout.