You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
some additional conversation about this problem: #25153 (comment)
The current testing framework for the MetaMask extension does not include a cleanup process after each test, which has led to issues such as flaky tests and inconsistent test results. Implementing a cleanup process after every test is a significant framework change that aims to improve the reliability and stability of the test suite.
This change involves resetting the test environment to a clean state after each test execution, ensuring that tests do not interfere with each other and that the results are consistent and reproducible. This will help in identifying and isolating issues more effectively, reducing the occurrence of flaky tests, and improving overall test coverage.
The implementation of this cleanup process will require modifications to the existing test framework, including:
Adding setup and teardown methods to reset the state before and after each test.
Ensuring that all dependencies and resources are properly cleaned up.
Updating existing tests to comply with the new framework changes.
Stakeholder review needed before the work gets merged
Engineering (needed in most cases)
Design
Product
QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
Security
Legal
Marketing
Management (please specify)
Other (please specify)
References
No response
The text was updated successfully, but these errors were encountered:
What is this about?
Below are the thoughts of @davidmurdoch about the testing framework
The current testing framework for the MetaMask extension does not include a cleanup process after each test, which has led to issues such as flaky tests and inconsistent test results. Implementing a cleanup process after every test is a significant framework change that aims to improve the reliability and stability of the test suite.
This change involves resetting the test environment to a clean state after each test execution, ensuring that tests do not interfere with each other and that the results are consistent and reproducible. This will help in identifying and isolating issues more effectively, reducing the occurrence of flaky tests, and improving overall test coverage.
The implementation of this cleanup process will require modifications to the existing test framework, including:
Scenario
No response
Design
Here's how I did it The Right Way ™️ recently: https://github.com/MetaMask/metamask-extension/blob/develop/test/e2e/tests/phishing-controller/phishing-detection.spec.js#L371-L430
It's gross though.
Technical Details
No response
Threat Modeling Framework
No response
Acceptance Criteria
No response
Stakeholder review needed before the work gets merged
References
No response
The text was updated successfully, but these errors were encountered: