Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatically retry failing tests #155

Open
thomaseizinger opened this issue Mar 20, 2023 · 3 comments
Open

Automatically retry failing tests #155

thomaseizinger opened this issue Mar 20, 2023 · 3 comments

Comments

@thomaseizinger
Copy link
Contributor

Due to the number of moving parts, e2e tests tend to be a bit flakier than unit tests. We have one test in particular (Rust WebRTC) that fails every now and then: https://github.com/libp2p/rust-libp2p/actions/runs/4466390814/attempts/1

Whilst we have identified why it fails, we cannot currently upgrade because the latest version made some unfortunate breaking changes: webrtc-rs/webrtc#413

Automatically retrying failing tests and marking them as flaky is not a new idea. New test runners like nextest incorporate such features: https://nexte.st/book/retries.html

Our interoperability job usually takes ~15 minutes. If it would take 2 minutes I wouldn't consider it worth it but having to wait for another 15 because 1 out of 100 e2e tests failed is a bit of a bummer.

Can we / Do we want to add something like this to our test runner? To make retries visible, we could output a "warning" annotation like the ones visible here: https://github.com/libp2p/rust-libp2p/actions/runs/4071431104

@mxinden
Copy link
Member

mxinden commented Mar 20, 2023

Fine by me. Likely only needed for the interoperability tests, right?

@thomaseizinger
Copy link
Contributor Author

Fine by me. Likely only needed for the interoperability tests, right?

Do we have other tests in this repository?

@mxinden
Copy link
Member

mxinden commented Mar 20, 2023

Oh, my bad. I somehow thought this issue is on the rust-libp2p repository. Don't mind me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants