I'm looking into creating custom eslint rules that aim to avoid common causes of oranges in tests. We have an MDN page <https://developer.mozilla.org/en-US/docs/Mozilla/QA/Avoiding_intermittent_oranges> containing some of these already. Some of those patterns might be pretty hard to catch with a linter, but others look do-able. So far, I'm thinking of adding rules for:
- No arbitrary setTimeouts - No synthesizeKey without waiting for focus - No deleting original tab - ??? These rules would only be configured to run on test files. I have a few questions: 1. Would this cause too much of a burden for legitimate uses of those patterns? 2. Do any of the other patterns on that page look feasible to implement as linters? 3. Are there additional things not listed on that page that we could lint for? I'd love to find volunteer(s) who are more familiar with writing mochitests than myself (and who also care about this issue) to help brainstorm and provide more in-depth feedback. I want to strike a balance between preventing oranges and not over-burdening test authors, but I'm not sure what that balance looks like. Thanks in advance for your input, Andrew _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform