בדיקת חוזים חכמים מקיפה ב-Sepolia, Arbitrum ועוד
תארו לעצמכם: פרסתם מאגר נזילות AMM ב-Sepolia, בדקתם את כל הפונקציות מקומית—המרות, הוספת נזילות—והכל עובר. ברשת המרכזית, משתמשים מתלוננים שעסקאות נתקעות עם שילובי מטבעות מסוימים. מסתבר שהאורקל של Chainlink ברשת הבדיקות החזיר מחיר עם 6 ספרות עשרוניות, אבל ברשת המרכזית עם 8. ההבדל בעדיפות מחיר הגז הוביל להערכת חסר של גז. באג כזה היה נתפס ברשת הבדיקות תוך שעה אם הייתם בודקים עם כתובות אורקל אמיתיות.
בדיקות ברשת בדיקות תופסות באגים בפי 4 ביעילות רבה יותר מאשר בדיקות מקומיות בלבד. בדיקות מקומיות על Foundry anvil או Hardhat node עוברות—והצוות מחשיב את החוזה כמוכן לרשת המרכזית. אבל רשת הבדיקות חושפת באופן קבוע מה שסביבות מקומיות מפספסות: תקינות ABI בעת אינטראקציה דרך ארנק אמיתי, התנהגות של אורקלים ופרוטוקולים של צד שלישי, עיכובים בעסקאות, מקרי קצה עם הערכת גז. למדנו מניסיון: ללא מחזור בדיקות מלא ברשת בדיקות, באגים ברשת המרכזית עולים לפחות $5,000–$10,000 בעבודה חוזרת (15-30% מהתקציב).
"בדיקות מקומיות מפספסות עיכובי רשת אמיתיים, התנהגות אורקלים ואינטראקציות ארנק." — ראש הצוות שלנו
אילו רשתות בדיקות רלוונטיות?
עבור רשתות תואמות Ethereum, רשתות הבדיקות העיקריות כיום הן:
| רשת בדיקות | שרשרת | מאפיינים |
|---|---|---|
| Sepolia | Ethereum L1 | רשת הבדיקות הראשית של ETH, קונצנזוס PoS |
| Holesky | Ethereum L1 | קבוצת מאמתים גדולה יותר, מתאים יותר לסטייקינג |
| Amoy | Polygon | החליף את Mumbai |
| Arbitrum Sepolia | Arbitrum L2 | ArbOS, העברת הודעות L1→L2 |
| Optimism Sepolia | Optimism L2 | OP Stack, הוכחות תקלות |
| Base Sepolia | Base L2 | OP Stack, Coinbase |
| BSC Testnet | BNB Chain | מקביל לרשת המרכזית |
Goerli הוצא משימוש—אל תפרסו שם שום דבר חדש.
מה אנו בודקים ברשת הבדיקות?
-
אימות דרך Etherscan. פריסה ללא אימות היא דגל אדום עבור משתמשים ומבקרים. אנו משתמשים ב-
forge verify-contractאוhardhat verify. חשוב: גרסת המהדר והגדרות האופטימיזציה בקובץ התצורה חייבות להתאים בדיוק לאלה ששימשו במהלך הפריסה. אי-התאמה אחת בהגדרות מובילה לכשל באימות. - אינטראקציה דרך Metamask/Safe. חתימות פונקציות, שמות פרמטרים קריאים בממשק Etherscan, אירועים נכונים ביומני העסקאות. אנו מוודאים שה-ABI פורסם והפרונטאנד מפענח תשובות כראוי.
- הערכת גז. גז אמיתי ברשת הבדיקות לעומת מקומי.
gas_priceשל Foundry ב-anvil ברירת המחדל היא 1 wei—ברשת הבדיקות עמלת הבסיס צפה. בדיקה עםvm.txGasPrice()לא תמיד משקפת את המציאות. לדוגמה, ב-Sepolia העברת ERC-20 סטנדרטית עולה ~50,000 גז, בעוד שב-anvil מקומי זה ~45,000. הבדל של 10% יכול להיות קריטי למסחר בתדירות גבוהה. - אינטגרציה עם פרוטוקולים. אם החוזה משתמש ב-Chainlink Price Feeds, Uniswap, Aave—אנו פורסים את כתובות רשת הבדיקות שלהם או משתמשים בפריסות רשמיות של רשת הבדיקות. Chainlink מספק Price Feeds ב-Sepolia (תיעוד רשמי). Uniswap V3 פרוס ב-Sepolia. Aave V3 ב-Sepolia.
- שילוב ביקורת אבטחה – אנו משלבים ממצאים מביקורות חיצוניות בערכת הבדיקות שלנו כדי להבטיח שכל הבעיות נפתרות לפני הרשת המרכזית.
מלכודות נפוצות בבדיקות ברשת בדיקות
- שכחת להתחזות לחשבון הנכון בעת שימוש ב-`vm.prank`. - הסתמכות על צומת רשת בדיקות יחיד עם תגובות RPC לא עקביות. - אי איפוס מצב רשת הבדיקות בין ריצות בדיקה.כיצד אנו מבצעים בדיקות ברשת בדיקות?
אנו מיישמים מתודולוגיה שפותחה על 30+ פרויקטים עם 5+ שנות ניסיון ב-Solidity ומדיניות החזר כספי מובטחת על תיקוני באגים. התהליך כולל:
- ניתוח תלויות—זיהוי כל הפרוטוקולים החיצוניים, האורקלים, הגשרים.
- סקריפט פריסה—כתיבת Foundry Script עם
vm.broadcast()לפריסה ניתנת לשחזור. - אימות—אימות אוטומטי של כל החוזים ב-Etherscan.
- בדיקות פונקציונליות—בדיקת כל התרחישים המרכזיים והקצה (50+ בדיקות לכל חוזה).
- בדיקת שדרוג—אם החוזה ניתן לשדרוג, בדיקת מחזור ה-proxy-implementation המלא.
- רגרסיה—לאחר תיקון באגים, חזרה על כל השלבים.
מה כלול בעבודה שלנו?
- פריסה ואימות ברשת בדיקות (Sepolia/Goerli/Holesky ואחרות לפי בקשה)
- בדיקות ידניות של כל הפונקציות הציבוריות באמצעות cast ו-Metamask
- אוטומציה של תרחישים עם Foundry Script—עד 50+ בדיקות לכל חוזה
- בדיקות אינטגרציה עם פרוטוקולים אמיתיים (Chainlink, Uniswap, Aave)
- תוצרים: תיעוד PDF של תוצאות הבדיקות, נקודות קצה RPC וכתובות חוזים שפורסו, מפגש הדרכה של שעה לצוות שלכם, ותמיכה של 30 יום לאחר הפריסה.
- תמיכה בתיקונים ובדיקות חוזרות—לאחר תיקוני חוזה, אנו בודקים שוב ומאשרים.
כיצד לאוטומט בדיקות ברשת בדיקות?
אנו משתמשים ב-Foundry Script עם פרמטרים --broadcast ו---verify. לדוגמה:
forge script script/DeployMyContract.s.sol:Deploy \ --rpc-url sepolia --broadcast --verify -vvvv לאחר הפריסה, הסקריפט יכול לקרוא לפונקציות חוזה באמצעות forge script script/DeployMyContract.s.sol:Deploy \ --rpc-url sepolia --broadcast --verify -vvvv ו-vm.prank לבדיקות בקרת גישה.
פקודות Foundry עיקריות
| פקודה | מטרה |
|---|---|
vm.expectRevert |
פריסה ואימות |
forge script --rpc-url --broadcast --verify |
קריאת נתונים |
cast call <contract> <function> |
שליחת עסקה |
cast send <contract> <function> |
פענוח calldata |
לוחות זמנים ועלות
בדיקות טיפוסיות ברשת בדיקות לחוזה חדש בגודל בינוני: 1-3 ימים. עבור חוזים עם אינטגרציות רבות, עד שבוע. התמחור מתחיל ב-$500 לחוזים פשוטים; עלות פרויקט ממוצעת היא $1,500–$3,000. צרו קשר להערכת פרויקט שלכם.
קבלו ייעוץ על אסטרטגיית רשת בדיקות והבטיחו שהחוזה שלכם לא יצטרף לרשימת הבאגים היקרים. צרו קשר כדי לדון בפרויקט שלכם.







