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

Flaky Test: "Update Network: update network details and validate the ui elements" #24628

Closed
9 tasks
chloeYue opened this issue May 20, 2024 · 0 comments · Fixed by #24790
Closed
9 tasks

Flaky Test: "Update Network: update network details and validate the ui elements" #24628

chloeYue opened this issue May 20, 2024 · 0 comments · Fixed by #24790
Assignees
Labels
flaky tests release-11.18.0 Issue or pull request that will be included in release 11.18.0 team-extension-platform

Comments

@chloeYue
Copy link
Contributor

What is this about?

Failure:
https://app.circleci.com/pipelines/github/MetaMask/metamask-extension/81192/workflows/b30980fe-7599-4cc3-8126-be45c50e9365/jobs/2877372/tests

Error message

Screenshot 2024-05-20 at 15 40 20

Screenshot
Screenshot 2024-05-20 at 15 40 11

Scenario

No response

Design

No response

Technical Details

No response

Threat Modeling Framework

No response

Acceptance Criteria

No response

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

@chloeYue chloeYue self-assigned this May 27, 2024
@chloeYue chloeYue changed the title Flaky Test: "Update Network: update network details and validate the ui elements" test: Flaky Test: "Update Network: update network details and validate the ui elements" May 27, 2024
@chloeYue chloeYue changed the title test: Flaky Test: "Update Network: update network details and validate the ui elements" Flaky Test: "Update Network: update network details and validate the ui elements" May 27, 2024
DDDDDanica pushed a commit that referenced this issue May 27, 2024
…ate the ui elements (#24790)

## **Description**

This PR addresses a flaky test issue related to the Chain ID input
field.

Reason for flakiness: The root cause of the flakiness was identified as
the rapid input of the entire Chain ID, which resulted in the error
message appearing and persisting even after the correct Chain ID was
fully entered.

Observation: When entering the Chain ID manually, the error message
correctly displays when incomplete values like "0x53" are input but
disappears upon entering the full Chain ID with "9". To mimic more
human-like actions in the automated test, I adjusted the test behavior
accordingly.

Key Changes:
Split Chain ID Input: The Chain ID input process has been split into two
distinct parts (chainId_part1 and chainId_part2). This modification
adopts a more human-like approach to entering the Chain ID, allowing the
error message sufficient time to respond accurately.

Results:
Before the Fix: The flakiness could be reproduced locally on Firefox
with a 50% occurrence rate.
After the Fix: After implementing the changes, I ran the test 20
consecutive times without encountering any flakiness, demonstrating the
effectiveness of the fix.

This adjustment ensures that the automated test behaves in a way that
closely resembles user interaction, and reduce test flakiness.


[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24790?quickstart=1)

## **Related issues**

Fixes: #24628 

## **Manual testing steps**

1. Run the test several times yarn test:e2e:single
test/e2e/tests/request-queuing/ui.spec.js --browser=firefox
--leave-running --retryUntilFailure --retries=10
2. Check ci jobs

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@metamaskbot metamaskbot added the release-11.18.0 Issue or pull request that will be included in release 11.18.0 label May 27, 2024
danjm pushed a commit that referenced this issue May 31, 2024
…ate the ui elements (#24790)

## **Description**

This PR addresses a flaky test issue related to the Chain ID input
field.

Reason for flakiness: The root cause of the flakiness was identified as
the rapid input of the entire Chain ID, which resulted in the error
message appearing and persisting even after the correct Chain ID was
fully entered.

Observation: When entering the Chain ID manually, the error message
correctly displays when incomplete values like "0x53" are input but
disappears upon entering the full Chain ID with "9". To mimic more
human-like actions in the automated test, I adjusted the test behavior
accordingly.

Key Changes:
Split Chain ID Input: The Chain ID input process has been split into two
distinct parts (chainId_part1 and chainId_part2). This modification
adopts a more human-like approach to entering the Chain ID, allowing the
error message sufficient time to respond accurately.

Results:
Before the Fix: The flakiness could be reproduced locally on Firefox
with a 50% occurrence rate.
After the Fix: After implementing the changes, I ran the test 20
consecutive times without encountering any flakiness, demonstrating the
effectiveness of the fix.

This adjustment ensures that the automated test behaves in a way that
closely resembles user interaction, and reduce test flakiness.


[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24790?quickstart=1)

## **Related issues**

Fixes: #24628 

## **Manual testing steps**

1. Run the test several times yarn test:e2e:single
test/e2e/tests/request-queuing/ui.spec.js --browser=firefox
--leave-running --retryUntilFailure --retries=10
2. Check ci jobs

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
danjm pushed a commit that referenced this issue May 31, 2024
…ate the ui elements (#24790)

## **Description**

This PR addresses a flaky test issue related to the Chain ID input
field.

Reason for flakiness: The root cause of the flakiness was identified as
the rapid input of the entire Chain ID, which resulted in the error
message appearing and persisting even after the correct Chain ID was
fully entered.

Observation: When entering the Chain ID manually, the error message
correctly displays when incomplete values like "0x53" are input but
disappears upon entering the full Chain ID with "9". To mimic more
human-like actions in the automated test, I adjusted the test behavior
accordingly.

Key Changes:
Split Chain ID Input: The Chain ID input process has been split into two
distinct parts (chainId_part1 and chainId_part2). This modification
adopts a more human-like approach to entering the Chain ID, allowing the
error message sufficient time to respond accurately.

Results:
Before the Fix: The flakiness could be reproduced locally on Firefox
with a 50% occurrence rate.
After the Fix: After implementing the changes, I ran the test 20
consecutive times without encountering any flakiness, demonstrating the
effectiveness of the fix.

This adjustment ensures that the automated test behaves in a way that
closely resembles user interaction, and reduce test flakiness.


[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24790?quickstart=1)

## **Related issues**

Fixes: #24628 

## **Manual testing steps**

1. Run the test several times yarn test:e2e:single
test/e2e/tests/request-queuing/ui.spec.js --browser=firefox
--leave-running --retryUntilFailure --retries=10
2. Check ci jobs

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
danjm pushed a commit that referenced this issue May 31, 2024
…ate the ui elements (#24790)

## **Description**

This PR addresses a flaky test issue related to the Chain ID input
field.

Reason for flakiness: The root cause of the flakiness was identified as
the rapid input of the entire Chain ID, which resulted in the error
message appearing and persisting even after the correct Chain ID was
fully entered.

Observation: When entering the Chain ID manually, the error message
correctly displays when incomplete values like "0x53" are input but
disappears upon entering the full Chain ID with "9". To mimic more
human-like actions in the automated test, I adjusted the test behavior
accordingly.

Key Changes:
Split Chain ID Input: The Chain ID input process has been split into two
distinct parts (chainId_part1 and chainId_part2). This modification
adopts a more human-like approach to entering the Chain ID, allowing the
error message sufficient time to respond accurately.

Results:
Before the Fix: The flakiness could be reproduced locally on Firefox
with a 50% occurrence rate.
After the Fix: After implementing the changes, I ran the test 20
consecutive times without encountering any flakiness, demonstrating the
effectiveness of the fix.

This adjustment ensures that the automated test behaves in a way that
closely resembles user interaction, and reduce test flakiness.


[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24790?quickstart=1)

## **Related issues**

Fixes: #24628 

## **Manual testing steps**

1. Run the test several times yarn test:e2e:single
test/e2e/tests/request-queuing/ui.spec.js --browser=firefox
--leave-running --retryUntilFailure --retries=10
2. Check ci jobs

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
danjm pushed a commit that referenced this issue May 31, 2024
…ate the ui elements (#24790)

## **Description**

This PR addresses a flaky test issue related to the Chain ID input
field.

Reason for flakiness: The root cause of the flakiness was identified as
the rapid input of the entire Chain ID, which resulted in the error
message appearing and persisting even after the correct Chain ID was
fully entered.

Observation: When entering the Chain ID manually, the error message
correctly displays when incomplete values like "0x53" are input but
disappears upon entering the full Chain ID with "9". To mimic more
human-like actions in the automated test, I adjusted the test behavior
accordingly.

Key Changes:
Split Chain ID Input: The Chain ID input process has been split into two
distinct parts (chainId_part1 and chainId_part2). This modification
adopts a more human-like approach to entering the Chain ID, allowing the
error message sufficient time to respond accurately.

Results:
Before the Fix: The flakiness could be reproduced locally on Firefox
with a 50% occurrence rate.
After the Fix: After implementing the changes, I ran the test 20
consecutive times without encountering any flakiness, demonstrating the
effectiveness of the fix.

This adjustment ensures that the automated test behaves in a way that
closely resembles user interaction, and reduce test flakiness.


[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24790?quickstart=1)

## **Related issues**

Fixes: #24628 

## **Manual testing steps**

1. Run the test several times yarn test:e2e:single
test/e2e/tests/request-queuing/ui.spec.js --browser=firefox
--leave-running --retryUntilFailure --retries=10
2. Check ci jobs

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
flaky tests release-11.18.0 Issue or pull request that will be included in release 11.18.0 team-extension-platform
Projects
None yet
2 participants