ایران اکسچنج

تست نت (Testnet) چیست؟ تفاوت با مین‌نت و کاربرد در بلاکچین

تست نت (Testnet) چیست؟ تفاوت با مین‌نت و کاربرد در بلاکچین

انیس مسکینی
زمان تقریبی مطالعه: 5 دقیقه
فهرست عناوین

تست‌ نت (Testnet) یک شبکه آزمایشی مستقل از مین‌نت است که به توسعه‌دهندگان، اپراتورهای نود و تیم‌های زیرساخت اجازه می‌دهد تراکنش، قرارداد هوشمند، کیف پول یا تغییرات پروتکلی را بدون درگیرکردن دارایی‌های واقعی و وضعیت اصلی شبکه آزمایش کنند. تست‌نت از نظر منطق فنی می‌تواند شباهت زیادی به شبکه اصلی داشته باشد، اما دارایی‌ها، تاریخچه، نودها و وضعیت آن از Mainnet جدا هستند.

نکته مهم این است که تست‌نت را نباید «نسخه رایگان مین‌نت» یا «شبکه‌ای کاملاً مشابه مین‌نت» دانست. شرایط اقتصادی، میزان مشارکت نودها، نقدشوندگی، امنیت عملیاتی و حتی قواعد بعضی تست‌نت‌ها می‌تواند با شبکه اصلی متفاوت باشد. به همین دلیل نتیجه موفق در تست‌نت یک مرحله مهم از فرایند توسعه است، اما تضمین نمی‌کند همان رفتار بدون مشکل در مین‌نت تکرار شود.

تست نت چیست؟

Testnet شبکه‌ای برای آزمایش است که معمولاً نسخه‌ای جداگانه از یک پروتکل بلاکچینی یا محیطی نزدیک به آن را اجرا می‌کند. توسعه‌دهنده می‌تواند در این محیط تراکنش بفرستد، قرارداد هوشمند Deploy کند، رفتار کیف پول را بررسی کند، اتصال RPC و نود را تست کند یا قبل از انتشار عمومی یک تغییر، خطاهای احتمالی را پیدا کند.

اگر بخواهیم ساده بگوییم، مین‌نت جایی است که دارایی و فعالیت اقتصادی واقعی رخ می‌دهد؛ تست‌نت جایی است که قبل از ورود به آن محیط، رفتار سیستم آزمایش می‌شود. برای درک بهتر ساختار شبکه و نقش نودها، مطالعه مقاله نود در بلاکچین چیست؟ نیز مفید است.

تست نت چیست

تفاوت Testnet و Mainnet چیست؟

موضوعTestnetMainnet
هدف اصلیآزمایش، توسعه، آموزش و بررسی تغییراتفعالیت واقعی شبکه و ثبت تراکنش‌های اصلی
دارایی شبکهتوکن آزمایشی که برای استفاده تستی طراحی شده استدارایی اصلی شبکه با کاربرد و ارزش اقتصادی واقعی
ریسک مالیمعمولاً دارایی واقعی درگیر نمی‌شود، اما خطاهای امنیتی و عملیاتی همچنان ممکن‌انداشتباه می‌تواند به از دست رفتن دارایی واقعی منجر شود
ثبات شبکهممکن است ریست، منسوخ یا جایگزین شودبرای پایداری و استمرار بلندمدت طراحی می‌شود
اقتصاد شبکهشرایط اقتصادی واقعی را الزاماً بازتاب نمی‌دهدکارمزد، نقدینگی، عرضه و تقاضای واقعی دارد
کاربردتوسعه نرم‌افزار، تست پروتکل، آموزش، QA و یکپارچه‌سازیانتقال دارایی، اجرای قرارداد و استفاده واقعی کاربران

چرا به تست نت نیاز داریم؟

