epicweb-dev / epicweb-dev/epic-stack

How to use a different `*.db` file during e2e tests?

Offen
#1,061 10 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
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

Beitragsleitfaden öffnen

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

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.