Тестирање на интеграција


Вовед

Тестирањето на софтвер е процес кој трае во текот на целиот животен век на производот. Во ова упатство ќе научиме за следното ниво на тестирање наречено Тестирање на интеграција. Тестирањето на интеграција, како што сугерира името, ги комбинира компонентите тестирани по единица и ги тестира заедно со нивните интерфејси. Оттука, тестирањето на интеграција бара тест компоненти како тест основа.

Можете да прочитате за Единица за тестирање

Како што знаеме, грешките можат да влезат во секое време во системот. Општо земено, секој помал проблем може да доведе до отстапување од барањата. На пример, двајцата развивачи можат поинаку да го разберат барањето. Затоа, нивниот код нема да се придржува до барањата кога се комбинираат заедно. Оттука, важно е да се потврди однесувањето на софтверските компоненти кога се заедно.

Што е тестирање на интеграција

Тестирањето на интеграција е валидација на индивидуалните компоненти на софтверот кога се комбинираат заедно. При тестирање на интеграција, тестерите ги тестираат интерфејсите помеѓу различните модули. Овие модули се комбинираат заедно за да формираат поголема компонента или системот. Оттука, станува многу клучно да се потврди нивното однесување кога работат заедно. Освен интерфејсите, тие ги тестираат и интегрираните компоненти. Тестирањето на интеграција е следното ниво на тестирање по единичното тестирање. Тестерите го прават тоа по завршувањето на фазата на единично тестирање. Техниките за тестирање на интеграција можат да бидат бела или црна кутија во зависност од барањата на проектот.

пример

Да разгледаме еден пример. Двајца развивачи Ејми и Бен работат на проект за дизајнирање загатка. Секој ќе развие една страна од сложувалката пред истекот на крајниот рок. Играчот на сложувалката ќе ги комбинира парчињата за да го формира решението на сложувалката.

Излез на модулот на Ејми:

Излез на модулот Бенс:

И оттука, проектот беше прогласен за неуспешен. Некоја идеја кој чекор можеше да обезбеди вистински исход на нивниот проект?

Чекори за тестирање на интеграција

Подолу е даден типичен процес на тестирање на интеграција за кој било проект:

Планирање

  • Анализа на барања
  • Евалуација на модулите за тестирање
  • Евалуација на интерфејсите
  • План за тестирање и развој на случаи
  • Поставување на околината
  • Тест поставување податоци
  • Одлучете за критериумите за излез

Извршување на тест

  • Извршете ги случаите со тест
  • Регистрирајте ги резултатите од тестот и одлучете за положување и неуспехот
  • Известување за грешки
  • Повторно проверете ги поправените грешки

Затворање на тестот

  • Подготовка на извештај од тест
  • Евалуација на критериумите за излез
  • Затворање на тест фаза

Техники за тестирање на интеграција

Постојат различни техники за правење тестирање на интеграција. Секој ги интегрира одделните компоненти на различен начин. Општо земено, избраната техника на тестирање зависи од големината, сложеноста и временската рамка на проектите.

 

Тестирање на интеграција

Тест за интеграција во голема експлозија

Во пристапот за тестирање на интеграцијата во Биг бенг, тестерите ги интегрираат сите модули на системот заедно одеднаш како целина и потоа го тестираат системот како резултат на крајниот резултат. Мошне често, постои конфузија помеѓу системот и тестирањето за интеграција, но целите на обете тестирања се различни. Тестирањето на интеграција е насочено кон интерфејсите и врските помеѓу модулите, додека системското тестирање ја потврдува функционалноста на целиот софтверски систем.
Пристапот за голема експлозија обично се следи за помалите системи. За поголемите системи, станува тешко да се предизвикаат неуспесите.

Добрите

  • Лесно се спроведува

Конс

  • Одложување бидејќи сите модули треба да бидат подготвени
  • Изолацијата на дефектниот модул е ​​тешка

Тестирање на интеграција од горе надолу

Во пристапот за тестирање на интеграција од горе надолу, одделните модули се комбинираат од горното ниво на хиерархијата. На моменти, модулите од долното ниво не се достапни. Оттука, никулеците се користат за симулирање на однесувањето на влезот и излезот на долните модули кои засега не се достапни. Никулци не се ништо, туку програмите што имаат тврдо кодирани вредности за да обезбедат влез и да го прифатат излезот до модулите кои се под тест за интеграција.

