پایان نامه ارشد: اولویت بندی کارآمد موارد تست نرم افزار به کمک شبکه‌ های بیزی

دانلود متن کامل پایان نامه مقطع کارشناسی ارشد رشته فناوری اطلاعات

عنوان :  اولویت بندی کارآمد موارد تست نرم افزار به کمک شبکه‌ های بیزی

وزارت علوم، تحقیقات و فناوری

دانشگاه علوم و فنون مازندران

پایان نامه

مقطع کارشناسی ارشد

رشته : مهندسی فناوری اطلاعات

عنوان:  اولویت بندی کارآمد موارد تست نرم افزار به کمک شبکه‌ های بیزی

استاد راهنما : دکتر حسین مومنی

استاد مشاور : دکتر بابک شیرازی

تابستان  1392

برای رعایت حریم خصوصی نام نگارنده پایان نامه درج نمی شود(در فایل دانلودی نام نویسنده موجود است)تکه هایی از متن پایان نامه به عنوان نمونه :(ممکن است هنگام انتقال از فایل اصلی به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل است) فهرست رئوس مطالبفصل اول : مقدمه و کلیات تحقیقمقدمه. 31-1     - یک شیوه استراتژیک برای آزمایش نرم افزار. 51-2- اصول آزمایش نرم افزار. 61-3- برخی از انواع سطوح تست نرم افزار 61-4- آشنایی با شبکه‌ های بیزی.. 91-4-1-  مقدمه ای بر شبکه‌ های بیزی.. 91-5-   اندازه گیری و متریک... 101-6- بیان مسئله. 161-7-  چالش موجود در تست  رگرسیون. 171-8-  راه حل برای چالش موجود در تست  رگرسیون. 171-9- توجیه ضرورت انجام طرح. 181-10-  هدف از اجراء. 191-11- نوآوری تحقیق. 19        فصل دوم : ادبیات و پیشینه تحقیق2-1-  پیشینه تحقیق. 212-1-1-  کارهای مرتبط.. 212-1-2-  بررسی مشکلات موجود در روش‌های مطالعه شده قبلی.. 222-2- تست نرم افزار. 242-3- صحت و اعتبار سنجی.. 242-4-  اهداف آزمایش... 252-5- اصول آزمایش... 262-6-  قانون Pareto در فرآیند تست نرم افزار. 262-7-  چند نمونه از انواع تست.. 272-8-  مراحل انجام تست.. 272-9-  ویژگی‌های یک نرم‌افزار تست‌ پذیر. 282-10-  ویژگی‌های یک تست خوب.. 292-11- طراحی نمونه‌های آزمایش... 302-11-1  تست جعبه  سیاه  312-11-2  تست جعبه سفید   312-11-3  آزمایش ساختارکنترل. 312-11-4  آزمایش واحد. 312-11- 5 خطاهای متداول محاسبه که اغلب مشاهده می‌شوند. 322-12-  آزمایش یکپارچه سازی  322-13-  آزمایش رگرسیون  332-14-  متدولوژی های مربوط به تست  رگرسیون. 352-14-1-  اجرای مجدد همه‌ ی تست ها  352-14-2-  انتخاب تست  رگرسیون  362-14-3-  کاهش مجموعه تست  362-14-4-  اولویت بندی موارد تست  362-15-  اولویت بندی.. 372-15-1-  مقدمه ای بر اولویت بندی.. 372-15-2          -  معیارهای اولویت دهی.. 382-15-3-  اولویت بندی موارد تست.. 392-16-  متریک... 392-16-1-  مقدمه ای برای متریک... 392-17-  متریک های تست نرم افزار. 402-17-1-  خواص متریک ها در شرایط ایده آل. 402-18-  معیار و متریک در تست نرم افزار. 432-18-1-  مراحل انجام کاردر فرایند اندازه گیری.. 432-19-  متریک های آزمون. 432-20-  مزایای استفاده از متریک ها 442-21-  شبکه‌ های بیزی.. 452-21-1-    استنتاج با استفاده از توزیع توام کامل. 452-21-2-  مشکلات استنتاج  با توزیع توام کامل و راه ‌حل آن ‌ها 472-21-3-  مثالی از شبکه ‌های بیزی.. 482-22-  مفاهیم شبکه ‌های بیزی.. 502-22-1-   نمایش توزیع توام کامل. 502-22-2-  رابطه ‌های استقلال شرطی در شبکه‌ های بیزی.. 522-22-3-   نمایش کارآمد توزیع ‌های شرطی.. 532-23-  یادگیری شبکه‌ های بیزی.. 542-24-   استنتاج دقیق در شبکه‌ های بیزی.. 552-25-  استنتاج بوسیله محاسبه تک ‌تک عناصر احتمالی.. 552-26-  الگوریتم حذف متغیر. 572-27-  استنتاج تقریبی در شبکه‌ های بیزی.. 582-28-  روش‌های نمونه‌گیری مستقیم. 582-28-1-  نمونه ‌گیری با رد کردن. 592-28-2-   نمونه ‌گیری وزن ‌دار. 602-28-3-  نمونه‌ گیری  زنجیره مارکوفی.. 612-28-4- جمع ‌بندی شبکه‌های بیزی.. 622-29-  تحولات انجام شده تا کنون. 63فصل سوم : روش تحقیق-3        انگیزه و هدف ما از ارائه این رویکرد. 663-1-   رویکرد پیشنهادی.. 683-1-1-   روند کلی در رویکرد پیشنهادی.. 683-2-  محاسبه و استخراج شاخص‌ها برای ماژول‌ها 703-3       -  معیارهای رویکرد پیشنهادی.. 703-3-1-  اهمیت هر ماژول. 713-3-2- احتمال ابتلا به خطای ماژول. 723-3-3- اثرگذاری خطای ماژول بر دیگر ماژول‌ها 723-3-4- شدت خطای هر ماژول. 733-4- شاخص‌های وزن دهی به ماژول‌ ها 743-5- ساخت شبکه بیزی.. 743-6- ایجاد ساختار گراف.. 753-7- محاسبه جداول احتمال شرطی.. 763-8- تبدیل اندازه‌ی کیفی صفت‌ ها به مقادیرکمی.. 793-9-روش اول برای صفت‌ های  سه حالته. 793-9-1-  مثالی از روش اول برای صفت های سه حالته. 803-10-  روش دوم برای صفت‌های سه حالته. 813-10-1-  مثالی از روش دوم برای صفت های سه حالته. 813-11-  تبدیل اندازه‌ی کیفی صفت‌ های غیرهم وزن به مقادیرکمی.. 823-11-1- مثالی از روش  تبدیل اندازه‌ی کیفی صفت‌ های غیرهم وزن به مقادیرکمی.. 833-12-  پیاده سازی مدل تست کارآمد نرم افزار با استفاده از نرم افزار Netica. 853-13-   پرکردن جدول احتمال شرطی با استفاده از کد نویسی.. 873-14-  نمونه هایی از جداول احتمال شرطی فاکتورهای تست و کارآمدی اولویت بندی.. 903-15-   پیاده سازی رویکرد پیشنهادی در مثال واقعی.. 94فصل چهارم : محاسبات و یافته های تحقیق- 4      1-  ارزیابی مدل پیشنهادی.. 972-4     -  متریک (APFD) 974-3- اولویت بندی با کمک تکنیک شبکه های بییزی  984-4- اولویت بندی با تکنیک اصلی  1014-5-  اولویت بندی با تکنیک تصادفی.. 1024-6-  مقایسه روش های اولویت بندی با روش پیشنهادی.. 103فصل پنجم : نتیجه گیری و پیشنهادات1-5     نتیجه گیری.. 1082-5     پیشنهادات آینده 110پیوست الف: واژه نامه ی فارسی به انگلیسی.. 111پیوست ب: واژه نامه ی انگلیسی به فارسی.. 114منابع و ماخذ. 117   

فهرست جداول

 جدول2-1: توزیع یک قلمرو ساده 45جدول2-2 : سیر تحولات در مورد اولویت بندی موارد تست 63جدول3-1 : سیستمی ساده شامل 10 ماژول و 10 مورد تست 67جدول3-2 : سطح شدت خطای هر ماژول 74جدول3-3 : تعداد سطرهای جدول احتمال شرطی فاکتورهای تست 78جدول3-4 : انتساب مقدار عددی به اندازه‌های کیفی در صفت‌های سه حالته 79جدول3-5 : بازه‌های تبدیل میانگین به اندازه‌های کیفی در صفت‌های سه حالته 80جدول3-6 : نمونه سطری از جدول احتمال شرطی فاکتوراحتمال ابتلا به خطای ماژول، سه حالته 81جدول3-7 : سطری از جدول احتمال شرطی احتمال ابتلا به خطای ماژول با سه ویژگی فرعی 82جدول3-8 : نمونه سطری از جدول احتمال شرطی فاکتوراحتمال ابتلا به خطای ماژول،  سه حالته 85جدول3-9 : اندازه درصد احتمال حالت‌ها در فاکتورها بدون مشاهده ویژگی‌های فرعی، سه حالته 87جدول 3-10: اندازه ویژگی‌های فرعی در یک پروژه نرم افزاری نمونه 94جدول4-1: تعداد خطای شناسایی شده توسط موارد تست با توجه به زمان کل هر مورد تست 98جدول4-2 : نتایج ارزیابی از  نسخه های مختلف برنامه تحت تست 106جدول4-3 : تکنیک های اولویت بندی استفاده شده در این ارزیابی 106 فهرست تصاویر و نمودار شکل2-1:گراف متریک های کلی نرم افزار 41شکل2-2 : شبکه بیزی قلمرو دستگاه آژیر 48شکل3-2 : ارائه مفاهیم ساختاری به دو صورت معمول 53شکل4-2 : جواب به درخواست با محاسبه عبارت بهینه‌تر 56شکل5-2 : الگوریتم حذف متغیر 57شکل6-2 : الگوریتم نمونه‌گیری با رد کردن 59شکل7-2 : الگوریتم نمونه‌گیری وزن‌دار 61شکل8-2 : الگوریتم نمونه‌گیری وزن‌دار 62شکل3-1 : ماژول‌ های یک سیستم ساده نرم افزاری 66شکل3-2 : یک پیاده سازی عمومی برای چارچوب مبتنی بر شبکه‌ های بیزی 69شکل3-3 : گراف شبکه بیزی تست کارآمد نرم افزار 75شکل3-4 : پیاده سازی مدل تست کارآمد نرم افزار با استفاده ازنرم افزار Netica 86شکل3-5 : شبه کد پر کردن جدول احتمال شرطی برای اهمیت ماژول با دو ویژگی فرعی 88شکل3-6 : شبه کد پر کردن جدول احتمال شرطی برای تعداد خطاها با سه ویژگی فرعی 89شکل3-7 : جدول احتمال شرطی تعداد موارد تست 90شکل3-8 : جدول احتمال شرطی تعداد خطاها 91شکل3-9 : جدول احتمال شرطی اهمیت ماژول 92شکل3-10 : جدول احتمال شرطی کارآمدی نهایی تست نرم افزار 93شکل3-11 : پیاده سازی مدل تست کارآمد نرم افزار بروی سیستم مدیریت پرونده های قضایی 95شکل4-1 : نمودار نرخ شناسایی خطا با  روش BN برای اولویت بندی موارد تست 100شکل4-2 : نمودار نرخ شناسایی خطا با  روش Orginal برای اولویت بندی موارد تست 102شکل4-3 : نمودار نرخ شناسایی خطا با  روش Random برای اولویت بندی موارد تست 103شکل4-4 : نمودار مقایسه نتایج روش پیشنهادی با دو روش دیگر در نرخ شناسایی خطا 104 فصل اولمقدمه و کلیات تحقیق 

