کامپیوترنرمافزار

روش از نرم افزار تست و مقایسه آنها. روش تست "جعبه سیاه" تست و روش "جعبه سفید"

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

روش

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

روش تایید برنامه (تست) را می توان به استاتیک و دینامیک تقسیم شده است.

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

تکنیک های پویا عبارتند از:

  1. تست جعبه سفید. این یک مطالعه دقیق از منطق درونی و ساختار برنامه است. لازم به دانش از کد منبع است.
  2. تست جعبه سیاه. این روش به هیچ گونه دانش در مورد عملکرد داخلی از نرم افزار نیاز است. ما فقط جنبه های اساسی سیستم، به مربوط و یا در ارتباط با چند تن از ساختار منطقی داخلی خود در نظر نمی.
  3. روش جعبه خاکستری. این ترکیب دو روش قبلی است. اشکال زدایی با دانش محدود از عملکرد داخلی نرم افزار با آگاهی از جنبه های اساسی سیستم ترکیب شده است.

تست شفاف

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

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

  • این اجازه می دهد برای تشخیص خطا در کد های مخفی با از بین بردن خطوط غیر ضروری؛
  • استفاده از عوارض جانبی؛
  • پوشش حداکثر است با نوشتن یک اسکریپت آزمون به دست آورد.

معایب:

  • فرایند هزینه بالا، نیاز به دیباگر ماهر؛
  • بسیاری از راه های ناشناخته باقی می ماند زیرا بررسی کامل از تمام خطاهای پنهان ممکن است بسیار پیچیده است.
  • برخی از کد خواهد شد خسته شده اید منتقل می شود.

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

گونه های اصلی:

1) آزمایش کنترل جریان - استراتژی ساختاری با استفاده از مدل جریان کنترل برنامه و به عنوان طرفدار راه های ساده تر به کمتر پیچیده تر؛

2) شاخه طراحی شده است به مطالعه اشکال زدایی هر گزینه (درست یا غلط) از هر اپراتور کنترل، که همچنین شامل یک راه حل ترکیب.

3) تست از مسیر اصلی، که اجازه می دهد تا دستگاه برای ایجاد اندازه گیری پیچیدگی منطقی پروژه رویه برای جداسازی یک مجموعه اساس مسیرهای اجرایی؛

4) چک کردن جریان داده ها - استراتژی کنترل جریان تحقیقات توسط حاشیه نویسی اطلاعات دفعات در مورد آگهی و استفاده از متغیرها در برنامه.

5) چرخه تست - به طور کامل بر روی عملکرد صحیح از فرآیندهای چرخه ای متمرکز شده است.

اشکال زدایی رفتاری

تست جعبه سیاه رفتار نرم افزار به عنوان یک "جعبه سیاه" - اطلاعات در مورد فعالیت های درونی برنامه شمارش نیست، و فقط جنبه های اساسی سیستم بررسی می شود. در این مورد، تستر نیاز به دانستن معماری سیستم بدون دسترسی به کد منبع.

مزایای استفاده از این روش:

  • بهره وری برای قطعه کد بزرگ؛
  • سهولت تستر ادراک؛
  • دیدگاه کاربر است که به وضوح از دیدگاه توسعه (برنامه نویس و تستر مستقل از یکدیگر هستند) از هم جدا؛
  • ایجاد سریع تر از آزمون.

نرم افزار تست روش جعبه سیاه معایب زیر است:

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

نامهای دیگر برای این فن آوری - رفتاری، غیر شفاف، تست عملکرد و روش اشکال زدایی از یک جعبه بسته.

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

1) معادل پارتیشن، که می تواند مجموعه ای از داده ها از آزمون به عنوان داده های ماژول نرم افزار ورودی است را به بخش تقسیم را کاهش دهد؛

2) تجزیه و تحلیل ارزش مرز در تایید مرزهای یا ارزش حد افراطی متمرکز - حداقل، حداکثر، و مقادیر معمول از خطا؛

3) fuzzing در - مورد استفاده برای اجرای جستجو با وارد خطا و یا poluiskazhennyh داده خراب در حالت اتوماتیک یا نیمه اتوماتیک.

4) تعداد علیت - روش بر اساس ایجاد نمودار و تعیین رابطه بین عمل و علل آن: هویت، نفی، منطقی OR و منطقی است - و چهار شخصیت اصلی، بیان رابطه بین علت و معلول؛

5) تأیید از آرایه متعامد اعمال شده به مشکلات با یک ناحیه ورودی نسبتا کوچک بیش از امکان تحقیق جامع؛

6) تست تمام جفت - روش که در آن مجموعه ای از ارزش آزمون شامل همه ترکیبات دوتایی ممکن است از هر جفت از پارامترهای ورودی.