На пример, имаме најави се страница подготвена за веб-страницата но Почетна функционалноста на страницата сè уште ја нема. Затоа, едноставен никулец ја реализира функционалноста на почетната страница. Кога го тестираме најави се страница, атарот Почетна програмата за никулци ќе може да прифати или одбие најавувања за податоците од тестот.

Добрите

  • Тоа е инкрементален пристап, така што може да се започне со врвни модули.
  • Лесно е да се лоцира изворот на грешката

Конс

  • Никулци бараат програмско знаење и време за развој
  • Поради употребата на атарот модул, тестирањето може да биде неефикасно.

Тестирање на интеграција оддолу нагоре

Во тестирањето за интеграција оддолу нагоре, одделните модули се комбинираат од дното до горното ниво на хиерархијата. Иако, тоа е исто така и инкрементален пристап, но токму спротивен од пристапот од горе-долу. Во основа, започнува со комбинирање на модулите за пониско ниво, движејќи се нагоре кон модулите за повисоко ниво.

Обично, бидејќи модулите на повисоко ниво не се достапни за тестирање, Возачот атарот програми помагаат при нивното однесување-излез. На Возачот програмата ја имитира функционалноста на модулите од повисоко ниво за да може да се тестираат модулите од пониско ниво.

Земајќи го примерот од пристапот од горе-долу, сега Почетна страницата е подготвена за тестирање, но најави се страницата не е достапна. Затоа, ќе создадеме програма за двигател за да ги испратиме деталите за најавување на тестот до програмата за почетна страница и сега да ги тестираме врските на почетната страница.

Добрите

  • Тоа е инкрементален пристап, така што може да се започне со модули од долното ниво.
  • Лесно е да се лоцира изворот на грешката

Конс

  • Возачите бараат програмско знаење и време за развој
  • Поради употребата на атарот модул, тестирањето може да биде неефикасно.

Тестирање за хибридна интеграција

Пристапот за тестирање на хибридна интеграција комбинира методологии од горе надолу и оддолу нагоре. Исто така се нарекува Сендвич пристап. Во тестирањето за хибридна интеграција, интеграцијата на модулите започнува од средниот слој. Потоа, тестирањето се движи во насоките нагоре и надолу, и двете. Помага при побрзо тестирање на интерфејсите на модулот. На моменти, овој тип на тестирање користи никулци и возачи според барањето.

Добрите

  • Тоа е инкрементален пристап, така што може да се започне со неколку модули.
  • Лесно е да се лоцира изворот на грешката
  • Ги комбинира придобивките и од пристапот од горе надолу и од долу нагоре
  • Побрзо е
  • Погоден е за големи проекти

Конс

  • Никулци и возачи бараат програмско знаење и време за развој
  • Тоа вклучува високи трошоци за тестирање бидејќи се потребни повеќе ресурси со добро знаење.
  • Поради употребата на атарот модул, тестирањето може да биде неефикасно.

Предности на тестирањето за интеграција

  • Тоа помага да се најдат дефекти од врските и интерфејсите помеѓу модулите.
  • Тоа го зголемува нивото на доверба на тимот во производот бидејќи заедно ја потврдува групата модули.
  • Тестовите за интеграција течат побрзо од сценаријата за крај на крај.
  • Тоа резултира во поголема покриеност со кодот.
  • Започнува во раните фази кога целиот модул можеби не е подготвен. Оттука, ги избегнува грешките да влезат во системот.

Предизвици на тестирањето за интеграција

  • Стратегијата за тест за интеграција е многу клучна за тестирањето.
  • Повеќето програми и потребни податоци се потсмеваат. Оттука, развојот на тест-ременот бара време и добро знаење за програмирање.
  • На моменти, кога исмејуваните податоци се заменуваат со вистински модули, може да се откријат нови грешки.

Заклучок

Тестерите треба да го тестираат софтверот во секоја фаза од неговиот развој. Откако компонентите ќе бидат тестирани по единица, клучно е да се потврдат истите кога се комбинираат заедно, а исто така и врските меѓу нив. Оваа статија дава увид во тестирањето за интеграција и неговите различни техники.

Референци

https://en.wikipedia.org/wiki/Integration_testing