تست نرم‌ افزار

اگر شما بخواهید یک محصول جدید را وارد بازار کنید، باید چه مراحلی را طی کنید؟ آیا در کنار سنجش نیاز بازار، مواد اولیه و مراحل تولید، محصول نهایی را تست هم می‌کنید؟ اگر جواب شما بله است، تبریک می‌گوییم. تست یکی از مراحل مهم توسعه محصول است؛ در مورد نرم‌افزار نیز، تست نرم افزار از مراحل بسیار مهم توسعه نرم‌افزار است که اگر به آن توجه نکنید ممکن است با مشکلات مختلفی روبرو شوید.
در این مقاله می‌خواهیم نگاهی کلی به مبحث تست نرم‌ افزار، اهمیت انجام آن، انواع تست و روش‌های انجام تست‌های مختلف داشته باشیم. با ما همراه باشید.

تست نرم‌ افزار چیست؟

تست نرم‌ افزار و به طور کلی فرایند تست، شامل سنجش یک محصول (در اینجا نرم‌افزار) از زوایای مختلف، در مراحل مختلف تولید و توسعه می‌شود. این ارزیابی برای یافتن تفاوت‌های بین برنامه فعلی و برنامه مورد انتظار و در نتیجه بهبود عملکرد و کارایی نرم‌افزار انجام می‌شود.
برای مثال در تست نرم‌افزار بررسی می‌کنیم که آیا:

  • عملکرد نرم‌افزار در مراحل مختلف صحیح است؟
  • نرم‌افزار نیاز مشتری و کاربر را برطرف می‌کند؟
  • در شرایط مختلف (بار تسک زیاد، تسک‌های پیوسته و …) نرم‌افزار منطقی رفتار می‌کند؟

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

چرا تست نرم‌افزار مهم است؟

همانطور که گفتیم، تست نرم‌ افزار باعث بهبود کارایی و عملکرد نرم‌افزار می‌شود؛ اما این تنها دلیل اهمیت تست نیست. اگر تست‌های نرم‌افزاری را در مراحل مختلف توسعه (از سنجش نیازمندی تا توسعه و ارائه برنامه به کاربر) انجام دهید، نتایجی می‌بینید که شگفت‌زده خواهید شد.
به طور خلاصه، تست نرم‌افزار مزیت‌های زیر را دارد:

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

اگر هنوز برای گنجاندن تست در فرایند‌های توسعه نرم‌افزار خود قانع نشده‌اید، نمونه ناموفق Therac-25 که یک دستگاه پرتودرمانی بود که جان چندین نفر را به علت نقص نرم‌افزاری گرفت، می‌تواند دلیل خوبی برای تست نرم‌ افزار قبل از ارائه آن به بازار باشد.

علاوه بر این شرکت‌های مختلفی مانند نیسان (Nissan)، استارباکس (Starbucks) و … نیز به دلیل نقص نرم‌افزاری که در سیستم‌های آن‌ها وجود داشته است، متحمل هزینه‌های سنگینی شدند که با انجام تست، میشد از آن‌ها پیشگیری کرد.

چرخه تست نرم‌ افزار

چرخه حیات تست نرم‌افزار که به اختصار (STLC (Software Testing Life Cycle گفته می‌شود، شامل ۶ مرحله مختلف از شروع تست تا پایان آن است. این ۶ مرحله عبارتند از:

  • تحلیل نیازمندی‌ها (Requirements Analysis)

نیازمندی‌هایی که در مراحل توسعه نرم‌افزار شناخته شده‌اند در این مرحله ارزیابی می‌شوند. این نیازمندی‌ها شامل نیازمندی‌های کاربر و سازمان، کاربردی و غیر کاربردی و … می‌شوند.

  • برنامه‌ریزی تست (Test Planning)

در این مرحله، استراتژی انجام تست در یک طرح برنامه تست مطرح می‌شود. این استراتژی شامل ابزارهای لازم، مراحل انجام تست و مسئولیت افراد می‌شود. همچنین زمان، بودجه و ریسک هم در این مرحله مشخص می‌شود.

  • ایجاد تست کیس‌ها (Test Case Development)

در این مرحله تست کیس‌ها (نمونه تست) تهیه می‌شوند. در هر نمونه تست، ورودی، فرایندها، شرایط اجرایی و نتیجه مورد نظر مشخص می‌شود. نمونه تست‌ها باید شفاف، بهینه و منعطف باشند و در انتها، مجموع آن‌ها باید کل تست را پوشش دهد.

  • تنظیم محیط (Environment Setup)

در این مرحله محیط تست پیکربندی و پیاده‌سازی می‌شود. در این مرحله ابزارهای مختلف تست مانند Selenium, Appium, Katalon و … اضافه می‌شوند و عملکرد خود محیط هم با استفاده از تست دود (Smoke test) سنجیده می‌شود.

  • اجرای تست (Test Execution)

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

  • گزارش تست (Test Report/Exit Criteria)

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

مراحل تست نرم‌ افزار

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

این پیش‌نیازها که بخش بزرگی از مراحل تست را در برمی‌گیرند عبارتند از: سطوح تست، انواع تست و استراتژی (رویکرد) انجام تست. در این بخش کمی دقیق‌تر به این ۳ پیش‌نیاز نگاه می‌کنیم تا با شناخت بهتر آن‌ها، بتوانید برنامه‌ریزی بهتری برای تست خود داشته باشید.

سطوح تست نرم‌ افزار

فرایند تست در مراحل مختلفی از توسعه نرم‌افزار وجود دارد. سطوحی که تست نرم‌ افزار در آن‌ها صورت می‌گیرد (به اصطلاح Test Levels) عبارتند از:

  • Unit (Component) Test:

این سطح از تست نرم‌ افزار، پایه‌ای‌ترین سطح تست است. در این سطح هر واحد (Unit) یا مولفه (Component) از کد برنامه به‌صورت مستقل تست می‌شود و صحت آن سنجیده می‌شود.

  • Integration Test:

در این سطح، وجود و صحت ارتباط بین مولفه‌ها تست می‌شود. برای مثال: آیا بخش A و بخش B ارتباط دارند؟ آیا این ارتباط صحیح و دلخواه است؟

  • System Test:

در این سطح از برنامه، یک نمونه اولیه از برنامه (قبل از انتشار) ساخته می‌شود و درستی عملکرد توابع و بخش‌های مختلف در مقیاس کلی برنامه سنجیده می‌شود. به عبارتی عملکرد کل سیستم ارزیابی می‌شود.

  • Acceptance Test:

تست پذیرش آخرین سطح از سطوح تست نرم‌ افزار است. در این سطح، برنامه از دیدگاه کاربر نهایی (حتی گاهی به صورت آزمایشی و با کاربر واقعی) ارزیابی می‌شود.

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

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

تست عملکردی و غیر عملکردی

تست عملکردی همانطور که از نام آن مشخص است، تستی است که عملکرد نرم‌افزار را بررسی می‌کند. این تست شامل هر نوع تستی می‌شود که صحت عملکردی برنامه، توابع، Unitها و … را به شکلی دقیق بررسی می‌کنند.

تست غیر عملکردی نیز رفتار برنامه را در موقعیت‌های مختلف بررسی می‌کند. این تست به عملکرد برنامه کاری ندارد، بلکه بیشتر جنبه‌هایی از نرم‌افزار را بررسی می‌کند که چندان به عملکرد خاصی مرتبط نیستند؛ مانند Localization, Scalability, Performance, Load, Stress و ….
این روش خود شامل چندین نوع تست می‌شوند که در مقاله تست عملکردی و غیر عملکردی در بلاگ آسا، می‌توانید بیشتر با این دو دسته‌بندی آشنا شوید.

تست A/B

A/B Testing زمانی انجام می‌شود که می‌خواهید بین دو حالت برنامه، یعنی حالت فعلی و حالت بهبود یافته بررسی و مقایسه انجام دهید. در این تست، دو ورژن از برنامه یعنی ورژن فعلی و ورژن تغییر یافته به دست کاربر می‌رسد و بازخورد کاربر از هر ورژن ثبت می‌شود. معمولا این تست در محیط آزمایشی انجام می‌شود.

تست Ad-hoc

عبارت Ad-hoc به معنای کاری یا چیزی است که بدون برنامه قبلی ایجاد شده است. در این نوع تست فرایند بدون هیچ برنامه، دانش یا پیش‌نیاز قبلی انجام می‌شود و بخش‌های مختلف نرم‌افزار به صورت کاملا تصادفی تست و بررسی می‌شوند.

در این روش از تست هیچ روال مشخص یا تست کیسی استفاده نمی‌شود. شاید انجام چنین تستی در ابتدا سخت به نظر برسد، اما معمولا اشکالاتی را نمایان می‌کند که در سایر تست‌ها به دست نمی‌آیند.

تست Alpha

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

تست Beta

تست بتا به عبارتی همان تست پذیرش است که در آن، نسخه اولیه (بتا) از نرم‌افزار به تعدادی از کاربران خارج از سازمان ارائه می‌شود. این کاربران که به نسخه بتا دسترسی دارند، تمام جنبه‌های عملکردی و کارایی برنامه را می‌سنجند و بازخوردی که از آن‌ها گرفته می‌شود، روی بهبود نسخه‌های بعدی و کاهش باگ‌های نسخه فعلی تاثیر می‌گذارد.

تست بازیابی (Recovery test)

در تست بازیابی، رفتار نرم‌افزار در زمان کرش کردن (Crash) و زمان‌هایی که با اختلال روبرو می‌شود بررسی می‌شود. حتی اگر نرم‌افزار شما یک نمونه عالی و بی‌نقص باشد، باز هم امکان کرش کردن آن وجود دارد؛ بنابراین باید از قبل فرایندی را پیش‌بینی کنید که در صورت بروز اختلال، نرم‌افزار در سریع‌ترین حالت ممکن به حالت عادی خود برگردد.

تست انطباق (Compliance Test)

پیش از انتشار و توسعه یک برنامه، لازم است به برخی از استانداردها توجه کنیم. تست انطباق در واقع میزان هماهنگی و پیروی برنامه از استانداردهایی را نشان می‌دهد که یا توسط سازمان‌های قانون‌گذاری و یا توسط مدیران خود سازمان تعیین می‌شوند.

تست رگرسیون (Regression Test)

اگر بخواهید یک عملکرد یا مولفه را برنامه تغییر بدهید، باید مجدد برنامه را تست کنید تا از صحت عملکرد آن بعد از تغییر مطمئن شوید. در این حالت باید از تست رگرسیون استفاده کنید. البته بهتر است تست رگرسیون با استفاده از ابزار انجام شود تا از صرف زمان زیاد جلوگیری شود.

تست منفی و مثبت (Negative/Positive Test)

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

تست آسیب‌پذیری (Vulnerability Test)

یکی از تست‌های مهم در پروسه توسعه و انتشار نرم‌افزار، تست آسیب‌پذیری است. این تست به نوعی تست امنیتی است که نقاط آسیب‌پذیر برنامه را پیدا می‌کند و با نشان دادن این حفره‌های امنیتی، رفع آن‌ها را ساده‌تر می‌کند. وجود باگ و حفره‌های امنیتی در نرم‌افزار می‌تواند مشکلاتی را به وجود بیاورد که رفع آن‌ها، نیازمند هزینه و انرژی بسیاری است و ممکن از صدمات جبران ناپذیری به کسب و کار بزند.

تست سازگاری (Compatibility Test)

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

تست اکتشافی (Exploratory Testing)

تست اکتشافی یکی از روش‌های متفاوت انجام تست است که در آن، فرد برنامه را از جهات مختلف تست می‌کند. این تست بیشتر شامل تست کاربردی نرم‌افزار می‌شود و تستر همزمان با تست نرم‌افزار در حال یادگیری جنبه‌های مختلف برنامه است.

تست دستی، اتومات و نیمه اتومات (Manual/Automated/Semi-Automated Testing)

در این روش‌های تست، همانطور که از نام آن‌ها مشخص است تست به صورت دستی، اتومات یا نیمه اتومات انجام می‌شود. در روش دستی تست توسط اپراتور انجام می‌شود و از ابزارهای اتوماسیون استفاده نمی‌شود. در این روش تک تک جزئیات تست می‌شوند.

در روش اتومات، برخی از تست‌های روتین توسط ابزار اتوماسیون به‌صورت خودکار انجام می‌شوند تا بار کاری از سمت اپراتور حذف شود. در روش نیمه اتومات نیز ترکیبی از هر دو حالت را داریم.

تست ایستا و پویا (Static/Dynamic Testing)

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

تست از پیش تعریف شده (Scripted Testing)

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

رویکرد آبشاری (Waterfall Model)

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

رویکرد اجایل (Agile Model)

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

استراتژی‌ها و روش‌های تست نرم‌ افزار

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

  • روش جعبه (Box technique)

در تست جعبه، برنامه به عنوان یک جعبه در نظر گرفته می‌شود که با توجه به مرحله تست، دسترسی‌ها و زاویه دید تستر، شفاف، تاریک یا حد فاصل این دو حالت است. حالت شفاف به اصطلاح جعبه سفید، حالت گنگ و تاریک به اصطلاح جعبه سیاه و حالت میانی جعبه طوسی نام دارد.

  • Black-box Testing

در این روش تست، عملکرد کلی نرم‌افزار بدون شناخت عناصر و زیرساخت آن سنجیده می‌شود. به عبارتی برنامه مانند یک جعبه تاریک است که تستر از محتویات درون آن خبر ندارد. این تست معمولا در مراحل نهایی توسعه و تست نرم‌افزار (تست پذیرش) انجام می‌شود.

  • White-box Testing

در این روش، برعکس روش قبل عمل می‌کنیم و اجزای نرم‌افزار مانند کد، کامپوننت و … تست و بررسی می‌شوند. در واقع با داشتن اطلاعات راجع به برنامه، ورودی‌های مختلف به آن داده می‌شود تا نتیجه به دست آمده بررسی شود. از این روش معمولا در سطوح ۱، ۲ و ۳ تست نرم‌افزار استفاده می‌شود.

  • Gray-box Testing

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

در یک کلام: چگونه نرم افزار را تست کنیم؟

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

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

برای انجام تست نرم‌افزار، ابزارها و نرم‌افزارهای مختلفی وجود دارد که این فرایند را ساده‌تر و سریع‌تر می‌کند. شناخته شده‌ترین ابزارها برای تست نرم‌افزار عبارتند از:

  • Selenium
  • Katalon Studio
  • Appium
  • JMeter
  • Jira (متد اجایل)
  • Watir
  • Tricentis Tosca
  • WorkSoft
  • SoapUI
جمع‌بندی

تست نرم افزار مقوله‌ای گسترده و بسیار مهم است که هرچه زمان می‌گذرد، به روش‌ها و انواع آن اضافه می‌شود. امروزه بیشتر تست‌های نرم‌افزاری توسط ابزارهایی که در بالاتر به آن‌ها اشاره کردیم انجام می‌شوند؛ اما نباید از نقش تستر انسانی در این فرایند غافل شد.

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

image Software Testing Tools

معرفی ابزارهای کاربردی تست نرم افزار

تهیه‌کننده مقاله : محمد بیک زند

دسته بندی: تست نرم‌ افزار
1402/08/20
0 نظر
6 دقیقه زمان مطالعه
برنامه‌نویسان و توسعه‌دهندگان به‌ صورت روزانه نرم‌افزارهای مختلفی را طراحی و تولید می‌کنند. تمام نرم‌افزارها قبل و بعد از انتشار باید از نظر عملکرد مورد آزمایش و تست‌های متفاوتی قرار بگیرند. این فرایند در توسعه نرم‌افزار، با عنوان تست نرم‌افزار شناخته می‌شود. در عملیات تست نرم‌افزار، برنامه‌ها و محصولات در حالت‌های مختلف مورد بررسی قرار می‌گیرند تا به بهترین شکل[...]
تست‌ واحد (UnitTest)

تست‌ واحد (UnitTest) چیست و چه ویژگی‌هایی دارد؟

تهیه‌کننده مقاله : ارشاد رئوفی

دسته بندی: تست نرم‌ افزار
1402/04/05
0 نظر
6 دقیقه زمان مطالعه
تست‌ واحد (UnitTest) یک روش برای تست کردن کدهای نرم‌افزار است که در آن، بخش‌های کوچک و جداگانه کد به صورت خودکار تست می‌شوند. در این روش هدف اصلی اطمینان از صحت و عملکرد صحیح هر بخش از کد و تاثیر نگذاشتن، تغییرات اعمال شده در یک بخش از کد بر سایر بخش‌ها است. در این روش هر بخش از[...]
QA vs QC

تضمین کیفیت و کنترل کیفیت: تفاوت آن‌ها در چیست؟

تهیه‌کننده مقاله : میلاد مقتدر

دسته بندی: تست نرم‌ افزار
1401/08/10
0 نظر
5 دقیقه زمان مطالعه
وقتی صحبت از تست نرم‌افزار می‌شود، تکنیک‌های مختلفی را می‌بینیم که هر کدام به نوعی می‌توانند به ما در این فرایند کمک کنند. دو مورد از رایج‌ترین روش‌های تست نرم‌افزار، QA و QC یا همان تضمین کیفیت و کنترل کیفیت است. بسیاری از اوقات، QA و QC به عنوان فرایندهای یکسان دیده می‌شوند اما در واقع این دو فرایند کاملا[...]
Defect Prevention

پیشگیری از عیب در سیستم: کاهش هزینه‌ها و ارتقای کیفیت

تهیه‌کننده مقاله : سعید زارعی

دسته بندی: تست نرم‌ افزار
1401/05/18
3 نظر
10 دقیقه زمان مطالعه
حتما جمله «پیشگیری بهتر از درمان است» را شنیده‌اید و باید گفت این جمله علاوه بر علم پزشکی، در مورد عیب در چرخه عمر توسعه نرم‌افزار هم صدق می‌کند. عیب و خطاها همان طور که توسط توسعه‌دهندگان نرم‌افزار تعریف شده‌اند، مغایرت‌هایی در برنامه با ویژگی‌های مطلوب برنامه هستند. این ویژگی‌‌ها شامل الزامات کامل و صحیح و مشخصاتی است که از[...]

تست اکتشافی (Exploratory testing) چیست؟

تهیه‌کننده مقاله : سعید زارعی

دسته بندی: تست نرم‌ افزار
1401/03/24
4 نظر
5 دقیقه زمان مطالعه
تست اکتشافی، رویکردی برای تست نرم‌افزار است که اغلب به عنوان یادگیری همزمان، طراحی تست و اجرا تست توصیف می‌شود. این مدل تست بیشتر بر روی کشف مشکلات تمرکز می‌کند و برای کشف عیب‌هایی که به راحتی در تست‌های دیگر پوشش داده نمی‌شوند، به کمک تستر آمده است. استفاده از تست اکتشافی در سال‌های اخیر شتاب بیشتری گرفته است. آزمایش[...]

تست عملکردی و غیر عملکردی

تهیه‌کننده مقاله : میلاد مقتدر

دسته بندی: تست نرم‌ افزار
1401/01/30
0 نظر
5 دقیقه زمان مطالعه
دو مورد از دسته‌بندی‌های اصلی تست در فرایند توسعه نرم‌افزار، تست عملکردی و غیر عملکردی هستند. این تست‌های دوگانه همانطور که از نام آن‌ها مشخص است، بر بخش‌های عملکردی نرم‌افزار و بخش‌های غیر عملکردی آن تمرکز می‌کنند. این گروه از تست‌ها شامل تعدادی از تست‌های نرم‌افزاری دیگر می‌شوند. در این مقاله قصد داریم درباره انواع و تفاوت‌های دقیق بین هر[...]