اجرای مستقیم کد آزمایش‌نشده روی مین‌نت می‌تواند هزینه‌بر و خطرناک باشد. تست‌نت محیطی فراهم می‌کند که بسیاری از سناریوها پیش از انتشار واقعی بررسی شوند.

  • آزمایش قرارداد هوشمند: توسعه‌دهنده می‌تواند منطق قرارداد، سطح دسترسی، Eventها و تعامل با دیگر قراردادها را قبل از Mainnet بررسی کند.
  • تست کیف پول و تراکنش: ساخت تراکنش، امضا، تخمین کارمزد، مدیریت خطا و نمایش وضعیت تأییدها قابل بررسی است.
  • آزمایش زیرساخت: RPC، Indexer، Explorer، نود، API و سامانه‌های مانیتورینگ می‌توانند در محیطی کم‌ریسک‌تر تست شوند.
  • آموزش: کاربران و توسعه‌دهندگان می‌توانند بدون نیاز به دارایی واقعی با فرایند انتقال و تعامل با شبکه آشنا شوند.
  • آزمایش ارتقاهای پروتکل: بعضی شبکه‌ها از تست‌نت برای بررسی Forkها و تغییرات اجماع قبل از استقرار روی Mainnet استفاده می‌کنند.

برای قراردادهای هوشمند، تست‌نت تنها یکی از لایه‌های کنترل کیفیت است و جای Audit امنیتی، تست واحد، تست Integration و بررسی منطق اقتصادی را نمی‌گیرد. اگر قصد دارید مفهوم قرارداد را جداگانه بررسی کنید، مقاله قرارداد هوشمند چیست؟ موضوع را به‌صورت تخصصی‌تر پوشش می‌دهد.

تست نت بیت کوین در سال ۲۰۲۶

یکی از بخش‌های قدیمی بسیاری از مطالب آموزشی، معرفی Testnet3 به‌عنوان تست‌نت فعال اصلی بیت‌کوین است. این تصویر دیگر کامل نیست. Bitcoin Core از نسخه 28.0 پشتیبانی از Testnet4 را مطابق BIP94 اضافه کرد. هدف Testnet4 جایگزینی Testnet3 و رفع برخی مشکلات عملی آن، از جمله رفتار نامناسب سختی و «block storm»ها، است.

Testnet4 مانند Mainnet بیت‌کوین شبکه مستقلی با تاریخچه و کوین‌های مخصوص خود دارد. این کوین‌ها برای آزمایش طراحی شده‌اند و نباید به‌عنوان بیت‌کوین واقعی یا دارایی سرمایه‌گذاری در نظر گرفته شوند. BIP94 حتی یکی از انگیزه‌های ایجاد Testnet4 را این می‌داند که در Testnet3، معامله‌کردن کوین‌های آزمایشی با پول واقعی، اصل «بی‌ارزش‌بودن اقتصادی کوین تست» را مخدوش کرده بود.

در کنار Testnet، بیت‌کوین محیط دیگری به نام Signet نیز دارد. طبق BIP325، Signet برای سناریوهای آزمایشی پایدارتر و قابل‌کنترل‌تر طراحی شده است. در Signet علاوه بر Proof of Work، امضای مشخصی برای معتبرشدن بلاک‌ها لازم است؛ در نتیجه می‌توان شرایط آزمایش را بهتر هماهنگ کرد. Signet برای بعضی تست‌های Integration و سناریوهای چندسازمانی مناسب‌تر از یک تست‌نت عمومی کاملاً باز است.

بنابراین «تست نت بیت کوین» یک مفهوم واحد و ثابت نیست. بسته به هدف، ممکن است Testnet4، Signet یا حتی محیط Regtest محلی انتخاب مناسب‌تری باشد.

تست نت اتریوم در سال ۲۰۲۶

در نسخه قدیمی این محتوا، Geth به‌عنوان یک تست‌نت اتریوم معرفی شده بود؛ در حالی‌که Geth یک کلاینت Execution اتریوم است، نه نام یک تست‌نت عمومی. در اکوسیستم فعلی اتریوم، انتخاب شبکه آزمایشی به نوع تست بستگی دارد.

طبق مستندات رسمی Ethereum.org درباره شبکه‌ها، در سال ۲۰۲۶ دو تست‌نت عمومی اصلی که توسط تیم‌های کلاینت نگهداری می‌شوند Sepolia و Hoodi هستند:

  • Sepolia: گزینه پیش‌فرض توصیه‌شده برای توسعه قرارداد هوشمند و اپلیکیشن است. این شبکه مجموعه Validator مجوزدار دارد و محیط نسبتاً باثباتی برای توسعه اپلیکیشن فراهم می‌کند.
  • Hoodi: برای تست Validator، Staking، زیرساخت و ارتقاهای پروتکل مناسب است و مجموعه Validator آن بازتر است.

Holesky که در منابع قدیمی زیاد دیده می‌شود، از سپتامبر ۲۰۲۵ منسوخ شده و برای تست Validator باید از Hoodi استفاده شود. همچنین تست‌نت‌هایی مانند Ropsten، Rinkeby و Goerli در دوره‌های قبل بازنشسته شده‌اند. این موضوع نشان می‌دهد نام تست‌نت‌ها تاریخ‌مصرف دارد و هنگام توسعه باید مستندات رسمی همان شبکه بررسی شود.

تست نت چیست

توکن تست نت چیست و Faucet چه کاری انجام می‌دهد؟

بسیاری از تست نت‌ها برای پرداخت کارمزد آزمایشی یا اجرای تراکنش به توکن مخصوص همان شبکه نیاز دارند. این توکن‌ها برای استفاده در محیط تست طراحی شده‌اند و نباید با دارایی Mainnet اشتباه گرفته شوند.

معمولاً توکن تست از طریق Faucet دریافت می‌شود؛ Faucet سرویسی است که مقدار محدودی توکن آزمایشی در اختیار توسعه‌دهنده قرار می‌دهد. دریافت توکن از Faucet به این معنی نیست که آن توکن دارایی سرمایه‌گذاری است. حتی اگر در بازارهای غیررسمی برای بعضی Testnet Coinها قیمت‌گذاری دیده شود، این رفتار با هدف اصلی شبکه آزمایشی متفاوت است و نباید مبنای ارزش‌گذاری دارایی واقعی قرار گیرد.

توکن تست نت را نمیتوان با یک تراکنش معمولی به «نسخه Mainnet» تبدیل کرد. Testnet و Mainnet دفترکل و وضعیت مستقل دارند. اگر پروژه‌ای از مرحله تست به تولید منتقل شود، قرارداد یا سرویس باید روی Mainnet جداگانه استقرار یابد و دارایی‌های واقعی نیز طبق منطق همان شبکه اصلی ایجاد یا منتقل شوند.

مسیر منطقی توسعه از محیط محلی تا Mainnet

برای پروژه‌های بلاکچینی، یک مسیر کم‌ریسک معمولاً از چند محیط تشکیل می‌شود:

  1. تست محلی: کد ابتدا روی محیط Local یا شبیه‌ساز اجرا می‌شود تا خطاهای سریع و تکرارشونده بررسی شوند.
  2. تست خودکار: Unit Test، Integration Test و سناریوهای خطا اجرا می‌شوند.
  3. استقرار روی Testnet: قرارداد یا اپلیکیشن در یک شبکه عمومی آزمایشی و در کنار سرویس‌های واقعی‌تر تست می‌شود.
  4. بررسی امنیت: سطح دسترسی، خطاهای قرارداد، Upgradeability، Oracleها و مسیرهای انتقال دارایی بررسی می‌شوند.
  5. استقرار Mainnet: پس از کنترل نهایی، نسخه تولیدی با تنظیمات مخصوص Mainnet منتشر می‌شود.
  6. مانیتورینگ پس از انتشار: انتشار روی Mainnet پایان کار نیست؛ لاگ‌ها، رویدادها و رفتار قرارداد باید پایش شوند.

برای اپلیکیشن‌های غیرمتمرکز، تست رابط کاربری و قرارداد باید هم‌زمان انجام شود. مقاله DApp چیست؟ درباره معماری برنامه‌های غیرمتمرکز توضیح بیشتری ارائه می‌کند.

تفاوت Testnet، Signet، Devnet و Localnet چیست؟

محیطویژگی اصلیمناسب برای
Testnetشبکه آزمایشی عمومی یا مشترک با تاریخچه مستقلتست اپلیکیشن، کیف پول و Integration
Signetشبکه آزمایشی بیت‌کوین با کنترل بیشتر بر تولید بلاکIntegration پایدارتر و تست هماهنگ چندطرفه
Devnetشبکه توسعه موقت برای بررسی قابلیت یا Upgrade خاصتوسعه پروتکل و آزمایش قابلیت‌های جدید
Localnet / Regtestمحیط محلی تحت کنترل توسعه‌دهندهتست سریع، خودکار و تکرارشونده

