Skip to content

Automated e2etests for migration and version scenario #19473

Open
@danjm

Description

@danjm

Currently the fixture we use in e2e tests is just... whatever state the wallet was in when the test was written. We don't make a habit of updating fixtures, so problems resulting from specific wallet states may go undetected by CI.

We could adopt a practice of regularly updating fixtures to match the latest production wallet state. This would ensure our CI tests match the experience of current production users more closely. Or we could keep a collection of fixtures to represent new, currrent, and older users. e.g. each fixture would have a version for:

The current wallet state
The current production wallet state
An ancient wallet state
Currently updating fixtures is a manual process. It's not trivial to automate it because state changes might happen as a result of a migration, or it might happen because of a change in a controller. The only reliable way to get an updated fixture is to run the real extension and export the state after initialization. We could automate fixture updates by doing exactly that though, and using our e2e tooling to start the extension up and export state to disk.

(from #10694 (comment))

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions