برنامه نویسی

#مقدمه ای بر تست نرم افزار# – انجمن DEV

Summarize this content to 400 words in Persian Lang

Software testing is a process of verifying that our application or software is working without any defects. Software testing is used to make our application/software more user friendly and prevent any defects in the software at later point of time.

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

انواع تست نرم افزار،

تست عملکردی:تست واحد: در تست واحد واحدهای کوچکتری از ماژول های برنامه را آزمایش می کنیم. همچنین به عنوان “تست کامپوننت” نامیده می شود.در درجه اول توسط توسعه دهندگان با استفاده از روش جعبه سفید انجام می شود.هدف از تست واحد کسر اشکالات در مرحله اولیه توسعه است.مثال:در یک برنامه بانکی، آزمایش یک واحد از برنامه مانند صفحه ورود با موارد مختلف آزمایشی مانند با نام کاربری / رمز عبور معتبر، نام کاربری و رمز عبور نامعتبر و غیره.

تست یکپارچه سازی: در تست یکپارچه سازی واحدهای فردی را ادغام می کنیم و عملکرد جمعی را آزمایش می کنیم.

توسط تستر بر روی سرورهای آزمایشی انجام می شود.

دامنه آزمایش یکپارچه سازی، افشای خطاها در طول تعامل بین واحدهای فردی است.

انواع تست های غیر کاربردی:

تست عملکرد: در این تست ما عملکرد و پایداری نرم افزار را تحت بارهای کاری متفاوت بررسی می کنیم. محدوده تست عملکرد شامل تست سرعت، مقیاس پذیری، پایداری و قابلیت اطمینان (محصول ایمن است یا نه) نرم افزار است.مثال: زمان پاسخگویی یک برنامه بانکی معمولاً برای صفحه ورود 60 ثانیه است و زمانی که 10000 کاربر همزمان سعی می کنند به صفحه ورود به سیستم دسترسی پیدا کنند، این زمان پاسخ تغییر نمی کند.

تست بار: در تست بار آزمایش می کنیم که آیا نرم افزار می تواند تراکنش های بزرگ را انجام دهد یا بار را افزایش دهد. تست بار بیشتر توسط کاربران نهایی انجام می شود. مثال: هنگامی که یک بار تراکنش بزرگ به یک برنامه بانکی منتقل می شود.

تست ولوم: در تست حجم، نرم افزار را با عبور حجم زیاد در یک زمان و بررسی زمان پاسخگویی سیستم، تست می کنیم. مثال: زمانی که حجم عظیمی از داده ها برای بررسی زمان پاسخگویی برنامه های بانکی به سیستم ارسال می شود.

چرخه عمر توسعه نرم افزار و چرخه عمر تست نرم افزار:

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

1.تحلیل نیازاین اولین مرحله STLC است که در آن آزمایش‌کنندگان الزامات پروژه را با بحث در مورد آن با ذینفعان مختلف تجزیه و تحلیل می‌کنند و RTM را آماده می‌کنند (ماتریس ردیابی‌پذیری مورد نیاز سندی است که در آن ما الزامات را با موارد آزمایش مربوطه مرتبط می‌کنیم).

2. برنامه ریزی آزموندر این مرحله مدیر آزمون برنامه یا استراتژی تست، انتخاب ابزار تست، انواع تست در محدوده، برآورد هزینه، برنامه ریزی منابع، آموزش های مورد نیاز و غیره را تعیین می کند.

3-توسعه مورد آزمایشیدر مرحله توسعه Test Case، موارد تست، اسکریپت ها و داده ها ایجاد می شود.

4. تنظیم محیط تستدر این مرحله محیط تست بر اساس نیاز نرم افزاری و سخت افزاری تنظیم می شود. تست دود در این مرحله انجام می شود.

5. اجرای تستدر این مرحله، موارد تست، اسکریپت ها اجرا شده و نتایج مستندسازی می شوند. باگ ها/عیوب نیز گزارش شده و پس از رفع نقص، تست مجدد نیز در این مرحله انجام می شود.

6. بسته شدن تستاین آخرین مرحله STLC است که آزمایش‌کنندگان نتایج آزمایش و معیارهای تکمیل آزمایش را گزارش می‌کنند. در این مرحله EOTR (گزارش پایان تست) نیز توسط آزمایش کنندگان تهیه و ارسال می شود.

اهمیت تست نرم افزار

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

