Wie lösche ich den Jest-Cache?


104

Jest holt eine alte Version eines Pakets ab und daher schlagen meine Tests fehl, wenn ich sie nicht benutze --no-cache. Ich kann sogar den Paketordner aus löschen node_modulesund Jest führt die Tests gerne aus (fast alle bestehen).

Wie lösche ich den Jest-Cache?

Antworten:


104

Sie können den Cache-Speicherort finden, indem Sie ausführen jest --showConfig. Suchen Sie nach dem cacheDirectorySchlüssel. Der Wert ist der Name des Ordners, den Sie entfernen müssen.


121

Ab Jest 22.0.0+ können Sie die folgende --clearCacheOption verwenden:

Löscht das Jest-Cache-Verzeichnis und wird dann beendet, ohne dass Tests ausgeführt werden. Löscht cacheDirectory, wenn die Option übergeben wird, oder das Standard-Cache-Verzeichnis von Jest.

Zum einfachen Nachschlagen (gemäß @Beraliv): https://facebook.github.io/jest/docs/en/cli.html#clearcache


84

Renn einfach:

jest --clearCache

Wenn Sie Jest als Abhängigkeit in Ihrem Knotenprojekt installiert haben und der jestBefehl nicht funktioniert, erstellen Sie einfach ein neues Skript in Ihrer package.jsonDatei.

{
    ...
    "scripts:" {
        "clear_jest": "jest --clearCache"
    }
    ...
}

Und dann laufen Sie in Ihrem Terminal:

npm run clear_jest

Mit modernem NPM können Sie auch ausführen (Credits an @johny ) :

npx jest --clearCache

22
Mit modernem NPM könnten Sie auch laufennpx jest --clearCache
Johny

14

Zuerst müssen Sie die Scherzversion kennen:

yarn jest --version

Scherz> = 22.0.0

yarn jest --clearCache

Scherz <22.0.0

yarn jest --showConfig | grep cacheDir

Rückgabe (Sie müssen diesen Ordner entfernen)

      "cacheDirectory": "/tmp/jest_rs",

Dann entfernen Sie es

rm -rf /tmp/jest_rs

Wenn Sie nicht verwenden yarn, machen Sie Anweisungen mitnpx jest

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.