epicweb-dev / epicweb-dev/epic-stack
How to use a different `*.db` file during e2e tests?
- Vorherrschende Sprache
- TypeScript
- Sterne
- 5.5k
- Forks
- 460
- Ø Merge
- 2 Std. 43 Min.
- Gemergte PRs (30 T.)
- 1
Beschreibung
Hi!
I think we should use a different SQLite database instance for e2e testing. That is to separate whatever state the local database has during development. Basically, each test run should start with a clean database (and likely even drop the db between test suites/cases as well) to ensure proper test isolation.
I've tried setting `DATABASE_URL` to `file:./data.db?` in here:
https://github.com/epicweb-dev/epic-stack/blob/97135fcd7899cab299b402f36804b0d169e87d9d/playwright.config.ts#L37-L40
> I've also tried `DATABASE_PATH: './prisma/test.db'` to no effect.
But that had no effect on the app under test; it still used `./prisma/data.db`. I might be doing something wrong here... Any hints would be appreciated!
Beitragsleitfaden
Rechercherichtung
Beginne mit playwright.config.ts etwa bei den Zeilen 37–40 und verfolge, wie die zu testende App DATABASE_URL oder DATABASE_PATH erhält. Vergleiche diese Verdrahtung mit den aktuellen Pfaden prisma/data.db und den vorgeschlagenen Pfaden prisma/test.db. Erledigt ist es, wenn e2e-Läufe eine separate, saubere SQLite-Datenbank verwenden und der Testzustand zwischen Läufen oder Test-Suites isoliert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- playwright, sqlite, typescript
- Bereich
- databases, testing
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100