مقدمه

سیستم های نرم افزاری امروزه با فراگیر شدن در علوم مختلف نقش بسیار مهمی را در برطرف نمودن نیازها و خواسته‌های مشتریان ایفا می‌کنند و همچنین به عنوان یک جزء اصلی و لاینفک در امور روزمره به حساب می‌آیند. با گسترش روز افزون تولید سیستم های نرم افزاری همچنان تقاضا برای تولید سیستم های نرم افزاری جدید وجود دارد. بحث مهم بعد از تولید نرم افزارها  نگهداری و ارتقاء آنها می‌باشد. وجود خطا و اشتباه در نرم افزارها می‌تواند منجر به خسارات زیادی از قبیل هزینه‌های مالی، زمانی، فیزیکی وحتی در برخی کاربردهای حساس و بحرانی مانند کاربردهای پزشکی، کنترل کننده موشک و کنترل کننده‌های ترافیک هوایی خسارت جانی را نیز  به بار آورد. از این رو برای اینکه قابلیت اطمینان را در استفاده از سیستم های نرم اقزاری افزایش دهیم باید نرم افزار را مورد تست قرار دهیم. تست نرم افزار در توسعه سیستم های نرم افزاری از جایگاه مهم و با ارزشی برخوردار است. به خصوص در سیستم های نرم افزاری مقیاس بزرگ و پیچیده امروزی. زیرا فعالیت‌های تست هم زمان بر و هم هزینه بر هستند. نرم افزارها برای اینکه ارتقاء یابند می‌بایست توسعه داده شوند و نسبت به نسخه‌های اولیه رشد و تکامل یابند. یکی از فعالیت‌های مهم و هزینه بر  در جهت ارتقاء نرم افزار تست نرم افزار است که انواع متفاوتی از تست برای بخش‌های مختلف و در زمانهای مختلف طراحی و ایجاد شده‌اند. تست فرآیندی است مخرب که محصول نرم افزاری را مورد حمله قرار می‌دهد تا اینکه خطا بروز کند. تست نرم افزار شامل تحقیق و بررسی بر روی نرم افزار تولید شده است که این تحقیق و برسی برای پیدا کردن خطاها انجام می‌شود. به طور کلی یک سری از سوال و جواب‌هایی هستند که نرم‌افزار را با آن امتحان می‌کنیم در حالی که از برنامه انتظار داریم با توجه به ورودی‌هایی که با استفاده از سوالات وارد می‌کنیم، جواب‌های صحیحی را به عنوان خروجی به دست دهد. آزمایش نرم‌افزار حیطه وسیعی از فعالیت‌های مربوط به تولید برنامه‌های رایانه‌ای را دربرمی‌گیرد که از آزمایش کردن کد برنامه توسط برنامه‌نویس گرفته تا نشان دادن عملکرد درست یک سیستم اطلاعاتی بزرگ به مشتری. سازمانها یا شرکت‌هایی که نرم افزارها را توسعه می‌دهند، محصولی به نام نرم افزار تولید می‌کنند. ولی چه عامل یا عواملی باعث می‌شوند که یک نرم افزار از نرم افزار مشابه دیگر متمایز و برجسته شود؟ عوامل متعددی را می‌توان نام برد که باعث این برتری و تمایز شود اما یکی از این عوامل می‌تواند کیفیت محصول نهایی باشد که به بازار عرضه خواهد شد. اما برای رسیدن به این نقطه  برتری، باید چگونه عمل کرد و اندیشید؟ یکی از پاسخ‌ها به این سوال بدون شک تست نرم افزار و نحوه انجام آن می‌تواند باشد.اهمیت آزمایش نرم افزار و اثرات آن بر کیفیت نرم افزار نیاز به تأکید بیشتر ندارد.Deutch   در این باره اینگونه بیان می‌نماید:  توسعه سیستمهای نرم افزاری شامل یکسری فعالیت‌های تولید می‌باشد که امکان اشتباهات انسانی در آن زیاد است. خطاها در ابتدای یک فرآیند و مراحل توسعه بعدی آن ظهور می ‌نمایند.  به دلیل عدم توانایی انجام کارها و برقراری ارتباط به صورت کامل، توسعه نرم افزار همواره با فعالیت تضمین کیفیت همراه است.  آزمایش نرم افزار عنصری حیاتی از تضمین کیفیت نرم افزار می ‌باشد و مرور تقریبی مشخصه، طراحی، و تولید کد رانشان می ‌دهد. [1] 

