-
bitcoin $87959.907984 USD
1.34% -
ethereum $2920.497338 USD
3.04% -
tether $0.999775 USD
0.00% -
xrp $2.237324 USD
8.12% -
bnb $860.243768 USD
0.90% -
solana $138.089498 USD
5.43% -
usd-coin $0.999807 USD
0.01% -
tron $0.272801 USD
-1.53% -
dogecoin $0.150904 USD
2.96% -
cardano $0.421635 USD
1.97% -
hyperliquid $32.152445 USD
2.23% -
bitcoin-cash $533.301069 USD
-1.94% -
chainlink $12.953417 USD
2.68% -
unus-sed-leo $9.535951 USD
0.73% -
zcash $521.483386 USD
-2.87%
스마트 계약을 배포하기 전에 테스트하는 방법은 무엇입니까? (하드햇&송로버섯 사용)
Set up local dev with Node.js, Hardhat/Truffle, write unit tests using Mocha/Chai or Truffle’s framework, run Slither/Solhint/MythX, fork mainnet, and never skip testing—even for ERC-20s.
2026/01/26 05:20
로컬 개발 환경 설정
1. Node.js와 npm을 설치하여 Hardhat 및 Truffle 툴체인과의 호환성을 보장합니다.
2. npm init를 사용하여 새 프로젝트를 초기화하고 npm install --save-dev hardhat을 통해 Hardhat을 설치합니다.
3. Truffle의 경우 npm install -g truffle을 실행하고 truffle init를 사용하여 상용구를 생성합니다.
4. 확인을 위해 네트워크, 계정, Solidity 컴파일러 버전 및 Etherscan API 키를 지정하도록 hardhat.config.js를 구성합니다.
5. 로컬 Ganache 또는 Hardhat Network 엔드포인트를 포함하여 일치하는 네트워크 정의로 truffle-config.js를 설정합니다.
포괄적인 단위 테스트 작성
1. Hardhat 프로젝트의 test/ 디렉터리에 있는 JavaScript 또는 TypeScript 파일을 사용하여 Mocha 및 Chai로 테스트 사례를 정의합니다.
2. 각 테스트 전에 wait ethers.getContractFactory를 사용하여 계약 아티팩트를 가져오고 배포() 를 통해 인스턴스를 배포합니다.
3. 오류 조건에 대해 Expect(...).to.equal(...) 또는 wait Expect(...).to.be.revertedWith(...)를 사용하여 예상된 동작을 확인하십시오.
4. Truffle에서 contract() 블록을 사용하여 test/*.js 에 테스트를 작성하고 OpenZeppelin 테스트 도우미에서 Assert 또는 ExpectEvent를 작성합니다.
5. 역할 및 권한을 모의하여 값이 없는 전송, 재진입 시도, 무단 액세스와 같은 극단적인 사례를 처리합니다.
정적 분석 및 보안 검사 실행
1. Python 종속 항목을 설치하고 slither를 실행하여 Slither를 CI 파이프라인에 통합합니다 . --solc-remaps '@openzeppelin=node_modules/@openzeppelin' .
2. npm install solhint --save-dev 를 사용하여 스타일 및 보안 관련 안티 패턴을 감지하고 .solhint.json 에서 규칙을 구성하는 Solhint를 추가합니다.
3. 테스트 실행 중에 온체인 취약성 스캔을 수행하려면 Hardhat 플러그인 @mythx/hardhat-mythx 를 통해 MythX를 실행하세요.
4. 메인넷 배포 전에 etherscan-verify 플러그인을 사용하여 소스 코드가 바이트코드와 일치하는지 확인하세요.
5. 사용자 지정 수정자와 상속 계층을 수동으로 감사하여 onlyOwner , whenNotPaused 또는 유사한 가드가 모든 진입점에서 일관되게 작동하는지 확인합니다.
메인넷 조건 시뮬레이션
1. 라이브 상태를 복제하기 위해 Alchemy 또는 Infura 엔드포인트를 가리키는 Hardhat의 --fork 플래그를 사용하여 Ethereum 메인넷을 포크합니다.
2. 포크된 네트워크에 계약을 배포하고 Uniswap 또는 Aave와 같은 실제 DeFi 프로토콜과 상호 작용하여 통합 논리를 검증합니다.
3. --network mainnet-fork 와 함께 Truffle의 콘솔 명령을 사용하여 임시 호출을 실행하고 스토리지 레이아웃을 검사합니다.
4. 고부하 시나리오에서 기능을 트리거하고 OOG 오류로 인해 되돌리기가 발생하지 않는지 확인하여 가스 사용량 급증을 시뮬레이션합니다.
5. evm_increaseTime 및 evm_mine RPC 호출을 사용하여 블록 타임스탬프를 향상시켜 타임스탬프 종속 논리를 확인합니다.
자주 묻는 질문
Q: Hardhat 프로젝트에서 Truffle 테스트 파일을 재사용할 수 있습니까? 예, 대부분의 Truffle 스타일 JavaScript 테스트는 약간의 조정 후에 Hardhat에서 실행될 수 있습니다. Artifacts.require를 ethers.getContractFactory 로 교체하고 Chai 기대치에 맞게 어설션 구문을 업데이트하세요.
Q: Hardhat은 실제 ETH 잔액을 사용한 테스트를 지원합니까? Hardhat Network는 계정 구성을 통해 초기 잔액 설정을 지원합니다. 외부 수도꼭지 없이 자금 지원 상호 작용을 시뮬레이션하기 위해 테스트 계정에 1000 ETH를 할당할 수 있습니다.
Q: 계약에서 발생하는 이벤트를 어떻게 테스트합니까? Hardhat에서는 Expect(tx).to.emit(contract, 'EventName').withArgs(arg1, arg2) 를 사용하세요. Truffle에서는 ExpectEvent.inTransaction(tx, Contract, 'EventName', { arg1, arg2 }) 를 사용하세요.
Q: 내 계약이 단순한 ERC-20인 경우 테스트를 건너뛰어도 안전합니까? 아니요. 표준을 준수하는 토큰이라도 전송 제한, 발행 일시 중지 가능성, 교환 또는 스테이킹 계약과의 상호 작용에 대한 검증이 필요합니다. 테스트를 생략하면 되돌릴 수 없는 잠금 또는 인플레이션 버그가 발생할 위험이 있습니다.
부인 성명:info@kdj.com
제공된 정보는 거래 조언이 아닙니다. kdj.com은 이 기사에 제공된 정보를 기반으로 이루어진 투자에 대해 어떠한 책임도 지지 않습니다. 암호화폐는 변동성이 매우 높으므로 철저한 조사 후 신중하게 투자하는 것이 좋습니다!
본 웹사이트에 사용된 내용이 귀하의 저작권을 침해한다고 판단되는 경우, 즉시 당사(info@kdj.com)로 연락주시면 즉시 삭제하도록 하겠습니다.
- Bitcoin, eCash Fork 및 Airdrop Dynamics: 암호화폐의 최신 논란에 대한 심층 분석
- 2026-05-03 12:55:01
- 2026년 마이애미 컨센서스: Web3, 블록체인, 암호화폐, NFT, 메타버스, 컨퍼런스, 5월 5일 — 월스트리트가 디지털 프론티어를 만나는 곳
- 2026-05-02 12:45:01
- 연준은 금리를 안정적으로 유지하여 지정학적 긴장 속에서 비트코인 가격 하락을 촉발했습니다
- 2026-05-01 06:45:01
- 비트코인 채굴자들이 전력망을 전기화하다: 오하이오 가스 공장 인수로 디지털 금의 새로운 시대가 열리다
- 2026-05-01 00:45:01
- MegaETH의 MEGA 토큰이 빅 애플을 강타했습니다: 실시간 블록체인을 위한 새로운 성능 벤치마크 설정
- 2026-05-01 00:55:01
- 솔라나의 미끄러운 경사: 가격 예측은 저항 손실 및 추가 하락 가능성을 지적합니다.
- 2026-05-01 06:45:01
관련 지식
펀딩 비율 플립이란 무엇입니까? 시장 심리 변화를 나타내는 경우가 많은 이유
2026-06-14 03:57:05
시장 변동성 패턴 1. Bitcoin 가격 변동은 주요 거시 경제 발표가 진행되는 동안 24시간 이내에 10%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 지수는 Merge 이벤트 동안 95 이상으로 급등했는데, 이는 레이어 1 및 레이어 2 생태계 전반에 걸친...
암호화폐 선물 시장에서 시장 조작 신호를 식별하는 방법
2026-06-12 17:26:02
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
레버리지 트래핑이란 무엇입니까? 소매업자가 종종 적발되는 이유
2026-06-12 23:53:36
시장 변동성 패턴 1. Bitcoin 가격 변동은 ETF 승인 발표 또는 주요 거래소 중단과 같은 유동성이 높은 이벤트 중에 24시간 이내에 5%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 급증은 특히 새로운 롤업이 메인넷에 출시되고 급속한 사용자 증가를 경험...
브레이크아웃 거래란 무엇입니까? 선물 거래자가 큰 가격 변동을 포착하는 방법
2026-06-13 05:19:40
암호화폐 선물의 돌파 메커니즘 이해 1. Bitcoin 또는 알트코인 가격이 지속적인 거래량 급증으로 확고한 저항 수준을 결정적으로 위반할 때 브레이크아웃이 발생하며, 종종 레버리지 매수 포지션에 걸쳐 계단식 청산이 촉발됩니다. 2. 무기한 선물 시장에서 돌파는 자금 ...
레버리지가 높은 선물 포지션을 위한 최고의 손절매 전략은 무엇입니까?
2026-06-14 14:19:32
고레버리지 선물 거래의 손절매 메커니즘 1. 손절매 배치는 임의의 백분율 임계값이 아닌 가격 확산의 통계적 특성에 맞춰 조정되어야 합니다. 에너지 선물 스프레드와 같은 평균 회귀 시장에서 최적의 손절매 수준은 Ornstein-Uhlenbeck 역학에 따른 최초 종료 시...
주요 경제 발표 중 암호화폐 선물을 거래하는 방법
2026-06-12 22:50:44
시장 변동성 패턴 1. Bitcoin 가격 변동은 반감기 발표 또는 주요 거래소 상장과 같은 유동성이 높은 이벤트 중에 단일 24시간 창 내에 5%를 초과하는 경우가 많습니다. 2. BTC와의 알트코인 상관관계는 지난 36개월 동안 평균 0.78 이상으로, Bitcoi...
펀딩 비율 플립이란 무엇입니까? 시장 심리 변화를 나타내는 경우가 많은 이유
2026-06-14 03:57:05
시장 변동성 패턴 1. Bitcoin 가격 변동은 주요 거시 경제 발표가 진행되는 동안 24시간 이내에 10%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 지수는 Merge 이벤트 동안 95 이상으로 급등했는데, 이는 레이어 1 및 레이어 2 생태계 전반에 걸친...
암호화폐 선물 시장에서 시장 조작 신호를 식별하는 방법
2026-06-12 17:26:02
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
레버리지 트래핑이란 무엇입니까? 소매업자가 종종 적발되는 이유
2026-06-12 23:53:36
시장 변동성 패턴 1. Bitcoin 가격 변동은 ETF 승인 발표 또는 주요 거래소 중단과 같은 유동성이 높은 이벤트 중에 24시간 이내에 5%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 급증은 특히 새로운 롤업이 메인넷에 출시되고 급속한 사용자 증가를 경험...
브레이크아웃 거래란 무엇입니까? 선물 거래자가 큰 가격 변동을 포착하는 방법
2026-06-13 05:19:40
암호화폐 선물의 돌파 메커니즘 이해 1. Bitcoin 또는 알트코인 가격이 지속적인 거래량 급증으로 확고한 저항 수준을 결정적으로 위반할 때 브레이크아웃이 발생하며, 종종 레버리지 매수 포지션에 걸쳐 계단식 청산이 촉발됩니다. 2. 무기한 선물 시장에서 돌파는 자금 ...
레버리지가 높은 선물 포지션을 위한 최고의 손절매 전략은 무엇입니까?
2026-06-14 14:19:32
고레버리지 선물 거래의 손절매 메커니즘 1. 손절매 배치는 임의의 백분율 임계값이 아닌 가격 확산의 통계적 특성에 맞춰 조정되어야 합니다. 에너지 선물 스프레드와 같은 평균 회귀 시장에서 최적의 손절매 수준은 Ornstein-Uhlenbeck 역학에 따른 최초 종료 시...
주요 경제 발표 중 암호화폐 선물을 거래하는 방법
2026-06-12 22:50:44
시장 변동성 패턴 1. Bitcoin 가격 변동은 반감기 발표 또는 주요 거래소 상장과 같은 유동성이 높은 이벤트 중에 단일 24시간 창 내에 5%를 초과하는 경우가 많습니다. 2. BTC와의 알트코인 상관관계는 지난 36개월 동안 평균 0.78 이상으로, Bitcoi...
모든 기사 보기














