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