1-1 – یک شیوه استراتژیک برای آزمایش نرم افزار

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

1-2- اصول آزمایش نرم افزار

آزمایش، موارد غیر معمول جالب توجه ای را برای مهندس نرم افزار آشکار می‌نماید. در ضمن فعالیت‌های اولیه  مهندسی نرم افزار، مهندس، سعی در ایجاد نرم افزار با استفاده از مفهومی مجرد و بدست آوردن محصولی واضح و کامل دارد و اینک آزمایش باید انجام شود .مهندس تست یکسری نمونه‌های آزمایش ایجاد می‌ کند که باید نرم افزار ایجاد شده را با شکست روبرو نماید.  در واقع، آزمایش، یک مرحله در فرآیند نرم افزار است که می ‌تواند به عنوان فرآیندی مخرب به جای سازنده در نظر گرفته شود (حداقل از نظر روانشناسی) به هرحال هدف از آزمایش چیزی متفاوت از آنچه انتظار می ‌رود می ‌باشد. در بسیاری از شرکت‌ها حدود 30 تا 50 درصد از هزینه نرم افزار را صرف تست آن می‌کنند، با این وجود برخی هنوز هم بر این عقیده‌اند که نرم افزارها قبل از انتشار و تحویل به مشتری به درستی تست نمی‌شوند. چند دلیل باعث این باور می‌شوند : اول اینکه انجام تست نرم افزار امری است بسیار مشکل. دوم اینکه معمولاَ به خاطر زمانبر بودن و دیگر عوامل از قبیل : هزینه‌ی  بالای تست نرم افزار ، فشارهای وارده از سوی بازار ، مشتری و رقبا منجر به این شده‌اند تا مدت زمان اختصاص داده شده برای انجام تست بسیار کمتر از دیگر بخش‌های فرایند تولید نرم افزار گردد. دلیل دیگر نداشتن برنامه (استفاده از متدولوژی و ابزاری مشخص) برای تست کردن می‌باشد. با این وجود تمامی شرکت‌های تولید کننده نرم افزار با هدف تولید نرم افزاری با کیفیت و افزایش رضایتمندی مشتری، محصول خود را مورد تست قرار می‌دهند. کیفیت چیزی است که ما در تمامی چرخه تولید نرم افزار از قبیل تولید محصولات نرم افزاری ، فرایندها و خدمات ارائه شده به مشتری یا کاربران  به دنبال آن هستیم. [2] 

