تصمیم دارم که اگر توفیقی حاصل شود مطالبی را در مورد تست نرم افزار بنویسم .
بخش 1
مفاهیم تست و خصوصیات تست .
همه ما می دانیم که تست نرم افزار از
حیاتی ترین و مهمترین مسایل توسعه نرم افزار است . یکی از مفاهیمی که در تست نرم
افزار مطرح می شود . تست واحد یا unit test است . یعنی نوشتن تستهایی برای هر جز نرم افزار
است .
تعریف تست واحد unit test
قطعه کدی است که قطعه کد دیگری را فراخوانی می
کند تا از صحت عملکرد آن قطعه کد دیگر مطمین شویم . هر گاه قطعه کد دیگر بر اساس
مفروضات ، دچار اشتباه شد یعنی تست ما با شکست مواجه شد .ما در فراخوانی قطعه کد
دیگر بر اساس مفروضات خروجی عمل می کنیم و ، عملکرد خروجی را مشاهده می کنیم .
چیزی که این وسط اهمیت فراوانی دارد .
نحوه نوشتن تست خوب .
اهمیت نوشتن یک تست خوب تا بدان جا ست
که اگر تست بدی انجام شود ، همانند آن است که هیچ تستی انجام نشده است .
خصوصیات تست خوب :
1-باید خودکار و قابل تکرار باشد . شما
هر وقت اراده کنید باید بتوانید تست خود را دوباره اجرا کنید.
2-اجرا و اعمال آن باید آسان باشد . تست
خوب باید براحتی قابل اجرا باشد چرا که ما بارها به اجرای آن نیاز دارید پس فرآیند
آن باید راحت و ساده باشد .
3-یکبار نوشته شود و در آینده فقط اجرا
شود ،
4-توسط هر فردی قابل اجرا باشد ، از
آنجا که ممکن است پروژه گروهی باشد لذا تست ما باید بگونه نوشته شود که هر توسعه
دهنده دیگری بتواند براحتی آن را اجرا کند .
5-زمان تست کوتاه باشد ، نباید تست ما
زمان بر باشد . چون در این حالت دیگر هیچ کس حاضر به اجرای آن تست نخواهد بود .
ادغام تستها
در بحث بالا گفتم که تست واحد برای هر
واحد نوشته می شود اما نرم افزار ما ممکن است از صدها و هزاران واحد کوچکتر دیگری
تشکیل شده باشد .تستها باید بگونه ای نوشته شوند که قابل ادغام با یکدیگر باشند ،
ما می دانیم نرم افزار از واحدهای به هم متصل و زنجیرواری تشکیل می شود .
لذا باید تستهای ما هم این امکان را
داشته باشند که با هم ادغام شوند و در مواقع لزوم با هم اجرا شوند . فراموش نکنیم
که اهمیت نوشتن تستهایی که زمانبر نباشد در ادغام تستها کاملا مشخص است .
ادامه دارد... |