時価総額: $2.641T 0.40%
ボリューム(24時間): $98.8166B 16.07%
恐怖と貪欲の指数:

68 - 貪欲

  • 時価総額: $2.641T 0.40%
  • ボリューム(24時間): $98.8166B 16.07%
  • 恐怖と貪欲の指数:
  • 時価総額: $2.641T 0.40%
暗号
トピック
暗号化
ニュース
暗号造園
動画
トップクリプトスペディア

言語を選択する

言語を選択する

通貨の選択

暗号
トピック
暗号化
ニュース
暗号造園
動画

ヘルメットとの Solidity 契約をテストするにはどうすればよいですか?

Hardhat enables robust smart contract development with local testing, forking, debugging tools like console.log in Solidity, gas reporting, and precise event/time manipulation.

2026/01/20 12:20

ヘルメット環境のセットアップ

1. Node.js と npm をインストールして、Hardhat のツールチェーンとの互換性を確保します。

2. npm init -yを実行して、新しい Node.js プロジェクトを初期化します。

3. npm install --save-devhardhatを実行して、Hardhat を開発依存関係として追加します。

4. npx ハードハットを使用してハードハット セットアップ ウィザードを起動し、「空のhardhat.config.js を作成する」を選択します。

5.contracts/ディレクトリを作成し、その中に Solidity ソース ファイル ( Token.solなど) を配置します。

JavaScript または TypeScript でのテスト スクリプトの作成

1. test/フォルダーを生成し、 Token.test.jsなどのテスト ファイルを追加します。

2. Hardhat のテスト ユーティリティをインポートします。 const { Expect } = require('@nomicfoundation/hardhat-c​​hai-matchers');

3. テスト ケースを論理的に構造化するには、 describe() ブロックit()ブロックを使用します。

4. 手動のバイトコード処理ではなく、 await ethers.deployContract('Token')を介してテスト内にコントラクトをデプロイします。

5. await token.transfer(address, amount)を使用してコントラクト メソッドと対話し、Chai マッチャーで結果をアサートします。

ローカルのフォークされたネットワークでのテストの実行

1. RPC URL を使用して Ethereum メインネットや Sepolia などのネットワークを指定して、 hardhat.config.jsでフォークを構成します。

2. フォークを有効にして Hardhat ネットワークを起動します: npxhardhatnode --fork https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY

3. ABI を取得し、 ethers.getContractAt()経由でアタッチすることで、デプロイされたメインネット コントラクト (Uniswap V3 プールなど) と対話するテストを作成します。

4. Hardhat Network の組み込みヘルパーを使用して、ガス価格の変動やブロックのタイムスタンプ操作などの現実世界の状況をシミュレートします。

5. await network.provider.request({ method: 'hardhat_impersonateAccount', params: [address] })を使用して、Etherscan などのエクスプローラーから取得した EOA アドレスを偽装することで、許可されたアクセス パターンを検証します。

Hardhat の組み込みツールを使用したデバッグ

1. console.log()ステートメントを Solidity コードに直接挿入し、コンソール ログ プラグインを有効にしてコンパイルします。

2. npx hardware test --no-compileを実行して、テスト ロジックのみが変更される場合に再コンパイルをスキップします。

3.ハードハット トレーサを使用して、各トランザクション中に実行される低レベルの EVM オペコードを検査します。

4.ハードハット ガス レポーターを活用して、関数呼び出し全体でのガス消費量を測定し、非効率性を検出します。

5. Hardhat config の mocha セクションでthrowOnTransactionFailures: true を設定して、取り消されたトランザクションのスタック トレースを有効にします。

よくある質問

Q: Hardhat を使用して、契約によって発行されたイベントをテストできますか? A: はい。 await Expect(tx).to.emit(contract, 'Transfer').withArgs(owner, Recipes, amount)を使用してイベント パラメーターを確認します。

Q: 再入可能脆弱性をテストするにはどうすればよいですか? A: テスト内で悪意のある攻撃者コントラクトを展開し、脆弱な機能をトリガーし、バランスの不一致または状態の破損をアサートします。

Q: 権利確定スケジュールなどの時間依存ロジックをテストすることは可能ですか? A: はい。 await network.provider.send('evm_increaseTime', [秒])に続いてawait network.provider.send('evm_mine')を使用してブロックを進めます。

Q: 私の契約で OpenZeppelin の AccessControl を使用している場合はどうなりますか? A: 制限された関数を呼び出す前に、 await accessControl.grantRole(ROLE_HASH, address)を使用してテスト内でロールを割り当てます。

免責事項:info@kdj.com

提供される情報は取引に関するアドバイスではありません。 kdj.com は、この記事で提供される情報に基づいて行われた投資に対して一切の責任を負いません。暗号通貨は変動性が高いため、十分な調査を行った上で慎重に投資することを強くお勧めします。

このウェブサイトで使用されているコンテンツが著作権を侵害していると思われる場合は、直ちに当社 (info@kdj.com) までご連絡ください。速やかに削除させていただきます。

関連知識

DOGE 先物の出来高と建玉を確認するにはどうすればよいですか?

DOGE 先物の出来高と建玉を確認するにはどうすればよいですか?

2026-09-12 08:39:38

DOGE 先物ボリュームを理解する1. 先物取引高とは、特定の時間枠内で取引される DOGE 件の先物契約の総数を指し、通常は 1 日または 1 時間ごとに測定されます。 2. 出来高が多いということは、多くの場合、市場への参加が強力であることを示しており、価格変動の状況に応じてトレンドの継続または...