7) انتقال حالت اشکال زدایی - یک تکنیک برای چک کردن وضعیت از دستگاه، و همچنین از طریق حرکت مفید رابط کاربری گرافیکی کاربر است.

سیاه تست جعبه: نمونه هایی

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

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

تستر، بنابراین، تعامل با نرم افزار با وارد، اقدام به سوئیچ ها، دکمه ها و یا رابط های دیگر. انتخاب داده های ورودی، منظور از دولت و یا دنباله ای از اعمال توانید به تعداد زیادی کل ترکیبات منجر شود، همانطور که در مثال زیر نشان داده شده.

چگونه بسیاری از آزمون باید به منظور به بررسی تمام مقادیر ممکن برای پرچم 4 پنجره ها و زمینه یکی کردن را، تعیین زمان در ثانیه؟ در محاسبه نگاه اول ساده است: 4 زمینه های با دو حالت ممکن - 24 = 16، که باید توسط تعدادی از موقعیت های ممکن 00-99 ضرب شود، به عنوان مثال 1600 آزمون امکان پذیر است.

با این حال، این محاسبه اشتباه است: میتوانیم تعیین کنیم که زمینه دو نقطه نیز می تواند یک فضای، یعنی آن را از دو موقعیت الفبایی تشکیل شده و می توانید کاراکتر الفبایی، کاراکترهای خاص، فاصله، و غیره شامل بنابراین، اگر .... سیستم یک کامپیوتر 16 بیتی، به نوبه خود 216 = 65536 یکی برای هر موقعیت در حاصل 4294967296 موارد آزمون را که توسط 16 ترکیب از پرچم که می دهد در مجموع 68719476 736. اگر آنها انجام ضرب شود در 1 آزمون در ثانیه، ادامه کل تست olzhitelnost 2 177.5 سال است. برای سیستم های 32 یا 64 بیتی، مدت زمان و حتی بیشتر.

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

پارتیشن بندی هم ارزی

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

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

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

برای مثال، در (1 / x) در 1/2 با استفاده از سه توالی داده ها، سه پارتیشن معادل:

1. همه شماره های مثبت خواهد شد و در همان راه درمان و باید نتایج درست به من بدهید.

2. همه شماره های منفی در همان راه را با همان نتیجه گرفته شده است. این نادرست است، چون ریشه یک عدد منفی خیالی است.

3. صفر خواهد شد به طور جداگانه به کار گرفته و به خطا "تقسیم بر صفر". این بخش با یک ارزش واحد است.

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

تجزیه و تحلیل ارزش مرز

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

  • استفاده نادرست از عملگرهای رابطه ای (<،>، =، ≠، ≥، ≤).
  • خطا تنها؛
  • مشکلات در چرخه و تکرار،
  • انواع اشتباه و یا اندازه متغیرهای مورد استفاده برای ذخیره سازی اطلاعات؛
  • محدودیت مصنوعی در ارتباط با انواع داده ها و متغیرها.

تست شفاف

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

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

  • مدل معماری؛
  • زبان مدلسازی یکپارچه (UML)؛
  • مدل حالت (ماشین حالت محدود).

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

این روش تست از مزایای زیر است:

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

معایب:

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

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

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

1) آرایه متعامد - استفاده از یک زیر مجموعه از تمام ترکیبات ممکن؛

2) اشکال زدایی ماتریس با استفاده از حالت داده برنامه.

3) بازرسی پسرونده انجام شده در تغییرات جدید به نرم افزار.

4) تست قالب است که به تجزیه و تحلیل طراحی و معماری از یک برنامه خوب است.

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

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

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

در زیر تفاوت های اصلی بین سه تکنیک های تست پویا هستند - جدول مقایسه بین سه شکل از اشکال زدایی نرم افزار داده شده است.

منظر

روش جعبه سیاه

روش جعبه خاکستری

روش جعبه سفید

در دسترس بودن اطلاعات در مورد ترکیب از برنامه

بررسی تنها جنبه های اساسی

دانش جزئی در مورد ساختار داخلی از برنامه

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

درجه تکه تکه شدن برنامه

کم

مرکزی

زیاد

که اشکال زدایی تولید؟

پایان دادن به کاربران، تست و توسعه دهندگان

پایان دادن به کاربران، توسعه دهندگان و Debugger

توسعه دهندگان و تست

پایگاه

تست روی موقعیت های اضطراری خارجی است.

پایگاه داده نمودارها، نمودار جریان داده، دولت از دانش داخلی از الگوریتم و معماری

این دستگاه داخلی کاملا آگاه است

میزان پوشش

کمتر جامع و نیاز به حداقل زمان

مرکزی

به طور بالقوه جامع ترین. وقت گیر

داده ها و مرزهای داخلی

رفع اشکال تنها با آزمون و خطا

را می توان بررسی حوزه های داده ها و مرزهای داخلی، اگر آنها شناخته شده هستند

