Fehler beim Ausführen des Trüffeltests im Terminal

Ich versuche, Trüffel zu verwenden, um meine Smart Contracts zu testen, und habe einige Testdateien geschrieben. Ich erhalte eine Fehlermeldung auf dem Terminal, das versucht, den Test auszuführen, und bin mir nicht sicher, was der Grund dafür ist.

Ich greife per Terminal auf mein Verzeichnis zu und schreibe dann:

  • Trüffel kompilieren
  • Trüffel entwickeln
  • Wandern
  • einsetzen

Bisher läuft alles bestens. Wenn ich dann truffle test eingebe, wird dieser Fehler zurückgegeben:

SyntaxError: Unexpected identifier
    at REPLServer.Interface._onLine (readline.js:280:10)
    at REPLServer.emit (events.js:211:7)
    at emitOne (events.js:116:13)
    at REPLServer.onLine (repl.js:468:10)
    at REPLServer.runBound [as eval] (domain.js:314:12)
    at bound (domain.js:301:14)
    at ReplManager.interpret (/usr/local/lib/node_modules/truffle/build/webpack:/packages/truffle-core/lib/repl.js:119:1)
    at Console.interpret (/usr/local/lib/node_modules/truffle/build/webpack:/packages/truffle-core/lib/console.js:164:1)
    at Object.runInContext (vm.js:119:10)
    at createScript (vm.js:80:10)

Dies passiert auch, wenn ich versuche, den Truffle-Test auszuführen, gefolgt von der Adresse des Verzeichnisses, in dem die Testdatei, die ich verwenden möchte, gespeichert ist.

Weiß jemand, was das Problem sein könnte? Die einzigen Lösungen, die ich für ähnliche Probleme gefunden habe, sprachen davon, dass es sich um ein Windows-Problem handelte. Ich verwende jedoch einen Mac, daher kann ich diese Lösungen nicht anwenden.

Danke!

Antworten (2)

Ich hatte das gleiche Problem und konnte es umgehen, indem ich den Truffle-Test außerhalb der Truffle-Konsole ausführte. Ich führe den truffle.cmd-Test auf der Befehlszeile (Windows) aus.

Ich habe genau den gleichen Fehler (Wort für Wort) erhalten, indem ich den folgenden Befehl von der Truffle-Konsole aus ausgeführt habe: "let instance = await VonCoinContract.deployed()". Es stellte sich heraus, dass es sich um ein Trüffelproblem handelte.

„Die Konsole von Truffle unterstützt die await-Syntax leider noch nicht. Aber! Sie brauchen sie für diese Methode nicht; führen Sie einfach session.connect() aus. Sehen Sie sich die öffentlichen Methoden in den Debugger-API-Dokumenten an, das sollte helfen. Nehmen Sie Beachten Sie, welche Methoden als asynchron gekennzeichnet sind, damit Sie wissen, welche Promises zurückgeben. " von https://github.com/trufflesuite/truffle-debugger/issues/72

Ich kenne die Antwort auf Ihre Frage nicht, kann aber für jemanden von Nutzen sein, der auf die gleiche Weise hierher gekommen ist wie ich;)