スキル web3-testing
📦

web3-testing

安全 🔑 環境変数

Hardhatでスマートコントラクトをテストする

スマートコントラクトの包括的なテスト 작성は複雑で時間がかかります。このスキルは、HardhatとFoundryを使用したユニットテスト、統合テスト、ファジング、ガス最適化、メインネットフォーク用のすぐに使えるパターンを提供します。

対応: Claude Codex Code(CC)
📊 71 十分
1

スキルZIPをダウンロード

2

Claudeでアップロード

設定 → 機能 → スキル → スキルをアップロードへ移動

3

オンにして利用開始

テストする

「web3-testing」を使用しています。 ERC20トークンコントラクトのHardhatユニットテストを作成する

期待される結果:

  • デプロイメントテスト: 所有者の割り当てと総供給量を検証
  • トランスファテスト: アカウント間のトークン転送を確認
  • イベントテスト: TransferおよびApprovalイベントの発出をチェック
  • 残高テスト: 転送後の残高変更を検証
  • タイムテスト: 時間ロック付きトークンリリース機能をテスト

「web3-testing」を使用しています。 ファジングを使用したトークン転送のFoundryテストを作成する

期待される結果:

  • ファジングテスト: 妥当な範囲内のランダムな金額で転送をテスト
  • バウンダリテスト: ゼロと最大転送金額を処理
  • プリャンクテスト: 異なる送信者アドレスをシミュレート
  • イベントテスト: 正しいパラメータで発出されたTransferイベントを検証

セキュリティ監査

安全
v4 • 1/17/2026

Documentation-only skill containing code examples and best practices for smart contract testing. Static findings are false positives triggered by blockchain testing terminology (prank, fork, deal), environment variable references demonstrating secure secret handling patterns, and markdown code block syntax. The skill teaches recommended security practices and has no executable code, network calls, or file access capabilities.

2
スキャンされたファイル
595
解析された行数
1
検出結果
4
総監査数

リスク要因

🔑 環境変数 (1)
監査者: claude 監査履歴を表示 →

品質スコア

38
アーキテクチャ
100
保守性
85
コンテンツ
30
コミュニティ
100
セキュリティ
91
仕様準拠

作れるもの

テストスイートをセットアップする

HardhatとFoundryパターンを使用して、Solidityコントラクトの包括的なテストスイートを作成します。

DeFi統合を検証する

Uniswapのような既存のDeFiプロトコルのメインネットフォークに対してスマートコントラクトをテストします。

コントラクトロジックをファジングする

Foundryファジングを使用して、スマートコントラクトのエッジケースと潜在的な脆弱性を発見します。

これらのプロンプトを試す

基本的なユニットテスト
デプロイメント、トランスファ、および承認イベントをテストするERC20トークンコントラクトのHardhatユニットテストを作成してください。
統合テスト
Hardhatを使用して、デposit、クレーム報酬、および引き出しフローをテストするステキングコントラクトの統合テストを作成してください。
メインネットフォーク
Ethereumメインネットをフォークし、DAIトークンのフォークを使用してUniswap V2スワップ機能をテストするテストを作成してください。
ガス最適化
Hardhatガスレポーターを使用して、同じスマートコントラクト関数の2つの異なる実装間のガス比較テストを作成してください。

ベストプラクティス

  • 複数のテストケースでコード重複を避けるためにフィクスチャを使用する
  • 重要なコントラクト関数で少なくとも90%のテストカバレッジを目指す
  • ゼロアドレス、最大値、再entrantシナリオなどのエッジケース��テストする

回避

  • 単一のテスト関数で複数の関連性のないシナリオをテストすることを避ける
  • すべてのテストでメインネットフォークを使用しない - 統合シナリオ用に温存する
  • テストファイルで秘密鍵やシークレットをハードコードすることを避ける

よくある質問

どのようなテストフレームワークがサポートされていますか?
Hardhat with Chai/Ethers.jsとFoundry with Forgeの両方が完全にサポートされています。
推奨される最大テストカバレッジは何ですか?
重要なコントラクトで90%以上カバレッジを目標にしてください。npx hardhat coverageを使用してレポートを生成します。
このスキルは直接メインネットとインタラクションできますか?
いいえ。このスキルはメインネットフォークのパターンを提供しますが、ユーザーは独自のRPCエンドポイントとキーを構成します。
私の秘密鍵のデータは安全ですか?
はい。このスキルは例のパターンのみを提供します。ユーザーはプロジェクトの環境変数に独自のキーを追加します。
なぜ私のテストがタイムアウトエラーで失敗していますか?
hardhat.config.jsでHardhatタイムアウトを増やすか、大きなテストをアサーションの少ない小さな関数に分割してください。
FoundryはHardhatとどう違いますか?
FoundryはテストにSolidityを使用し、組み込みファジングでより高速に実行されます。HardhatはJavaScriptを使用し、より複雑な統合に適しています。

開発者の詳細

ファイル構成

📄 SKILL.md