تست
تست یک گام مهم در هر نوع توسعه نرم افزار، از جمله اسکریپت ها است. ضربالمثلی در دنیای متنباز وجود دارد، «بهزودی منتشر شود، اغلب منتشر شود» که این واقعیت را منعکس میکند. با انتشار زودهنگام و اغلب، نرم افزار بیشتر در معرض استفاده و آزمایش قرار می گیرد.
تجربه نشان داده است که اگر باگها در اوایل چرخه توسعه پیدا شوند، یافتن باگها بسیار آسانتر و رفع آنها بسیار کمهزینهتر است.
در فصل 26، ما دیدیم که چگونه می توان از خرد برای تأیید جریان برنامه استفاده کرد. از همان مراحل اولیه توسعه فیلمنامه، آنها یک تکنیک ارزشمند برای بررسی پیشرفت کار ما هستند.
بیایید به مشکل حذف فایل در بالا نگاه کنیم و ببینیم چگونه می توان برای آزمایش آسان آن را کدگذاری کرد. آزمایش قطعه اصلی کد خطرناک خواهد بود، زیرا هدف آن حذف فایلها است، اما میتوانیم کد را تغییر دهیم تا آزمایش ایمن شود:
اگر [[ -d $dir_name ]]; سپس اگر سی دی $dir_name; سپس
از دست رم * # آزمایش کردن
دیگر
echo "نمی توان به '$dir_name' cd کرد" >&2 خروج 1
فی دیگری
echo "هیچ دایرکتوری وجود ندارد: '$dir_name'" >&2 خروج 1
fi
خروج از # تست
اگر [[ -d $dir_name ]]; سپس اگر سی دی $dir_name; سپس
از دست رم * # آزمایش کردن
دیگر
echo "نمی توان به '$dir_name' cd کرد" >&2 خروج 1
فی دیگری
echo "هیچ دایرکتوری وجود ندارد: '$dir_name'" >&2 خروج 1
fi
خروج از # تست
از آنجایی که شرایط خطا قبلاً پیامهای مفیدی را ارسال میکند، نیازی به اضافه کردن هیچ پیامی نداریم. مهمترین تغییر قرار دادن یک از دست دستور درست قبل از rm فرمان اجازه می دهد تا فرمان و لیست آرگومان توسعه یافته آن نمایش داده شود، نه اینکه دستور واقعاً اجرا شود. این تغییر امکان اجرای ایمن کد را فراهم می کند. در انتهای قطعه کد، an را قرار می دهیم خروج دستور پایان دادن به تست و جلوگیری از اجرای هر قسمت دیگر از اسکریپت. نیاز به این کار با توجه به طراحی فیلمنامه متفاوت خواهد بود.
ما همچنین برخی از نظرات را اضافه می کنیم که به عنوان "نشانگر" برای تغییرات مربوط به آزمون ما عمل می کنند. اینها می توانند برای کمک به یافتن و حذف تغییرات پس از اتمام آزمایش استفاده شوند.