1-3- برخی از انواع سطوح تست نرم افزار

تست عملکرد: در این نوع تست، نرم افزار تست می‌شود تا از لحاظ درستی عملکرد بررسی شود تست ها اجرا می‌شوند تا ببینند که آیا نرم افزار همان گونه که انتظار می‌رود عمل می‌کند. معمولا این روش در انتهای کار انجام می‌شود ولی می‌توان از همان ابتدای کار با تست کردن قسمت‌های کوچک مثل جزء ها  نتیجه نهایی را ساده کرد.تست فشار : برنامه در مقابل بار سنگین مثل مقادیر عددی پیچیده ، مقادیر زیادی ورودی و مقادیر زیادی پرس وجو امتحان می‌شود . که میزان باری که برنامه می‌تواند آن را تحمل کند را بررسی می‌کند .  هدف ، طراحی محیطی است که مخرب تر از محیطی که برنامه در دنیای واقعی و در شرایط نرمال با آن روبرو می‌شود. تست بار : برنامه در مقابل بار زیاد ورودی‌ها تست می‌شود مثل تست وب سایت ها برای یافتن نقاطی که در آن نقاط وب سایت یا برنامه شکست می‌خورد و یا نقاطی که در آنها کارایی وب سایت کاهش پیدا می‌کند. تست بار در سطح بار از پیش تعیین شده ای انجام می‌شود. بالاترین باری که سیستم می‌تواند بپذیرد، در حالیکه هنوز به درستی کار می‌کند. اما می‌خواهد سیستم را به طور پیوسته زیر بار نگه دارد و در صورت ایجاد مشکل با پیغام زیر روبرو می‌شود.Error! Reference source not foundتست امنیت : با پیشرفت تجارت الکترونیک در فضای وب طراحی و تست سیستم های نرم افزاری برای اطمینان از ایمن و مطمئن بودن سیستم، مسأله ای اساسی است که توسعه دهندگان نرم افزار و متخصصان تست با آن مواجه هستند.تست رگرسیون : بعد از تغییر نرم افزار ، حتی برای تغییر در عملکرد یا برای تصحیح یک خطا ، یک تست رگرسیون روی تمام تست هایی که قبلاً نرم افزار آنها را با موفقیت انجام داده اجرا می‌کند تا اطمینان حاصل کند که نرم افزار تصادفاً در عملکردهای قبلی دچار خطا نشده است. تست رگرسیون می‌تواند در هیچ یا همه سطوح قبلی صورت بگیرد.از تست رگرسیون به عنوان یکی از گران قیمت‌ترین وظایف در میان فعالیت‌های نگهداری نرم افزار یاد می‌شود.[2] تست رگرسیون، به هر نوع از تست نرم افزار که به دنبال کشف خطاهای جدید نرم افزار باشد اطلاق می‌شود. رگرسیون‌ها در محیط‌های عملکردی و غیر عملکردی از یک سیستم بعد از اعمال تغییرات، از جمله تکامل، قطعه کدها یا تغییرات پیکربندی آنها ساخته شده است.  همچنین از تست رگرسیون برای انجام اعتبار سنجی نرم افزارهای تغییر یافته استفاده می‌شود.وجود خطا در نرم افزار و اجرای آن تاثیر منفی بر روی عملکرد و کارایی سیستم می‌گذارد. برای اینکه اثرات این خطرات را کاهش دهند مهندسان تست بر  بکارگیری و اجرای تست رگرسیون تکیه می‌کنند. مهندسان تست در تست رگرسیون، موارد تست موجود در مجموعه تست را که قبلاَ هم بروی نرم افزار اجرا شده‌اند مجدداَ اجرا می‌کنند، همچنین موارد تست جدیدی را طراحی و ایجاد می‌کنند تا اینکه اطمینان حاصل شود که تمامی اثرات تغییرات در نظر گرفته شده و هیچ عوارض جانبی باقی نمانده است. تست رگرسیون تقریباَ به طور عمومی توسط نرم افزار سازمان بکار گرفته شده است[2].تست رگرسیون را نه تنها برای آزمایش صحت از یک برنامه ، بلکه اغلب برای ردیابی با کیفیت بودن خروجی هم می‌توان استفاده کرد.  برای مثال، در طراحی یک کامپایلر، تست رگرسیون می‌تواند اندازه کد، زمان شبیه سازی و زمان تلفیقی از موارد مجموعه تست را اندازه گیری کند. تست های رگرسیون را می‌توان به طور عمده به عنوان آزمون عملکردی یا آزمون واحد طبقه بندی کرد. آزمون عملکردی، عمل کردن برنامه کامل با ورودی‌های مختلف است.  تست واحد، عمل کردن انفرادی زیر روال‌ها یا متدهای شیء. ابزارهای هر دو نوع تست عملکردی و تست واحد تمایل دارند به وجود بخش سوم محصولات که بخشی از مجموعه کامپایلر نیست، و هر دو تمایل دارند به خودکار سازی. یک تست عملکردی ممکن است یک سری اسکریپت از ورودی‌های برنامه، و حتی شامل یک مکانیزم خودکار برای کنترل حرکات ماوس و کلیک ها باشد. یک تست واحد ممکن است مجموعه ای از عملکردهای جداگانه در خود کد باشد. بعد از تغییر نرم افزار ،  حتی برای تغییر در عملکرد یا برای تصحیح یک خطا یک تست رگرسیون روی تمام تست هایی که قبلاَ  نرم افزار آنها را با موفقیت انجام داده اجرا می‌کنند تا اینکه اطمینان حاصل کنند نرم افزار تصادفاََ یا به طور اتفاقی در عملکردهای قبلی دچار خطا نشده است. تست رگرسیون را می‌توان در همه‌ی سطوح تست قبل یا هیچکدام از آنها مانند : تست بار، تست فشار، تست عملکرد بکار برد. از اینرو  بکار گیری و اجرای تست گرسیون برای کیفیت نرم افزار مهم است، اما قابل ذکر است که می‌تواند گران و هزینه بر باشد. برای کم کردن هزینه‌های تست رگرسیون تکنیک هایی همچون کاهش مجموعه تست و اولویت بندی موارد تست نیز پیشنهاد شده‌اند که هر کدام را به طور مجزا شرح می‌دهیم.تعداد صفحه :127قیمت : 14000تومان

بلافاصله پس از پرداخت ، لینک دانلود پایان نامه به شما نشان داده می شود

و در ضمن فایل خریداری شده به ایمیل شما ارسال می شود.

پشتیبانی سایت :        09309714541 (فقط پیامک)        info@arshadha.ir

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

--  -- --

مطالب مشابه را هم ببینید

فایل مورد نظر خودتان را پیدا نکردید ؟ نگران نباشید . این صفحه را نبندید ! سایت ما حاوی حجم عظیمی از پایان نامه های دانشگاهی است. مطالب مشابه را هم ببینید. برای یافتن فایل مورد نظر کافیست از قسمت جستجو استفاده کنید. یا از منوی بالای سایت رشته مورد نظر خود را انتخاب کنید و همه فایل های رشته خودتان را ببینید