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