Gas Reporter Plugin
Penjelasan
Plugin `hardhat-gas-reporter` (termasuk dalam hardhat-toolbox) menghasilkan laporan konsumsi gas otomatis setiap kali test dijalankan, mirip fitur `--gas-report` di Foundry tapi berbentuk plugin terpisah yang perlu diaktifkan lewat konfigurasi. Laporan mencakup gas rata-rata tiap fungsi contract, serta estimasi biaya deployment dalam USD jika dikonfigurasi dengan API harga gas dan harga ETH. Aktivasi cukup dengan menambahkan objek `gasReporter` di hardhat.config.js dan mengatur `enabled: true`, atau menjalankan test dengan environment variable `REPORT_GAS=true` tanpa mengubah config permanen.
Contoh Konsep
// hardhat.config.js
module.exports = {
solidity: "0.8.20",
gasReporter: {
enabled: process.env.REPORT_GAS === "true",
currency: "USD",
coinmarketcap: process.env.CMC_API_KEY,
},
};
# Jalankan test dengan gas report aktif tanpa ubah config:
# REPORT_GAS=true npx hardhat test
Praktikum
Aktifkan gas reporter di hardhat.config.js, lalu jalankan test suite SimpleBank dan identifikasi fungsi mana yang paling boros gas dari laporan yang dihasilkan.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Set `enabled` lewat environment variable (bukan hardcode true) supaya gas report tidak memperlambat setiap run test harian, hanya aktif saat memang dibutuhkan.