element-web/cypress/e2e/read-receipts
Andy Balaam 6a9942576d
Increase the timeout for the bot to enter the room (#11742)
in an attempt to fix flakes like:

* https://github.com/vector-im/element-web/issues/26298
* https://github.com/vector-im/element-web/issues/26341

which appear to fail when using Rust crypto, possibly because the client
takes a while to start up.
2023-10-13 08:50:16 +00:00
..
editing-messages.spec.ts Disable a bunch of flaky cypress tests (#11719) 2023-10-05 15:30:49 +01:00
high-level.spec.ts Disable a bunch of flaky cypress tests (#11719) 2023-10-05 15:30:49 +01:00
missing-referents.spec.ts Share code for room initialisation between read receipt tests 2023-10-02 16:59:38 +01:00
new-messages.spec.ts Share code for room initialisation between read receipt tests 2023-10-02 16:59:38 +01:00
reactions.spec.ts Share code for room initialisation between read receipt tests 2023-10-02 16:59:38 +01:00
read-receipts-utils.ts Increase the timeout for the bot to enter the room (#11742) 2023-10-13 08:50:16 +00:00
read-receipts.spec.ts Consume more imports from matrix-js-sdk/src/matrix (#11449) 2023-08-23 09:04:25 +00:00
readme.md Split the read-receipt tests into logical units (#11649) 2023-09-22 11:57:40 +00:00
redactions.spec.ts Skip redaction tests that are still flaking (#11704) 2023-10-03 21:12:36 +00:00

High Level Read Receipt Tests

Tips for writing these tests:

  • Break up your tests into the smallest test case possible. The purpose of these tests is to understand hard-to-find bugs, so small tests are necessary. We know that Cypress recommends combining tests together for performance, but that will frustrate our goals here. (We will need to find a different way to reduce CI time.)

  • Try to assert something after every action, to make sure it has completed. E.g.: markAsRead(room2); assertRead(room2); You should especially follow this rule if you are jumping to a different room or similar straight afterwards.

  • Use assertStillRead() if you are asserting something is read when it was also read before. This waits a little while to make sure you're not getting a false positive.