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

یک ادعای قابل مشاهده انتخاب کنید

ادعا را پیش از باز کردن هر ابزاری به شکل یک جملهٔ قابل آزمون بنویسید: برای این نمایه، در این شبکه، درخواست‌های به سمت بازتاب نشانی عمومی از خروجی اعلام‌شدهٔ ارائه‌دهنده بیرون می‌روند. آن جمله یک موضوع، یک شرط و یک مشاهده را نام می‌برد و همین آن را ابطال‌پذیر می‌کند. ادعایی مانند اینکه VPN از حریم خصوصی محافظت می‌کند شکل قابل مشاهده‌ای ندارد، پس هیچ اندازه‌گیری نمی‌تواند آن را حل کند. جملهٔ دومی را برای آنچه آزمون پوشش نمی‌دهد نگه دارید، زیرا نگه‌داری داده، دسترسی اشخاص ثالث و همبستگی ترافیک همه بیرون از آزمون مرورگر قرار دارند.

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

واقعیت‌های راه‌اندازی که خواننده برای تکرار اندازه‌گیری لازم دارد

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

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

بگویید چه چیزی اندازه‌گیری شد و چه معنایی دارد

ثبت کنید ابزار چه چیزی چاپ کرد و ابزار چه چیزی می‌توانست ببیند. پاسخ resolver، نتیجهٔ بازتاب نشانی و جست‌وجوی مسیر به پرسش‌های متفاوتی پاسخ می‌دهند، و برچسب مکان درون یک صفحهٔ وب استنتاجی دربارهٔ یک پایگاه داده است، نه واقعیتی دربارهٔ خروجی. فرمانی را که هر خط را تولید کرد کنار آن بنویسید، زیرا ارزشی بدون فرمانش بازتولیدپذیر نیست. مُهر زمان را در همان منطقهٔ زمانی تیکت تغییر نگه دارید، وگرنه توالی یک هفته بعد ناخوانا می‌شود.

curl -s https://icanhazip.com
curl -s https://ipinfo.io/ip; echo
resolvectl status --no-pager | head -15

دو سرویس بازتاب مستقل که با هم توافق دارند از یکی قوی‌ترند، و اختلاف خودش یافته‌ای است که ارزش نوشتن دارد. خروجی resolver نشان می‌دهد آیا DNS تونل را دنبال کرد یا همچنان از شبکهٔ محلی استفاده کرد، که ادعایی جدا از نشانی خروجی است. خروجی خام را با مُهر زمان ذخیره کنید و نتایج مخالف را نگه دارید نه اطمینان‌بخش‌ترین تصویر را. وقتی تغییری نتیجه را جابه‌جا می‌کند، هر بار یک متغیر را اعمال کنید، زیرا عوض کردن هم‌زمان کارساز و کارخواه شما را ناتوان می‌کند از گفتن اینکه کدام یک مهم بود.

چه چیزی به رکورد تعلق دارد و چه چیزی باید حذف شود

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

FieldWhat to write
ClaimOne testable sentence naming the profile, the network and the observation
Observer and scopeWho could see the traffic or the record, and under which conditions
SetupClient and server versions, profile name, access network, address families, split-tunnel rules, event under test
Raw resultTool output with a timestamp, exit addresses from both echo services, resolver answer
What it does not supportRetention, third-party access, correlation, untested address families

بیانیهٔ سیاستی را که با آن مقایسه می‌کنید همراه با تاریخ و دامنه‌اش پیوست کنید. RFC 6973 تحلیل حریم خصوصی را حول ناظران نام‌برده و دامنهٔ مشخص چارچوب می‌دهد، و این چارچوب برای رکورد آزمون مناسب است: چه کسی می‌توانست چه چیزی را، در چه شرایطی مشاهده کند و کدام بخش‌ها بررسی‌نشده ماندند.

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

مقالات مرتبط