توضیحات تصویر

Software testing is a process of verifying that our application or software is working without any defects. Software testing is used to make our application/software more user friendly and prevent any defects in the software at later point of time.
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

انواع تست نرم افزار،

تست عملکردی:
تست واحد: در تست واحد واحدهای کوچکتری از ماژول های برنامه را آزمایش می کنیم. همچنین به عنوان “تست کامپوننت” نامیده می شود.
در درجه اول توسط توسعه دهندگان با استفاده از روش جعبه سفید انجام می شود.
هدف از تست واحد کسر اشکالات در مرحله اولیه توسعه است.
مثال:
در یک برنامه بانکی، آزمایش یک واحد از برنامه مانند صفحه ورود با موارد مختلف آزمایشی مانند با نام کاربری / رمز عبور معتبر، نام کاربری و رمز عبور نامعتبر و غیره.

تست یکپارچه سازی: در تست یکپارچه سازی واحدهای فردی را ادغام می کنیم و عملکرد جمعی را آزمایش می کنیم.

توسط تستر بر روی سرورهای آزمایشی انجام می شود.

دامنه آزمایش یکپارچه سازی، افشای خطاها در طول تعامل بین واحدهای فردی است.

انواع تست های غیر کاربردی:

تست عملکرد: در این تست ما عملکرد و پایداری نرم افزار را تحت بارهای کاری متفاوت بررسی می کنیم. محدوده تست عملکرد شامل تست سرعت، مقیاس پذیری، پایداری و قابلیت اطمینان (محصول ایمن است یا نه) نرم افزار است.
مثال: زمان پاسخگویی یک برنامه بانکی معمولاً برای صفحه ورود 60 ثانیه است و زمانی که 10000 کاربر همزمان سعی می کنند به صفحه ورود به سیستم دسترسی پیدا کنند، این زمان پاسخ تغییر نمی کند.

تست بار: در تست بار آزمایش می کنیم که آیا نرم افزار می تواند تراکنش های بزرگ را انجام دهد یا بار را افزایش دهد. تست بار بیشتر توسط کاربران نهایی انجام می شود. مثال: هنگامی که یک بار تراکنش بزرگ به یک برنامه بانکی منتقل می شود.

تست ولوم: در تست حجم، نرم افزار را با عبور حجم زیاد در یک زمان و بررسی زمان پاسخگویی سیستم، تست می کنیم. مثال: زمانی که حجم عظیمی از داده ها برای بررسی زمان پاسخگویی برنامه های بانکی به سیستم ارسال می شود.

چرخه عمر توسعه نرم افزار و چرخه عمر تست نرم افزار:

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

توضیحات تصویر

1.تحلیل نیاز
این اولین مرحله STLC است که در آن آزمایش‌کنندگان الزامات پروژه را با بحث در مورد آن با ذینفعان مختلف تجزیه و تحلیل می‌کنند و RTM را آماده می‌کنند (ماتریس ردیابی‌پذیری مورد نیاز سندی است که در آن ما الزامات را با موارد آزمایش مربوطه مرتبط می‌کنیم).

2. برنامه ریزی آزمون
در این مرحله مدیر آزمون برنامه یا استراتژی تست، انتخاب ابزار تست، انواع تست در محدوده، برآورد هزینه، برنامه ریزی منابع، آموزش های مورد نیاز و غیره را تعیین می کند.

3-توسعه مورد آزمایشی
در مرحله توسعه Test Case، موارد تست، اسکریپت ها و داده ها ایجاد می شود.

4. تنظیم محیط تست
در این مرحله محیط تست بر اساس نیاز نرم افزاری و سخت افزاری تنظیم می شود. تست دود در این مرحله انجام می شود.

5. اجرای تست
در این مرحله، موارد تست، اسکریپت ها اجرا شده و نتایج مستندسازی می شوند. باگ ها/عیوب نیز گزارش شده و پس از رفع نقص، تست مجدد نیز در این مرحله انجام می شود.

6. بسته شدن تست
این آخرین مرحله STLC است که آزمایش‌کنندگان نتایج آزمایش و معیارهای تکمیل آزمایش را گزارش می‌کنند. در این مرحله EOTR (گزارش پایان تست) نیز توسط آزمایش کنندگان تهیه و ارسال می شود.

توضیحات تصویر

اهمیت تست نرم افزار

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

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا