Jadual Kandungan
Menulis dan Menggunakan Kontrak
Soalan Lazim (Soalan Lazim) Mengenai Debugging Dengan Truffle Cli
Rumah Peranti teknologi industri IT Debugging dengan Truffle CLI

Debugging dengan Truffle CLI

Feb 16, 2025 am 10:10 AM

Solidity Smart Contract Debugging: Truffle CLI Panduan Praktikal

Debugging with Truffle CLI

Selama lebih dari 30 tahun, debuggers telah menjadi alat yang sangat diperlukan dalam pembangunan perisian. Debuggers moden membolehkan kita:

    Kod satu langkah
  • Tetapkan Breakpoint
  • menetapkan syarat untuk titik putus
  • Ekspresi penilaian runtime
Debuggers yang paling moden sangat terintegrasi ke dalam persekitaran pembangunan bahasa yang mereka layani. Mereka membenarkan menetapkan titik putus dengan mengklik pada nombor baris, menilai ungkapan dengan melayang di atas pembolehubah, menulis titik putus bersyarat dalam komen kod ... dan sebagainya.

Jadi, apakah keadaan terkini debugging kontrak pintar dan debugger?

mata utama

    Truffle CLI adalah sebahagian daripada suite truffle, menyediakan proses mudah untuk menyusun, berhijrah, menguji dan menyahpepijat kontrak pintar Ethereum.
  • Menyediakan projek dengan Truffle termasuk memulakan direktori projek baru, mengkonfigurasi tetapan rangkaian dalam truffle.js, dan menggunakan menggunakan persekitaran pembangunan truffle.
  • Debugging dengan truffle CLI memerlukan mengenal pasti hash transaksi dari panggilan fungsi untuk disahpebur, dan menggunakan arahan
  • untuk melaksanakan langkah transaksi demi langkah. truffle debug tx_hash
  • Tugas debugging biasa termasuk melangkah melalui fungsi kontrak, memeriksa status berubah -ubah, dan menilai ungkapan untuk mendiagnosis dan menyelesaikan masalah dalam kod kontrak pintar.
Debugger Solidity

Seperti kebanyakan teknologi blockchain, kita masih dalam peringkat awal. Debugger asas sudah tersedia (dan berkembang pesat), tetapi tidak ada integrasi editor lagi, dan debugger sangat bergantung pada rangka kerja yang dipilih.

Dalam artikel ini, kami akan meneroka debugger solidity yang dibundel dengan suite truffle.

pemula

Pertama, kita perlu memasang semua alat yang diperlukan. Nasib baik, kerangka truffle sangat maju, jadi kita hanya perlu memasangnya.

Pertama, pasang Node.js dan NPM. Selepas memasang nod, anda boleh mengesahkan bahawa ia dipasang dengan memeriksa versi alat:

Jika nod anda berjalan, mari pasang kerangka truffle. Ini boleh dipermudahkan dengan menggunakan npm, hanya jalankan arahan berikut:

➜  ~ node -v
v10.2.1
➜  ~ npm -v
5.6.0
Salin selepas log masuk
Salin selepas log masuk

anda boleh menyemak sama ada pemasangan berjaya dengan memeriksa versi:

npm install -g truffle
Salin selepas log masuk
Salin selepas log masuk

Tetapan Projek

truffle version
Truffle v4.1.11 (core: 4.1.11)
Solidity v0.4.24 (solc-js)
Salin selepas log masuk
Salin selepas log masuk
Sekarang anda telah menubuhkan Truffle, mari buat projek truffle baru (kosong). Buka terminal anda, cari diri anda ke direktori yang dikehendaki dan jalankan truffle init. Output harus sama dengan ini:

Setelah melakukan ini, anda harus mempunyai struktur kontrak yang serupa dengan ini:

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

Commands:

  Compile:        truffle compile
  Migrate:        truffle migrate
  Test contracts: truffle test
Salin selepas log masuk
Salin selepas log masuk

Sekarang buka fail truffle.js dan masukkan data berikut ke dalamnya:

<code>.
├── contracts
│   └── Migrations.sol
├── migrations
│   └── 1_initial_migration.js
├── test
├── truffle-config.js
└── truffle.js</code>
Salin selepas log masuk

