Maison > Périphériques technologiques > Industrie informatique > Débogage avec CLI à la truffe

Débogage avec CLI à la truffe

Lisa Kudrow
Libérer: 2025-02-16 10:10:11
original
1024 Les gens l'ont consulté

Solidity Smart Contrat Debogging: Truffle CLI Practical Guide

Debugging with Truffle CLI

Depuis plus de 30 ans, les débuggeurs sont un outil indispensable dans le développement de logiciels. Les débogateurs modernes nous permettent de:

  • Code en une seule étape
  • Set Breakpoint
  • définir des conditions pour les points d'arrêt
  • Expression d'évaluation d'exécution

La plupart des débuggeurs modernes sont hautement intégrés dans l'environnement de développement des langues qu'ils servent. Ils permettent de définir des points d'arrêt en cliquant sur les numéros de ligne, en évaluant les expressions en survolant les variables, en écrivant des points d'arrêt conditionnels dans les commentaires de code ... et ainsi de suite.

Alors, quelle est la situation actuelle du débogage du contrat intelligent Solidity et du débogueur?

points clés

  • Truffle CLI fait partie intégrante de la suite de truffes, offrant un processus simplifié pour compiler, migrer, tester et déboguer les contrats intelligents Ethereum.
  • La configuration des projets avec truffes comprend l'initialisation d'un nouveau répertoire de projet, la configuration des paramètres réseau dans truffle.js et le déploiement à l'aide de l'environnement de développement de la truffe.
  • Le débogage avec la CLI truffe nécessite d'identifier le hachage de transaction de l'appel de fonction à déboguer et d'utiliser la commande truffle debug tx_hash pour exécuter la transaction étape par étape.
  • Les tâches de débogage courantes incluent le parc à travers les fonctions du contrat, la vérification de l'état des variables et l'évaluation des expressions pour diagnostiquer et résoudre les problèmes dans le code de contrat intelligent.

Débogueur de solidité

Comme la plupart des technologies de blockchain, nous sommes encore à nos balbutiements. Le débogueur de base est déjà disponible (et évolue rapidement), mais il n'y a pas encore d'intégration de l'éditeur, et le débogueur s'appuie fortement sur le cadre sélectionné. Dans cet article, nous explorerons le débogueur de solidité regroupé avec la suite de truffes.

débutant

Tout d'abord, nous devons installer tous les outils nécessaires. Heureusement, le cadre de truffes est très bien développé, nous avons donc juste besoin de l'installer.

Tout d'abord, installez Node.js et NPM. Après avoir installé le nœud, vous pouvez vérifier qu'il est installé en vérifiant la version de l'outil:

Si votre nœud est en cours d'exécution, installons le cadre de truffes. Cela peut être simplifié à l'aide de NPM, il suffit d'exécuter la commande suivante:
➜  ~ node -v
v10.2.1
➜  ~ npm -v
5.6.0
Copier après la connexion
Copier après la connexion

Vous pouvez vérifier si l'installation est réussie en vérifiant la version:
npm install -g truffle
Copier après la connexion
Copier après la connexion

Paramètres du projet
truffle version
Truffle v4.1.11 (core: 4.1.11)
Solidity v0.4.24 (solc-js)
Copier après la connexion
Copier après la connexion

Maintenant que vous avez configuré la truffe, créons un nouveau (vide) projet de truffes. Ouvrez votre terminal, localisez-vous au répertoire souhaité et exécutez Truffle Init. La sortie doit être similaire à ceci:

Après cela, vous devriez avoir une structure contractuelle similaire à ceci:
truffle init
Downloading...
Unpacking...
Setting up...
Unbox successful. Sweet!

Commands:

  Compile:        truffle compile
  Migrate:        truffle migrate
  Test contracts: truffle test
Copier après la connexion
Copier après la connexion

Ouvrez maintenant le fichier truffle.js et y mettez les données suivantes:
<code>.
├── contracts
│   └── Migrations.sol
├── migrations
│   └── 1_initial_migration.js
├── test
├── truffle-config.js
└── truffle.js</code>
Copier après la connexion

Enregistrez le fichier et exécutez les truffes développer. Vous devriez obtenir une sortie similaire à ceci:
module.exports = {
  networks: {
      development: {
          port: 9545,
          host: "127.0.0.1",
          network_id: "*"
      }
  }
};
Copier après la connexion

Cela lance une instance de blockchain de développement de la truffe alimentée par Ganache-CLI (anciennement testrpc).
<code>truffle develop
Truffle Develop started at http://127.0.0.1:9545/

... (账户和私钥信息) ...</code>
Copier après la connexion

Rédaction et déploiement des contrats

Dans le répertoire des contrats, créez un fichier nommé Storage.Sol. Dans ce fichier, mettez le code suivant:

➜  ~ node -v
v10.2.1
➜  ~ npm -v
5.6.0
Copier après la connexion
Copier après la connexion

Une fois cela fait, votre structure de fichiers devrait ressembler à ceci:

npm install -g truffle
Copier après la connexion
Copier après la connexion

Dans le répertoire des migrations, créez un nouveau fichier nommé 2_deploy_migrations.js et y met le code suivant:

truffle version
Truffle v4.1.11 (core: 4.1.11)
Solidity v0.4.24 (solc-js)
Copier après la connexion
Copier après la connexion

Ce code définit comment la truffe migre nos projets vers la blockchain.

Ouvrez maintenant un nouvel onglet dans le terminal (Keep Truffle Develop Running) et exécutez la truffe migrée. Cela compilera et migrera votre contrat vers la blockchain de développement. Vous devriez obtenir une sortie similaire à ceci:

truffle init
Downloading...
Unpacking...
Setting up...
Unbox successful. Sweet!

Commands:

  Compile:        truffle compile
  Migrate:        truffle migrate
  Test contracts: truffle test
Copier après la connexion
Copier après la connexion

Exécutez la console de truffe maintenant. Cela vous ouvrira une console interactive pour tester votre contrat. Procédez comme suit dans la console:

... (les étapes suivantes sont similaires au texte d'origine, mais l'erreur de code a été corrigée et une certaine description a été simplifiée) ....

FAQ (FAQ) sur le débogage avec la truffe CLI

... (La partie FAQ est fondamentalement la même que le texte d'origine, et l'ajuster légèrement pour maintenir la maîtrise) ....

Dans l'ensemble, cet article fournit un guide de débogage du contrat intelligent de solidité plus rationalisé et plus facile à comprendre et corrige les erreurs de code dans le texte d'origine. Les lecteurs peuvent suivre les étapes étape par étape pour maîtriser les compétences de l'utilisation de la CLI de truffes pour déboguer les contrats intelligents.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal