스킬 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 테스트 생성

예상 결과:

  • 퍼징 테스트: 유효 범위 내에서 무작위 금액으로 전송 테스트
  • 경계 테스트: 0 및 최대 전송 금액 처리
  • 프랭크 테스트: 다른 발신자 주소 시뮬레이션
  • 이벤트 테스트: 올바른 매개변���로 발생한 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 프로토콜의 메인넷 포크로 스마트 컨트랙트 테스트

컨트랙트 로직 퍼징

Edge case와 잠재적 취약점을 발견하기 위해 Foundry 퍼징 사용

이 프롬프트를 사용해 보세요

기본 단위 테스트
배포, 전송, 승인 이벤트를 테스트하는 ERC20 토큰 컨트랙트에 대한 Hardhat 단위 테스트 작성
통합 테스트
Hardhat을 사용하여 예금, 보상 청구, 출금 흐름을 테스트하는 스테이킹 컨트랙트에 대한 통합 테스트 생성
메인넷 포크
이thereum 메인넷을 포크하고 DAI 토큰 포크를 사용하여 Uniswap V2 스왑 기능 테스트
가스 최적화
Hardhat 가스 리포터를 사용하여 동일한 스마트 컨트랙트 함수의 두 가지 다른 구현 간의 가스 비교 테스트 생성

모범 사례

  • 테스트 중복 코드를 피하기 위해 픽스처 사용
  • 중요한 컨트랙트 함수에서 최소 90% 테스트 커버리지 목표로 설정
  • 0 주소, 최대값, 재진입 시나리오와 같은 엣지 케이스 테스트

피하기

  • 단일 테스트 함수에서 관련 없는 여러 시나리오 테스트하지 않기
  • 모든 테스트에서 메인넷 포킹 사용하지 않기 - 통합 시나리오에만 사용
  • 테스트 파일에 개인 키 또는 시크릿 하드코딩하지 않기

자주 묻는 질문

어떤 테스트 프레임워크가 지원되나요?
Hardhat과 Chai/Ethers.js 및 Foundry와 Forge가 모두 완전한 예제와 함께 지원됩니다.
최대 테스트 커버리지는 얼마나 권장되나요?
중요한 컨트랙트에서 90% 이상의 커버리지를 목표로 하세요. npx hardhat coverage로 보고서를 생성하세요.
이 스킬이 메인넷과 직접 상호작용할 수 있나요?
아니요. 이 스킬은 메인넷 포킹 패턴을 제공하지만 사용자가 직접 RPC 엔드포인트와 키를 구성합니다.
내 개인 키 데이터가 안전한가요?
네. 이 스킬은 예제 패턴만 제공합니다. 사용자가 프로젝트의 환경 변수에 직접 키를 추가합니다.
내 테스트가 타임아웃 오류로 실패하는 이유는?
hardhat.config.js에서 Hardhat 타임아웃을 늘리거나 큰 테스트를 더 작은 함수로 분리하여 어설션 수를 줄이세요.
Hardhat과 Foundry의 차이점은?
Foundry는 테스트에 Solidity를 사용하며 기본 제공되는 퍼징으로 더 빠르게 실행됩니다. Hardhat은 JavaScript를 사용하며 더 복잡한 통합에 유연성을 제공합니다.

개발자 세부 정보

파일 구조

📄 SKILL.md