BTC先物の出来高と建玉を確認するにはどうすればよいですか?

BTC先物の出来高と建玉を確認するにはどうすればよいですか?

2026-09-12 15:19:55

BTC先物指標のデータソース1. CoinGlass API v4 は、30 以上の取引所にわたるリアルタイムの資金調達レート、清算ヒートマップ、および詳細な建玉の内訳を提供します。 2. Binance Futures API は、ビッドアスク深度、契約固有の出来高履歴、マージン率スナップショット...

DOGEUSDT 無期限契約チャートの見方

DOGEUSDT 無期限契約チャートの見方

2026-09-11 19:19:48

DOGEUSDT 無期限チャートの価格アクションを理解する1. ローソク足の形成は、当面の市場センチメントを明らかにします。緑のローソクは買い優勢を示し、赤のローソクはその期間中の売り圧力を示します。 2. 本体の上下の芯は、価格の高値または低値の拒否を示します。不安定なミームコイン市場では、長い上...

Binance の ETHUSDT 先物チャートを読むには?

Binance の ETHUSDT 先物チャートを読むには?

2026-09-13 05:20:26

Bitcoin 半減力学1. 210,000 ブロックごとに、Bitcoin 名のマイナーのブロック報酬が半分になります。 2. このイベントは約 4 年ごとに発生し、Bitcoin のプロトコルにハードコードされています。 3. 最新の半減により、報酬はブロックあたり 6.25 BTC から 3....

BinanceでBTC先物ファンディング手数料を確認するにはどうすればよいですか?

BinanceでBTC先物ファンディング手数料を確認するにはどうすればよいですか?

2026-09-10 08:00:06

ファンディングレート表示の場所1. Binance Futures 取引インターフェイスに移動し、BTCUSDT 無期限契約を選択します。 2. 価格チャートの直下またはオーダーブックに隣接する領域を観察します。この領域には、「資金調達レート」とマークされたラベル付きボックスが含まれています。 3....

SOLUSDT 先物損益の計算方法

SOLUSDT 先物損益の計算方法

2026-09-10 19:19:37

SOLUSDT 先物契約仕様の理解1. 各 SOLUSDT 先物契約は USDT で見積もられ、USDT で決済されるため、線形永久契約となります。 2. 基本資産は SOL ですが、見積資産は USDT です。すべての損益計算は USDT で直接表示されます。 3. 価格変動の最小ティック サイズ...

DOGE 先物の出来高と建玉を確認するにはどうすればよいですか?

DOGE 先物の出来高と建玉を確認するにはどうすればよいですか?

2026-09-12 08:39:38

DOGE 先物ボリュームを理解する1. 先物取引高とは、特定の時間枠内で取引される DOGE 件の先物契約の総数を指し、通常は 1 日または 1 時間ごとに測定されます。 2. 出来高が多いということは、多くの場合、市場への参加が強力であることを示しており、価格変動の状況に応じてトレンドの継続または...

BTC先物の出来高と建玉を確認するにはどうすればよいですか?

BTC先物の出来高と建玉を確認するにはどうすればよいですか?

2026-09-12 15:19:55

BTC先物指標のデータソース1. CoinGlass API v4 は、30 以上の取引所にわたるリアルタイムの資金調達レート、清算ヒートマップ、および詳細な建玉の内訳を提供します。 2. Binance Futures API は、ビッドアスク深度、契約固有の出来高履歴、マージン率スナップショット...

DOGEUSDT 無期限契約チャートの見方

DOGEUSDT 無期限契約チャートの見方

2026-09-11 19:19:48

DOGEUSDT 無期限チャートの価格アクションを理解する1. ローソク足の形成は、当面の市場センチメントを明らかにします。緑のローソクは買い優勢を示し、赤のローソクはその期間中の売り圧力を示します。 2. 本体の上下の芯は、価格の高値または低値の拒否を示します。不安定なミームコイン市場では、長い上...

Binance の ETHUSDT 先物チャートを読むには?

Binance の ETHUSDT 先物チャートを読むには?

2026-09-13 05:20:26

Bitcoin 半減力学1. 210,000 ブロックごとに、Bitcoin 名のマイナーのブロック報酬が半分になります。 2. このイベントは約 4 年ごとに発生し、Bitcoin のプロトコルにハードコードされています。 3. 最新の半減により、報酬はブロックあたり 6.25 BTC から 3....

BinanceでBTC先物ファンディング手数料を確認するにはどうすればよいですか?

BinanceでBTC先物ファンディング手数料を確認するにはどうすればよいですか?

2026-09-10 08:00:06

ファンディングレート表示の場所1. Binance Futures 取引インターフェイスに移動し、BTCUSDT 無期限契約を選択します。 2. 価格チャートの直下またはオーダーブックに隣接する領域を観察します。この領域には、「資金調達レート」とマークされたラベル付きボックスが含まれています。 3....

SOLUSDT 先物損益の計算方法

SOLUSDT 先物損益の計算方法

2026-09-10 19:19:37

SOLUSDT 先物契約仕様の理解1. 各 SOLUSDT 先物契約は USDT で見積もられ、USDT で決済されるため、線形永久契約となります。 2. 基本資産は SOL ですが、見積資産は USDT です。すべての損益計算は USDT で直接表示されます。 3. 価格変動の最小ティック サイズ...

すべての記事を見る

User not found or password invalid

Your input is correct