تست محلی سریع‌تر و قابل‌کنترل‌تر است، اما ارتباط واقعی با نودهای بیرونی، Faucet، Explorer یا زیرساخت عمومی را نشان نمی‌دهد. Testnet این شکاف را تا حدی پر می‌کند، ولی همچنان جای Mainnet را نمی‌گیرد.

آیا موفقیت در Testnet تضمین میکند پروژه در Mainnet بدون مشکل باشد؟

خیر. تست‌نت ابزار مهمی برای کاهش ریسک است، اما محیط تولید شرایط متفاوتی دارد. تفاوت در حجم تراکنش، نقدینگی، رفتار کاربران، MEV، هزینه Gas، کیفیت زیرساخت و ارزش واقعی دارایی‌ها می‌تواند مشکلاتی ایجاد کند که در تست‌نت دیده نشده‌اند.

  • کارمزد واقعی Mainnet ممکن است بسیار متفاوت باشد.
  • فشار ترافیک و رقابت برای فضای بلاک در تست‌نت مشابه Mainnet نیست.
  • اوراکل‌ها، Bridgeها یا سرویس‌های ثالث ممکن است روی شبکه آزمایشی داده و نقدینگی متفاوت داشته باشند.
  • تست‌نت ممکن است ریست یا منسوخ شود.
  • تعداد Validatorها یا قدرت هش و مدل مشارکت می‌تواند با Mainnet فاصله زیادی داشته باشد.
  • توکن تست ارزش اقتصادی هدف‌گذاری‌شده ندارد، بنابراین رفتار کاربران مشابه محیط واقعی نیست.

به همین دلیل تست‌نت را باید بخشی از فرایند مهندسی دانست، نه مدرک قطعی امنیت یا آمادگی برای تولید.

نکات امنیتی هنگام استفاده از Testnet

آزمایشی‌بودن شبکه به معنی بی‌نیازی از اصول امنیتی نیست. Testnet می‌تواند به سرویس‌های واقعی مانند کیف پول، افزونه مرورگر، RPC عمومی یا رابط یک DApp متصل شود و اشتباه در تشخیص شبکه ممکن است کاربر را به اقدام ناخواسته روی Mainnet سوق دهد.

  • نام شبکه را قبل از امضا بررسی کنید: در کیف پول مطمئن شوید شبکه انتخاب‌شده همان Testnet مورد نظر است و تراکنش روی Mainnet ساخته نشده است.
  • کلیدهای محیط تولید را وارد ابزار ناشناس نکنید: برای تست‌های توسعه‌ای بهتر است حساب‌ها و کلیدهای مجزای آزمایشی در نظر گرفته شوند تا محیط تست از عملیات واقعی جدا بماند.
  • Faucet را با Airdrop سرمایه‌گذاری اشتباه نگیرید: Faucet برای توزیع توکن آزمایشی است. درخواست پرداخت پول یا ارسال دارایی واقعی در ازای Test Token باید با احتیاط جدی بررسی شود.
  • RPC و Explorer درست را کنترل کنید: شباهت نام شبکه‌ها ممکن است باعث شود وضعیت تراکنش را در Explorer اشتباه بررسی کنید یا به Endpoint نامناسب متصل شوید.
  • به پایداری دائمی Testnet متکی نباشید: داده‌ها و قراردادهای آزمایشی ممکن است با بازنشستگی یا تغییر شبکه دیگر در دسترس نباشند؛ داده مهم پروژه باید خارج از Testnet نیز نگهداری شود.
  • رفتار اقتصادی را جداگانه آزمایش کنید: نبود ارزش واقعی برای توکن تست باعث می‌شود رفتار کاربران، حملات اقتصادی و شرایط نقدینگی لزوماً مشابه Mainnet نباشد.

آیا کاربران عادی هم به Testnet نیاز دارند؟

برای کاربر عادی که فقط از شبکه اصلی استفاده می‌کند، معمولاً نیازی به تعامل روزمره با Testnet نیست. اما تست‌نت می‌تواند برای یادگیری نحوه ارسال تراکنش، آزمایش یک کیف پول جدید، شرکت در تست یک اپلیکیشن یا آموزش فنی مفید باشد.

