web3-testing
Hardhatでスマートコントラクトをテストする
スマートコントラクトの包括的なテスト 작성は複雑で時間がかかります。このスキルは、HardhatとFoundryを使用したユニットテスト、統合テスト、ファジング、ガス最適化、メインネットフォーク用のすぐに使えるパターンを提供します。
スキルZIPをダウンロード
Claudeでアップロード
設定 → 機能 → スキル → スキルをアップロードへ移動
オンにして利用開始
テストする
「web3-testing」を使用しています。 ERC20トークンコントラクトのHardhatユニットテストを作成する
期待される結果:
- デプロイメントテスト: 所有者の割り当てと総供給量を検証
- トランスファテスト: アカウント間のトークン転送を確認
- イベントテスト: TransferおよびApprovalイベントの発出をチェック
- 残高テスト: 転送後の残高変更を検証
- タイムテスト: 時間ロック付きトークンリリース機能をテスト
「web3-testing」を使用しています。 ファジングを使用したトークン転送のFoundryテストを作成する
期待される結果:
- ファジングテスト: 妥当な範囲内のランダムな金額で転送をテスト
- バウンダリテスト: ゼロと最大転送金額を処理
- プリャンクテスト: 異なる送信者アドレスをシミュレート
- イベントテスト: 正しいパラメータで発出されたTransferイベントを検証
セキュリティ監査
安全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.
リスク要因
🔑 環境変数 (1)
品質スコア
作れるもの
テストスイートをセットアップする
HardhatとFoundryパターンを使用して、Solidityコントラクトの包括的なテストスイートを作成します。
DeFi統合を検証する
Uniswapのような既存のDeFiプロトコルのメインネットフォークに対してスマートコントラクトをテストします。
コントラクトロジックをファジングする
Foundryファジングを使用して、スマートコントラクトのエッジケースと潜在的な脆弱性を発見します。
これらのプロンプトを試す
デプロイメント、トランスファ、および承認イベントをテストするERC20トークンコントラクトのHardhatユニットテストを作成してください。
Hardhatを使用して、デposit、クレーム報酬、および引き出しフローをテストするステキングコントラクトの統合テストを作成してください。
Ethereumメインネットをフォークし、DAIトークンのフォークを使用してUniswap V2スワップ機能をテストするテストを作成してください。
Hardhatガスレポーターを使用して、同じスマートコントラクト関数の2つの異なる実装間のガス比較テストを作成してください。
ベストプラクティス
- 複数のテストケースでコード重複を避けるためにフィクスチャを使用する
- 重要なコントラクト関数で少なくとも90%のテストカバレッジを目指す
- ゼロアドレス、最大値、再entrantシナリオなどのエッジケース��テストする
回避
- 単一のテスト関数で複数の関連性のないシナリオをテストすることを避ける
- すべてのテストでメインネットフォークを使用しない - 統合シナリオ用に温存する
- テストファイルで秘密鍵やシークレットをハードコードすることを避ける