Solidity Smart Contract Debugging: TRUFFL CLI Praktische Anleitung
Seit mehr als 30 Jahren sind Debugger ein unverzichtbares Tool für die Softwareentwicklung. Moderne Debugger ermöglichen uns:
Die meisten modernen Debugger sind in der Entwicklungsumgebung der Sprachen, denen sie dienen, stark integriert. Sie ermöglichen das Einstellen von Haltepunkten, indem Sie auf Zeilennummern klicken, Ausdrücke bewerten, indem Sie über Variablen schweben und bedingte Haltepunkte in Code -Kommentaren schreiben ... usw.
Wie ist die aktuelle Situation des Debuggens und des Debuggers von Solidity Smart Contract?
truffle debug tx_hash
, um die Transaktion Schritt für Schritt auszuführen. Wie die meisten Blockchain -Technologien sind wir noch in unserer Kindheit. Der grundlegende Debugger ist bereits verfügbar (und entwickelt sich schnell weiter), aber es gibt noch keine Editor -Integration, und der Debugger stützt sich stark auf das ausgewählte Framework. In diesem Artikel werden wir den mit der Trüffelsuite gebündelten Soliditätsdebugger untersuchen.
Anfänger
Installieren Sie zuerst node.js und npm. Nach dem Installieren von Knoten können Sie überprüfen, ob es installiert wird, indem Sie die Version des Tools überprüfen:
Wenn Ihr Knoten ausgeführt wird, installieren wir das Trüffel -Framework. Dies kann durch die Verwendung von NPM vereinfacht werden. Führen Sie einfach den folgenden Befehl aus:
➜ ~ node -v v10.2.1 ➜ ~ npm -v 5.6.0
Sie können überprüfen, ob die Installation erfolgreich ist, indem Sie die Version überprüfen:
npm install -g truffle
Projekteinstellungen
truffle version Truffle v4.1.11 (core: 4.1.11) Solidity v0.4.24 (solc-js)
Danach sollten Sie eine ähnliche Vertragsstruktur haben:
truffle init Downloading... Unpacking... Setting up... Unbox successful. Sweet! Commands: Compile: truffle compile Migrate: truffle migrate Test contracts: truffle test
Öffnen Sie nun die Datei truffle.js und geben Sie die folgenden Daten hinein:
<code>. ├── contracts │ └── Migrations.sol ├── migrations │ └── 1_initial_migration.js ├── test ├── truffle-config.js └── truffle.js</code>
Speichern Sie die Datei und führen Sie Trüffel aus. Sie sollten eine ähnliche Ausgabe wie folgt erhalten:
module.exports = { networks: { development: { port: 9545, host: "127.0.0.1", network_id: "*" } } };
Dies startet eine Trüffelentwicklungs-Blockchain-Instanz, die von Ganache-Cli (ehemals TestRPC) angetrieben wird.
<code>truffle develop Truffle Develop started at http://127.0.0.1:9545/ ... (账户和私钥信息) ...</code>
Erstellen Sie im Verzeichnis Contracts eine Datei namens Storage.sol. Geben Sie in dieser Datei den folgenden Code ein:
➜ ~ node -v v10.2.1 ➜ ~ npm -v 5.6.0
Danach sollte Ihre Dateistruktur so aussehen:
npm install -g truffle
Erstellen Sie im Verzeichnis der Migrationen eine neue Datei mit dem Namen 2_Deploy_Migrations.js und geben Sie den folgenden Code hinein:
truffle version Truffle v4.1.11 (core: 4.1.11) Solidity v0.4.24 (solc-js)
Dieser Code definiert, wie Trüffel unsere Projekte in die Blockchain migriert.
Öffnen Sie nun eine neue Registerkarte im Terminal (TRUFFLE -EVE -TRUFFEL -Laufen) und führen Sie Trüffel -Migrate aus. Dies wird Ihren Vertrag zusammenstellen und in die Entwicklungsblockchain migrieren. Sie sollten eine ähnliche Ausgabe wie folgt erhalten:
truffle init Downloading... Unpacking... Setting up... Unbox successful. Sweet! Commands: Compile: truffle compile Migrate: truffle migrate Test contracts: truffle test
Führen Sie jetzt die Trüffelkonsole aus. Dadurch wird eine interaktive Konsole eröffnet, damit Sie Ihren Vertrag testen können. Machen Sie Folgendes in der Konsole:
... (Die nachfolgenden Schritte ähneln dem Originaltext, aber der Codefehler wurde korrigiert und einige Beschreibung wurde vereinfacht) ....
... (Der FAQ -Teil ist im Grunde genommen dem ursprünglichen Text und stellt ihn leicht an, um die Fließfähigkeit aufrechtzuerhalten) ....
InsgesamtInsgesamt enthält dieser Artikel einen optimierteren und leicht verständlichen Smart Contract-Debugging-Handbuch und behebt Codefehler im Originaltext. Die Leser können die Schritte Schritt für Schritt befolgen, um die Fähigkeiten der Verwendung von Trüffel -CLI zu beherrschen, um intelligente Verträge zu debuggen.
Das obige ist der detaillierte Inhalt vonDebugging mit Trüffel -CLI. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!