در زمان استفاده باید نام شبکه، آدرس RPC، Explorer و نوع توکن را بررسی کنید تا دارایی آزمایشی با دارایی واقعی اشتباه نشود. همچنین نباید به درخواست‌هایی که برای «خرید توکن تست‌نت» یا انتقال دارایی واقعی در ازای Test Token ارائه می‌شوند اعتماد کرد.

تست‌نت چه ارتباطی با خرید و قیمت ارز دیجیتال دارد؟

دارایی‌های Testnet برای آزمایش ساخته شده‌اند و قیمت بازار Mainnet را نمایندگی نمی‌کنند. اگر هدف کاربر مشاهده نرخ دارایی‌های واقعی باشد، باید از صفحه قیمت ارز دیجیتال استفاده کند و برای آشنایی با فرایند معامله واقعی، راهنمای خرید ارز دیجیتال را ببیند. استفاده از یک صرافی ارز دیجیتال نیز مربوط به دارایی‌های شبکه اصلی است، نه توکن‌های Faucet و Testnet.

جمع‌ بندی

Testnet یک محیط آزمایشی مستقل از Mainnet است که امکان بررسی تراکنش، قرارداد هوشمند، نود و زیرساخت را بدون استفاده مستقیم از دارایی واقعی فراهم می‌کند. با این حال تست‌نت نسخه کاملاً مشابه Mainnet نیست و تفاوت در اقتصاد، امنیت، مشارکت شبکه و رفتار کاربران می‌تواند نتیجه آزمایش را تغییر دهد.

در سال ۲۰۲۶ نیز باید به تاریخ مستندات توجه کرد: در بیت‌کوین Testnet4 و Signet نقش مهمی در تست دارند و در اتریوم Sepolia و Hoodi از شبکه‌های عمومی اصلی هستند. بنابراین هنگام انتخاب محیط آزمایش، نام «Testnet» به‌تنهایی کافی نیست؛ باید مشخص شود چه چیزی، برای چه شبکه‌ای و در چه سطحی قرار است آزمایش شود.

مقالات مرتبط

سوالات متداول

آیا توکن تست‌نت ارزش مالی دارد؟

توکن تست نت برای آزمایش طراحی شده و نباید دارایی سرمایه‌گذاری تلقی شود. هدف معمول آن پرداخت کارمزد آزمایشی و اجرای سناریوهای توسعه است.

آیا Testnet و Mainnet آدرس‌های یکسان دارند؟

بسته به شبکه ممکن است قالب آدرس مشابه یا متفاوت باشد، اما دفترکل، Chain State و دارایی‌های دو شبکه مستقل‌اند. مشابه‌بودن ظاهر یک آدرس به معنی مشترک‌بودن موجودی نیست.

آیا Testnet3 هنوز تست نت اصلی بیت کوین است؟

خیر؛ این توضیح دیگر به‌روز نیست. Bitcoin Core از نسخه 28.0 پشتیبانی از Testnet4 را اضافه کرده و هدف BIP94 جایگزینی Testnet3 است. Signet نیز برای دسته‌ای از تست‌های پایدارتر در دسترس است.

برای توسعه قرارداد اتریوم از کدام Testnet استفاده شود؟

طبق مستندات فعلی اتریوم، Sepolia گزینه پیش‌فرض برای توسعه اپلیکیشن و قرارداد است و Hoodi بیشتر برای Validator، Staking و تست زیرساخت پروتکل استفاده می‌شود.

آیا Geth یک Testnet اتریوم است؟

خیر. Geth یک کلاینت Execution اتریوم است. کلاینت می‌تواند به شبکه‌های مختلف متصل شود، اما نام خود آن معادل یک تست‌نت عمومی نیست.

آیا پروژه بعد از موفقیت در Testnet حتماً آماده Mainnet است؟

خیر. موفقیت در Testnet فقط بخشی از ارزیابی است. تست امنیت، بررسی قرارداد، مدیریت کلیدها، رفتار اقتصادی، مانیتورینگ و سناریوهای شرایط واقعی نیز باید ارزیابی شوند.

نظرسنجی