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
test: e2e labels rename and shards update (#29431)
## **Description**
Refactors E2E smoke tagging to better match feature ownership and test
scope, and updates all downstream consumers (specs, workflows, Bitrise,
analyzer/docs).
Main changes:
- Replaced `SmokeTrade` with:
- `SmokeSwap` for `tests/smoke/swap/*`
- `SmokeStake` for `tests/smoke/stake/*`
- Merged Card + Ramps under `SmokeMoney`:
- Updated `tests/smoke/card/*` and `tests/smoke/ramps/*`
- Removed deprecated `SmokeCard` and `SmokeRamps`
- Merged Seedless onboarding under `SmokeAccounts`:
- Updated `tests/smoke/seedless/*`
- Removed deprecated `SmokeSeedlessOnboarding`
- Added one extra Snap shard in smoke workflows:
- iOS: `snaps-ios-smoke` 3 -> 4
- Android: `snaps-android-smoke` 3 -> 4
## **Changelog**
CHANGELOG entry: null
## **Related issues**
Fixes:
## **Manual testing steps**
```gherkin
Feature: Smoke tag taxonomy migration
Scenario: run smoke workflows with new tags
Given a branch with the updated smoke tags and workflow config
When smoke workflows are triggered for iOS and Android
Then tests in swap use SmokeSwap
And tests in stake use SmokeStake
And tests in card and ramps use SmokeMoney
And tests in seedless use SmokeAccounts
Scenario: verify deprecated tags are removed
Given the updated repository
When searching for SmokeTrade, SmokeCard, SmokeRamps, and SmokeSeedlessOnboarding
Then no active smoke spec or smoke workflow references those tags
```
## **Screenshots/Recordings**
### **Before**
N/A (tag/workflow refactor)
### **After**
N/A (tag/workflow refactor)
## **Pre-merge author checklist**
- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I've included tests if applicable
- [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.
#### Performance checks (if applicable)
- [ ] I've tested on Android
- Ideally on a mid-range device; emulator is acceptable
- [ ] I've tested with a power user scenario
- Use these [power-user
SRPs](https://consensyssoftware.atlassian.net/wiki/spaces/TL1/pages/edit-v2/401401446401?draftShareId=9d77e1e1-4bdc-4be1-9ebb-ccd916988d93)
to import wallets with many accounts and tokens
- [ ] I've instrumented key operations with Sentry traces for production
performance metrics
- See [`trace()`](/app/util/trace.ts) for usage and
[`addToken`](/app/components/Views/AddAsset/components/AddCustomToken/AddCustomToken.tsx#L274)
for an example
For performance guidelines and tooling, see the [Performance
Guide](https://consensyssoftware.atlassian.net/wiki/spaces/TL1/pages/400085549067/Performance+Guide+for+Engineers).
## **Pre-merge reviewer checklist**
- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] 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.
Copy file name to clipboardExpand all lines: .agents/skills/e2e-test/SKILL.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -66,7 +66,7 @@ Do not read the full reference files until the decision tree or workflow sends y
66
66
5.**Never use `TestHelpers.delay()`** — use `Assertions.*` which has auto-retry
67
67
6.**Use `FixtureBuilder` for state** — do not set state through UI interactions
68
68
7.**Selectors live in `*.testIds.ts`** (co-located) or `tests/selectors/` (legacy)
69
-
8.**Tag correctly** — Use the tag that matches your feature and test type. Options include `SmokeE2E`, `SmokeTrade`, `SmokePredictions`, `SmokePerps`, `SmokeConfirmations`, `RegressionTrade`, `RegressionWallet`, etc. Check **`tests/tags.js`** for the full list and descriptions, and **existing specs in the same feature folder** to see which tag they use.
69
+
8.**Tag correctly** — Use the tag that matches your feature and test type. Options include `SmokeE2E`, `SmokeSwap`, `SmokeStake`, `SmokeMoney`, `SmokePredictions`, `SmokePerps`, `SmokeConfirmations`, `RegressionTrade`, `RegressionWallet`, etc. Check **`tests/tags.js`** for the full list and descriptions, and **existing specs in the same feature folder** to see which tag they use.
70
70
9.**Descriptive test names** — no 'should' prefix (e.g., `'opens market details'`)
71
71
10.**Fix lint/tsc before running** — never run with known errors
| Regression |`tests/regression/<feature>/<name>.spec.ts`|`RegressionTrade`, `RegressionWallet`, etc. |
9
9
10
-
Import tags from `tests/tags.ts`. Check **`tests/tags.js`** for the full list and descriptions. Use the same tag as **existing specs in that feature folder** (e.g. `tests/smoke/predict/` uses `SmokeTrade`).
10
+
Import tags from `tests/tags.ts`. Check **`tests/tags.js`** for the full list and descriptions. Use the same tag as **existing specs in that feature folder** (e.g. `tests/smoke/swap/` uses `SmokeSwap`, `tests/smoke/stake/` uses `SmokeStake`, `tests/smoke/card/` and `tests/smoke/ramps/` use `SmokeMoney`).
0 commit comments