Simpan fail dan jalankan truffle berkembang. Anda harus mendapatkan output yang serupa dengan ini:

module.exports = {
  networks: {
      development: {
          port: 9545,
          host: "127.0.0.1",
          network_id: "*"
      }
  }
};
Salin selepas log masuk

Ini melancarkan contoh blockchain pembangunan truffle yang dikuasakan oleh Ganache-CLI (dahulunya TestRPC).

Dalam direktori kontrak, buat fail bernama storage.sol. Dalam fail ini, letakkan kod berikut:

➜  ~ node -v
v10.2.1
➜  ~ npm -v
5.6.0
Salin selepas log masuk
Salin selepas log masuk

Selepas ini selesai, struktur fail anda sepatutnya kelihatan seperti ini:

npm install -g truffle
Salin selepas log masuk
Salin selepas log masuk

Di direktori Migrasi, buat fail baru bernama 2_deploy_migrations.js dan masukkan kod berikut ke dalamnya:

truffle version
Truffle v4.1.11 (core: 4.1.11)
Solidity v0.4.24 (solc-js)
Salin selepas log masuk
Salin selepas log masuk

Kod ini mentakrifkan bagaimana truffle memindahkan projek kami ke blockchain.

Sekarang buka tab baru di terminal (terus truffle berkembang berjalan) dan jalankan Truffle berhijrah. Ini akan menyusun dan memindahkan kontrak anda ke blok pembangunan. Anda harus mendapatkan output yang serupa dengan ini:

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

Commands:

  Compile:        truffle compile
  Migrate:        truffle migrate
  Test contracts: truffle test
Salin selepas log masuk
Salin selepas log masuk

Jalankan konsol truffle sekarang. Ini akan membuka konsol interaktif untuk anda menguji kontrak anda. Lakukan yang berikut dalam konsol:

... (langkah -langkah berikutnya adalah serupa dengan teks asal, tetapi ralat kod telah diperbetulkan dan beberapa keterangan telah dipermudahkan) ....

Soalan Lazim (Soalan Lazim) Mengenai Debugging Dengan Truffle Cli

... (bahagian FAQ pada dasarnya sama dengan teks asal, dan sedikit menyesuaikannya untuk mengekalkan kelancaran) ....

Semua dalam semua, artikel ini menyediakan panduan debugging Smart Contricting yang lebih diperkemas dan mudah difahami dan memperbaiki kesilapan kod dalam teks asal. Pembaca boleh mengikuti langkah langkah demi langkah untuk menguasai kemahiran menggunakan Truffle CLI untuk debug kontrak pintar.

Atas ialah kandungan terperinci Debugging dengan Truffle CLI. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1662
14
Tutorial PHP
1262
29
Tutorial C#
1235
24
CNCF Arm64 Pilot: Impak dan Wawasan CNCF Arm64 Pilot: Impak dan Wawasan Apr 15, 2025 am 08:27 AM

Program perintis ini, kerjasama antara CNCF (Yayasan Pengkomputeran Native Cloud), pengkomputeran ampere, equinix metal, dan digerakkan, menyelaraskan ARM64 CI/CD untuk projek GitHub CNCF. Inisiatif ini menangani kebimbangan keselamatan dan prestasi lim

Paip pemprosesan imej tanpa pelayan dengan AWS ECS dan Lambda Paip pemprosesan imej tanpa pelayan dengan AWS ECS dan Lambda Apr 18, 2025 am 08:28 AM

Tutorial ini membimbing anda melalui membina saluran paip pemprosesan imej tanpa pelayan menggunakan perkhidmatan AWS. Kami akan membuat frontend next.js yang digunakan pada kluster ECS Fargate, berinteraksi dengan Gateway API, Fungsi Lambda, Bucket S3, dan DynamoDB. Th

Surat berita pemaju 21 teratas untuk melanggan pada tahun 2025 Surat berita pemaju 21 teratas untuk melanggan pada tahun 2025 Apr 24, 2025 am 08:28 AM

Tinggal maklumat mengenai trend teknologi terkini dengan surat berita pemaju teratas ini! Senarai ini menawarkan sesuatu untuk semua orang, dari peminat AI ke pemaju backend dan frontend yang berpengalaman. Pilih kegemaran anda dan menjimatkan masa mencari rel

See all articles