時価総額: $2.0993T -2.01%
ボリューム(24時間): $168.0651B 36.11%
恐怖と貪欲の指数:

16 - 極度の恐怖

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

言語を選択する

言語を選択する

通貨の選択

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

ヘルメットとの 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) までご連絡ください。速やかに削除させていただきます。

関連知識

Bybit で BTC 取引を行う場合、リニア永久契約とインバース永久契約のどちらを選択すればよいですか?

Bybit で BTC 取引を行う場合、リニア永久契約とインバース永久契約のどちらを選択すればよいですか?

2026-06-06 02:54:55

契約決済の仕組み1. Bybit のリニア無期限契約は USDT で決済されます。これは、すべての損益計算、証拠金要件、清算閾値がステーブルコイン単位で表示されることを意味します。 2. 逆永久契約は BTC 自体で決済されるため、すべての取引はトレーダーの BTC 残高に直接影響します。利益があれ...

Bybit で 1 日の最大損失を制限するリスク管理ルールを設定するにはどうすればよいですか?

Bybit で 1 日の最大損失を制限するリスク管理ルールを設定するにはどうすればよいですか?

2026-06-04 16:40:15

アカウントレベルの損失制限の設定1. 2 要素認証を使用して、Web またはモバイル アプリケーション経由で Bybit アカウントにログインします。 2. 「資産」セクションに移動し、左側のメニューから「リスク管理」を選択します。 3. 「日次損失制限」を選択し、機能をオンに切り替えてコントロール...

Binance でポートフォリオ証拠金モードを有効にして証拠金要件を減らすにはどうすればよいですか?

Binance でポートフォリオ証拠金モードを有効にして証拠金要件を減らすにはどうすればよいですか?

2026-06-05 04:59:43

Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、ブロックごとに流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の...

オープン先物ポジションをクローズせずに Binance から Bybit に移行するにはどうすればよいですか?

オープン先物ポジションをクローズせずに Binance から Bybit に移行するにはどうすればよいですか?

2026-06-04 03:59:47

Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の半減期の時点で...

米国における仮想通貨先物取引の利益による税金への影響をどのように処理すればよいでしょうか?

米国における仮想通貨先物取引の利益による税金への影響をどのように処理すればよいでしょうか?

2026-05-29 18:19:59

Bitcoin 半減力学1. Bitcoin のプロトコルでは、ブロック報酬を通じて新しいユニットが導入され、2,100 万コインの固定供給上限が強制されます。 2. 210,000 ブロックごと、つまり約 4 年ごとに、ブロック報酬は半分に減ります。これは半減として知られるプロセスです。 3. 最...

Bybit 取引ボット マーケットプレイスを使用して収益性の高い先物戦略を見つけるにはどうすればよいですか?

Bybit 取引ボット マーケットプレイスを使用して収益性の高い先物戦略を見つけるにはどうすればよいですか?

2026-06-02 04:39:47

Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の半減期の時点で...

Bybit で BTC 取引を行う場合、リニア永久契約とインバース永久契約のどちらを選択すればよいですか?

Bybit で BTC 取引を行う場合、リニア永久契約とインバース永久契約のどちらを選択すればよいですか?

2026-06-06 02:54:55

契約決済の仕組み1. Bybit のリニア無期限契約は USDT で決済されます。これは、すべての損益計算、証拠金要件、清算閾値がステーブルコイン単位で表示されることを意味します。 2. 逆永久契約は BTC 自体で決済されるため、すべての取引はトレーダーの BTC 残高に直接影響します。利益があれ...

Bybit で 1 日の最大損失を制限するリスク管理ルールを設定するにはどうすればよいですか?

Bybit で 1 日の最大損失を制限するリスク管理ルールを設定するにはどうすればよいですか?

2026-06-04 16:40:15

アカウントレベルの損失制限の設定1. 2 要素認証を使用して、Web またはモバイル アプリケーション経由で Bybit アカウントにログインします。 2. 「資産」セクションに移動し、左側のメニューから「リスク管理」を選択します。 3. 「日次損失制限」を選択し、機能をオンに切り替えてコントロール...

Binance でポートフォリオ証拠金モードを有効にして証拠金要件を減らすにはどうすればよいですか?

Binance でポートフォリオ証拠金モードを有効にして証拠金要件を減らすにはどうすればよいですか?

2026-06-05 04:59:43

Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、ブロックごとに流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の...

オープン先物ポジションをクローズせずに Binance から Bybit に移行するにはどうすればよいですか?

オープン先物ポジションをクローズせずに Binance から Bybit に移行するにはどうすればよいですか?

2026-06-04 03:59:47

Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の半減期の時点で...

米国における仮想通貨先物取引の利益による税金への影響をどのように処理すればよいでしょうか?

米国における仮想通貨先物取引の利益による税金への影響をどのように処理すればよいでしょうか?

2026-05-29 18:19:59

Bitcoin 半減力学1. Bitcoin のプロトコルでは、ブロック報酬を通じて新しいユニットが導入され、2,100 万コインの固定供給上限が強制されます。 2. 210,000 ブロックごと、つまり約 4 年ごとに、ブロック報酬は半分に減ります。これは半減として知られるプロセスです。 3. 最...

Bybit 取引ボット マーケットプレイスを使用して収益性の高い先物戦略を見つけるにはどうすればよいですか?

Bybit 取引ボット マーケットプレイスを使用して収益性の高い先物戦略を見つけるにはどうすればよいですか?

2026-06-02 04:39:47

Bitcoin 半減力学1. Bitcoin のプロトコルは、ブロック報酬が約 210,000 ブロックごとに半分になる固定発行スケジュールを強制します。 2. このイベントはおよそ 4 年ごとに発生し、流通する新しい BTC の数を直接減少させます。 3. マイナーは、2020 年の半減期の時点で...

すべての記事を見る

User not found or password invalid

Your input is correct