بهترین دامنه داده ها از آزمون و مرزهای داخلی

الگوریتم تست مناسب

خیر

خیر

بله

اتوماسیون

روش خودکار از تست نرم افزار بسیار ساده کردن فرآیند بازرسی، بدون در نظر گرفتن محیط زیست فنی و زمینه. آنها در دو مورد استفاده می شود:

1) به طور خودکار وظایف خسته کننده، تکراری یا دقیق مانند مقایسه فایل به چند هزار ردیف به منظور آزاد برای غلظت تستر نقاط مهم تر؛

2) برای اجرای ردیابی و یا وظایف است که نمی توان به راحتی توسط مردم از جمله تأیید عملکرد یا زمان پاسخ تجزیه و تحلیل است که می تواند در صدم ثانیه اندازه گیری انجام می شود.

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

  • مدیریت آزمون، که شامل پروژه پشتیبانی مدیریت، نسخه، تنظیمات، تجزیه و تحلیل ریسک، ردیابی آزمون، خطا، نقص، و ابزارهای گزارش؛
  • مدیریت مورد نیاز، که شامل ذخیره سازی مورد نیاز و مشخصات، آنها را به طور کامل و ابهام، اولویت خود و قابلیت ردیابی از هر آزمون را بررسی کنید.
  • بررسی انتقادی و تجزیه و تحلیل استاتیک، از جمله نظارت جریان، و وظایف، ضبط و ذخیره سازی از نظرات، تشخیص نقص و برنامه ریزی شده لینک مدیریت اصلاحات به چک لیست ها و قوانین، ردیابی اسناد منبع ارتباطات و تجزیه و تحلیل استاتیک کد برای تشخیص نقص، حصول اطمینان از انطباق با استانداردهای از نوشتن کد، تجزیه و تحلیل ساختار و وابستگیها، محاسبه پارامترهای متریک از کد و معماری. علاوه بر این، استفاده از کامپایلرها و ژنراتور و روابط متقابل مراجع؛
  • مدل سازی، که شامل ابزار برای رفتار کسب و کار مدل سازی و تست مدل؛
  • در تست تضمین تولید داده انتظار می رود بر اساس شرایط و مدل های رابط کاربری و کد، مدیریت برای ایجاد یا تغییر فایل ها و پایگاه داده ها، پیام رسانی، اعتبار سنجی داده ها بر اساس قواعد مدیریت، تجزیه و تحلیل آماری از شرایط و خطرات؛
  • دیدگاه انتقادی با وارد کردن داده ها از طریق یک رابط کاربر، API، خط فرمان گرافیکی با استفاده از مقایسه برای کمک به شناسایی آزمون موفق و ناموفق.
  • حمایت از محیط زیست اشکال زدایی که اجازه می دهد تا شما به جای سخت افزار گم شده و یا نرم افزار، در جلد ساعت. تجهیزات شبیه سازی بر اساس زیر مجموعه مصمم خروجی، شبیه ساز ترمینال، تلفن همراه و تجهیزات شبکه، محیط زیست برای چک کردن زبان، سیستم عامل و سخت افزار با جایگزین کردن راننده قطعات گم شده، ساختگی ماژول ها، و غیره، و همچنین به عنوان ابزار برای گرفتن و اصلاح سیستم عامل درخواست محدودیت شبیه سازی CPU، RAM، ROM، و یا شبکه؛
  • .. مقایسه فایل های داده، پایگاه داده، نتایج مورد انتظار را بررسی کنید در طول و بعد از تست کامل، شامل پویا است و مقایسه دسته ای، به صورت خودکار "وحی"؛
  • پوشش های اندازه گیری برای محلی سازی نشت حافظه و سیستم برآورد رفتار کنترل آن نادرست تحت شبیه سازی برنامه های کاربردی بار تولید بار، پایگاه داده، شبکه و یا سرویس دهنده در یک سناریوی واقع بینانه از رشد برای اندازه گیری، تجزیه و تحلیل و بررسی گزارش منابع سیستم.
  • امنیت؛
  • تست عملکرد، بار و تجزیه و تحلیل دینامیکی؛
  • ابزار های دیگر، در جلد ساعت. برای بررسی املایی و نحو، امنیت شبکه، در دسترس بودن تمام صفحات وب سایت و دیگر.

چشم انداز

با روند در حال تغییر در صنعت نرم افزار، روند اشکال زدایی نیز به عنوان تغییر دهید. روش های جدید تست نرم افزار، مانند یک معماری سرویس-orientirovannae (SOA)، فن آوری های بی سیم، تلفن همراه، خدمات و غیره. E. وجود دارد، آیا باز کرد تا راه های جدید از نرم افزار تست. برخی از این تغییرات که در صنعت در طول چند سال آینده انتظار می رود به شرح زیر است:

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

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

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 fa.atomiyme.com. Theme powered by WordPress.