what is system testing ultimate beginner s guide
Шта је системско тестирање у софтверском тестирању?
Тестирање система подразумева тестирање система у целини. Сви модули / компоненте су интегрисани како би се верификовало да ли систем ради како се очекивало или не.
Тестирање система се врши након тестирања интеграције. Ово игра важну улогу у испоруци висококвалитетног производа.
Листа туторијала:
Процес тестирања интегрисаног хардверског и софтверског система како би се потврдило да систем испуњава своје специфициране захтеве.
Верификација : Потврдом испитивањем и одредбама објективних доказа да су испуњени наведени захтеви.
Ако апликација има три модула А, Б и Ц, тада је тестирање комбиновањем модула А & Б или модула Б & Ц или модула А & Ц познато као интеграционо тестирање. Интегрисање сва три модула и његово тестирање као комплетног система назива се тестирање система.
Шта ћете научити:
- Моје искуство
- Приступ
- Зашто системско тестирање?
- Да ли је ово тестирање беле или црне кутије?
- Како извршити системски тест?
- Предности
- Критеријуми за улазак / излазак
- План испитивања система
- Поступак за писање системских случајева
- Случајеви за системске тестове
- Врсте испитивања система
- Шта је тестирање системске интеграције?
- Разлика између испитивања система и прихватања
- Савети за извођење системског теста
- Закључак
- Препоручено читање
Моје искуство
Па ... да ли стварно мислите да ће вам требати толико времена да тестирате оно што ви зовете Тестирање система , чак и након што сте потрошили много труда на интеграционо тестирање?
Клијент коме смо се недавно обратили за пројекат није био уверен у процену коју смо дали за сваки напор тестирања.
Морао сам да упознам са примером:
Мике, желео бих да на примеру детаљно објасним наше напоре и важност тестирања система.
Пуцај, одговорио је.
Пример системског тестирања
Произвођач аутомобила не производи аутомобил као целину. Свака компонента аутомобила производи се засебно, попут седишта, управљача, огледала, прекида, кабла, мотора, оквира аутомобила, точкова итд.
Након израде сваког предмета, тестира се независно да ли ради онако како треба и то се назива Јединствено тестирање.
који је мој ВиФи безбедносни кључ
Сада, када се сваки део састави са другим делом, та састављена комбинација се проверава да ли састављање није произвело никакав нежељени ефекат на функционалност сваке компоненте и да ли обе компоненте раде заједно како се очекује, а то се назива интеграционо тестирање.
Једном када су сви делови састављени и аутомобил је спреман, заправо није спреман.
Цео аутомобил треба проверити на различите аспекте у складу са дефинисаним захтевима, на пример да ли се аутомобилом може возити глатко, прекиди, брзине и друге функције раде исправно, аутомобил не показује знаке умора након што је непрекидно пређен 2500 миља, боја аутомобила је општеприхваћен и вољен, аутомобил се може возити било којим путевима попут глатких и грубих, неуредних и равних итд. И читав тај напор тестирања назива се системско тестирање и нема никакве везе са интеграцијским тестирањем.
Пример је функционисао онако како се очекивало и клијент се уверио у напоре потребне за тестирање система.
Овде сам испричао пример како бих подстакао важност овог тестирања.
Приступ
Изводи се када се заврши интеграционо тестирање.
То је углавном тестирање типа Блацк-бок. Ово тестирање процењује рад система са становишта корисника, уз помоћ спецификационог документа. Не захтева никакво интерно знање о системима попут дизајна или структуре кода.
Садржи функционална и нефункционална подручја примене / производа.
Критеријуми фокуса:
Углавном се фокусира на следеће:
- Спољни интерфејси
- Мултипрограмске и сложене функционалности
- Сигурност
- Опоравак
- Перформансе
- Неометана интеракција оператора и корисника са системом
- Инсталабилност
- Документација
- Употребљивост
- Оптерећење / стрес
Зашто системско тестирање?
# 1) Веома је важно да се заврши пуни циклус испитивања, а СТ је фаза у којој се то ради.
#два) СТ се изводи у окружењу које је слично производном окружењу и стога заинтересоване стране могу да стекну добру представу о реакцији корисника.
# 3) Помаже у смањењу решавања проблема након увођења и позива за подршку.
# 4 ) У овој СТЛЦ фази се тестирају архитектура апликација и захтеви пословања.
Ово испитивање је веома важно и игра значајну улогу у испоруци квалитетног производа купцу.
Да видимо важност овог тестирања кроз следеће примере који укључују наше свакодневне задатке:
- Шта ако мрежна трансакција не успе након потврде?
- Шта ако ставка стављена у корпу веб локације не дозвољава наручивање?
- Шта ако у Гмаил налогу стварање нове ознаке доведе до грешке приликом клика на картицу за креирање?
- Шта ако се систем сруши када се на њему повећа оптерећење?
- Шта ако се систем сруши и не може да обнови податке по жељи?
- Шта ако инсталирање софтвера на систем траје много више времена него што се очекивало и на крају да грешку?
- Шта ако се време одзива веб странице повећа много више него што се очекивало након побољшања?
- Шта ако веб локација постане преспора да корисник не може да резервише путну карту?
Изнад је само неколико примера који показују како би тестирање система утицало ако се не уради на прави начин.
Сви горе наведени примери су само резултат или тестирања система које није извршено или није урађено како треба. Све интегрисане модуле треба тестирати како би се осигурало да производ ради у складу са захтевима.
Да ли је ово тестирање беле или црне кутије?
Тестирање система може се сматрати техником црне кутије.
Тестирање црне кутије техника не захтева интерно познавање кода, док техника беле кутије захтева унутрашње знање кода.
Током извођења системског тестирања функционалних и нефункционалних, покривени су безбедност, перформансе и многи други типови испитивања који се тестирају техником црне кутије при чему се улаз даје систему, а излаз верификује. Није потребно интерно знање система.
Техника црне кутије:
Како извршити системски тест?
У основи је то део тестирања софтвера и план теста увек треба да садржи одређени простор за ово тестирање.
Да би тестирали систем у целини, захтеви и очекивања треба да буду јасни, а испитивач мора да разуме и употребу апликације у реалном времену.
Такође, најчешће коришћени независни алати, верзије ОС-а, укуси и архитектура ОС-а могу утицати на функционалност система, перформансе, сигурност, могућност опоравка или инсталирања.
Стога, током тестирања система, јасна слика о томе како ће се апликација користити и са каквим се проблемима може суочити у реалном времену може бити од помоћи. Поред тога, документ о захтевима је важан колико и разумевање апликације.
Јасан и ажуриран документ са захтевима може спасити тестера од бројних неспоразума, претпоставки и питања.
Укратко, истакнути и оштри документ са најновијим исправкама, заједно са разумевањем употребе апликација у стварном времену, СТ може учинити плоднијим.
Ово тестирање се врши на планиран и систематичан начин.
Доље су дати различити кораци који су укључени током извођења овог тестирања:
- Први корак је стварање плана испитивања.
- Креирајте системске тест случајеве и тест скрипте.
- Припремите податке о испитивању потребне за ово испитивање.
- Извршите системске случајеве и скрипту.
- Пријави грешке. Поновно тестирање грешака које су једном исправљене.
- Регресија тестирање ради провере утицаја промене кода.
- Понављање циклуса тестирања док систем не буде спреман за примену.
- Одјавите се из тима за тестирање.
Шта тестирати?
Доле наведене тачке су обухваћене овим тестирањем:
- Енд то Енд тестирање што укључује проверу интеракције између свих компоненти и заједно са спољном периферном опремом како би се осигурало да ли систем добро функционише у било ком од сценарија и обухваћен је овим тестирањем.
- Проверава да ли улаз који се даје систему даје очекивани резултат.
- Проверава да ли су сви функционални и нефункционални захтеви тестирани и да ли раде како се очекује или не.
- На ово и истраживачко испитивање се може извршити у овом испитивању након завршетка тестирања по сценарију. Истраживачко испитивање и ад-хоц тестирање помаже у откривању грешака које се не могу наћи у скриптном тестирању, јер пружа слободу тестерима да тестирају јер се њихова жеља заснива на њиховом искуству и интуицији.
Предности
Постоји неколико предности:
- Ово тестирање укључује крајње сценарије за тестирање система.
- Ово тестирање се врши у истом окружењу као и производно окружење које помаже разумевању перспективе корисника и спречава проблеме који се могу појавити када систем почне да ради.
- Ако се ово тестирање врши на систематичан и правилан начин, онда би помогло у ублажавању постпродукцијских проблема.
- Ово тестирање тестира и архитектуру апликације и пословне захтеве.
Критеријуми за улазак / излазак
Погледајмо детаљно критеријуме за улазак / излазак за системски тест.
Критеријуми за улазак:
- Систем је требало да прође излазне критеријуме интеграционог тестирања, тј. Сви тест случајеви треба да буду извршени и не сме бити критичне или Приорити П1, П2 грешке у отвореном стању.
- План испитивања за ово тестирање треба одобрити и одјавити се.
- Тест случајеви / сценарији требају бити спремни за извршење.
- Тест скрипте би требале бити спремне за извршење.
- Сви нефункционални захтеви би требали бити доступни и требало би створити тестове за исте.
- Простор за тестирање треба да буде спреман.
Излазни критеријуми:
- Сви тестови требају бити извршени.
- Ниједна критична или приоритетна или безбедносна грешка не сме бити у отвореном стању.
- Ако су неке грешке средњег или ниског приоритета у отвореном стању, онда би то требало применити уз прихватање купца.
- Извештај о излазу треба поднети.
План испитивања система
Тест план је документ који се користи за описивање сврхе, циља и обима производа који се развија. Шта се мора тестирати, а шта не би требало тестирати, стратегије тестирања, алати који се користе, потребно окружење и сви други детаљи су документовани да би се наставило са тестирањем.
План теста помаже да се настави са тестирањем на врло систематичан и стратешки начин, што помаже у избегавању било каквих ризика или проблема током тестирања.
План испитивања система покрива следеће тачке:
- Сврха и циљ је дефинисан за овај тест.
- Опсег (Наведене су карактеристике које треба тестирати, наведене су особине које се не тестирају).
- Критеријуми за прихватање теста (Критеријуми по којима ће систем бити прихваћен, тј. Поменуте тачке у критеријумима за прихватање треба да буду у статусу пролазности).
- Критеријуми за улазак / излазак (дефинише критеријуме када тестирање система треба да започне и када треба да се сматра завршеним).
- Распоред испитивања (Процена тестирања која треба да се заврши у одређено време).
- Тест Стратеги (Укључује технике испитивања).
- Ресурси (Број ресурса потребних за тестирање, њихове улоге, доступност ресурса итд.).
- Тест окружење (оперативни систем, прегледач, платформа).
- Тест случајева (Листа тест случајева које треба извршити).
- Претпоставке (ако постоје претпоставке, треба их укључити у план испитивања).
Поступак за писање системских случајева
Системски тестови покривају све сценарије и случајеве употребе, а такође покривају функционалне, нефункционалне, корисничке интерфејсе, сигурносне случајеве. Тест примери су написани на исти начин као и за функционално испитивање.
Системски примери укључују следећа поља у предлошку:
- ИД тест случаја
- Назив Тест Суите-а
- Опис - описује тест случај који треба извршити.
- Кораци - корак по корак описује како се врши тестирање.
- Подаци о тестирању - Лажни подаци су припремљени за тестирање апликације.
- Очекивани резултат - Очекивани резултат према документу захтева дат је у овој колони.
- Стварни резултат - У овој колони наведен је резултат након извршења тест случаја.
- Пасс / Фаил - Поређење стварног и очекиваног резултата дефинише критеријуме Пасс / Фаил.
- Примедбе
Случајеви за системске тестове
Ево неколико примера сценарија теста за веб локацију е-трговине:
- Ако се страница правилно покрене са свим релевантним страницама, функцијама и логотипом
- Ако корисник може да се региструје / пријави на страницу
- Ако корисник може видети доступне производе, он може додати производе у своју корпу, може извршити плаћање и може добити потврду путем е-поште или СМС-а или позива.
- Ако главне функције попут претраживања, филтрирања, сортирања, додавања, промене, листе жеља итд. Раде како се очекује
- Ако број корисника (дефинисан као у документу са захтевима) може истовремено да приступи веб локацији
- Ако се страница правилно покрене у свим главним прегледачима и њиховим најновијим верзијама
- Ако се трансакције на локацији врше преко одређеног корисника, довољно су сигурне
- Ако се страница правилно покрене на свим подржаним платформама као што су Виндовс, Линук, Мобиле итд.
- Ако су смернице за повратак корисничког упутства / водича, политика приватности и услови коришћења странице доступни као засебан документ и корисни за сваког почетника или корисника који први пут користи.
- Ако је садржај страница правилно поравнат, добро вођен и без правописних грешака.
- Ако је примљено временско ограничење сесије и ради онако како се очекивало
- Ако је корисник задовољан након употребе странице или другим речима, кориснику није тешко да је користи.
Врсте испитивања система
СТ се назива надскуп свих врста тестирања, јер су у њему обухваћене све главне врсте тестирања. Иако се фокус на врсте испитивања може разликовати у зависности од производа, организационих процеса, временског распореда и захтева.
Свеукупно се може дефинисати као испод:
Испитивање функционалности: Да би били сигурни да функционалност производа ради у складу са дефинисаним захтевима, у оквиру могућности система.
Испитивање опорављивости: Да бисте били сигурни колико се добро систем опоравља од различитих улазних грешака и других ситуација неуспеха.
Испитивање интероперабилности: Да бисте били сигурни да ли систем може добро да функционише са независним производима или не.
Тестирање перформанси: Да би се осигурало да систем ради под различитим условима, у смислу карактеристика перформанси.
Испитивање скалабилности: Да бисте се уверили у могућности скалирања система у различитим терминима, попут скалирања корисника, географског скалирања и скалирања ресурса.
Испитивање поузданости: Да би се осигурало да систем може да ради дуже време без настанка кварова.
Регресија тестирање: Да бисмо били сигурни да стабилност система пролази кроз интеграцију различитих подсистема и задатака одржавања.
Испитивање документације: Да бисте били сигурни да су системски водич за употребу и други документи са темама помоћи тачни и употребљиви.
Испитивање сигурности: Да бисте били сигурни да систем не дозвољава неовлашћени приступ подацима и ресурсима.
Испитивање употребљивости : Да бисте били сигурни да је систем лак за употребу, учите и радите.
Више типова испитивања система
# 1) Тестирање графичког корисничког интерфејса (ГУИ):
Тестирање ГУИ-ја се врши да би се верификовало да ли ГУИ система ради како се очекивало или не. ГУИ је у основи оно што је видљиво кориснику док користи апликацију. ГУИ тестирање укључује тестирање дугмади, икона, поља за потврду, оквира са списком, оквира за текст, менија, трака са алаткама, дијалошких оквира итд.
# 2) Испитивање компатибилности:
Испитивање компатибилности се ради како би се осигурало да је развијени производ компатибилан са различитим прегледачима, хардверским платформама, оперативним системом и базама података према документу захтева.
# 3) Руковање изузецима:
Тестирање руковања изузецима врши се да би се верификовало да чак и ако се у производу догоди неочекивана грешка, требало би да покаже тачну поруку о грешци и да не дозволи да се апликација заустави. Обрађује изузетак на начин да се грешка приказује у међувремену, производ се опоравља и омогућава систему да обради нетачну трансакцију.
# 4) Тестирање запремине:
Волуменско тестирање је врста нефункционалног тестирања у коме се тестирање врши помоћу огромне количине података. На пример, обим података се повећава у бази података ради верификације перформанси система.
# 5) Тестирање напрезања:
Тестирање напрезања врши се повећањем броја корисника (истовремено) на апликацији до те мере да се апликација поквари. То се ради како би се верификовало место у којем ће се апликација покварити.
# 6) Испитивање исправности:
Испитивање разумности се изводи када је издање објављено са променом кода или функционалности или ако је исправљена било каква грешка. Проверава да извршене промене нису утицале на код и да се због тога није догодио ниједан други проблем и систем ради као раније.
Ако се догоди било који проблем, тада верзија није прихваћена за даље тестирање.
У основи се не ради темељно тестирање како би се уштедело време и трошкови, јер одбија изградњу за пронађени проблем. Испитивање исправности се врши за извршену промену или за решени проблем, а не за цео систем.
# 7) Испитивање дима:
Испитивање дима је тестирање које се изводи на изради како би се верификовало да ли се израда даље може тестирати или не. Проверава да ли је изградња стабилна за тестирање и да ли све критичне функционалности раде у реду. Испитивање дима се врши за комплетан систем, тј. Врши се испитивање од краја до краја.
# 8) Истраживачко испитивање:
Истраживачко испитивање као што и само име сугерише, реч је само о истраживању апликације. У истраживачком тестирању се не врши тестирање по сценарију. Уз тестове се пишу и примери случајева. Више се фокусира на извршење него на планирање.
Тестер има слободу да сам тестира користећи своју интуицију, искуство и интелект. Испитивач може одабрати било коју особину за прво тестирање, тј. Насумично може одабрати особину за тестирање, за разлику од осталих техника код којих се за извођење тестирања користи структурни начин.
# 9) Адхоц тестирање:
Адхоц тестирање је неформално тестирање где се не врши документација или планирање за тестирање апликације. Тестер тестира апликацију без икаквих тест случајева. Циљ тестера је да разбије апликацију. Тестер користи своје искуство, нагађање и интуицију да пронађе критичне проблеме у апликацији.
# 10) Испитивање инсталације:
Испитивање инсталације је да провери да ли се софтвер инсталира без икаквих проблема.
Ово је најважнији део тестирања, јер је инсталација софтвера прва интеракција између корисника и производа. Врста тестирања инсталације зависи од различитих фактора као што су оперативни систем, платформа, дистрибуција софтвера итд.
Тест случајеви који се могу укључити ако се инсталација врши путем Интернета:
- Лоша брзина мреже и прекинута веза.
- Заштитни зид и безбедност.
- Узимају се величина и приближно време.
- Истовремена инсталација / преузимања.
- Недовољна меморија
- Недовољно простора
- Прекинута инсталација
# 11) Испитивање одржавања:
Када производ почне да ради, проблем се може појавити у живом окружењу или ће можда бити потребно неко побољшање на производу.
Производ треба одржавати након што почне да ради, а о томе се брине тим за одржавање. Тестирање обављено за било какве проблеме или побољшања или прелазак на хардвер потпада под тестирање одржавања.
Шта је тестирање системске интеграције?
То је врста тестирања у којем се проверава способност система да одржи интегритет података и рад у координацији са другим системима у истом окружењу.
Пример тестирања системске интеграције:
Узмимо пример добро познате интернет странице за резервацију карата - хттп://ирцтц.цо.ин.
Ово је објекат за резервацију карата; објекат за онлајн куповину комуницира са ПаиПал-ом. Свеукупно то можете сматрати А * Б * Ц = Р.
Сада се на системском нивоу систем за онлајн резервацију карата, објекат за куповину путем интернета и могућност плаћања путем интернета могу тестирати систем независно, након чега следи провера интеграционих тестова за сваког од њих. А онда цео систем треба систематски тестирати.
Па, где тестирање системске интеграције долази у обзир?
Веб портал хттп://Ирцтц.цо.ин комбинација је система. Можете да изводите тестове на истом нивоу (један систем, систем система), али на сваком нивоу ћете можда желети да се усредсредите на различите ризике (проблеми интеграције, независна функционалност).
- Током тестирања објекта за онлајн резервацију карата, можете да проверите да ли сте у могућности да резервишете карте путем Интернета. Такође можете размотрити проблеме интеграције На пример, Објекат за резервацију карата интегрише бацк-енд и фронт-енд (УИ). На пример, како се понаша фронт-енд када сервер базе података споро реагује?
- Тестирање објекта за интернетску резервацију карата са објектом за онлине куповину. Можете да верификујете да је објекат за куповину на мрежи доступан корисницима пријављеним у систем за резервацију карата на мрежи. Такође можете размислити о верификацији интеграције у објекту за онлајн куповину. На пример, ако је корисник у могућности да без муке изабере и купи производ.
- Тестирање интеграције објекта за онлајн резервацију карата са ПаиПал-ом. Можете да проверите да ли је након резервације улазница новац пребачен са вашег ПаиПал рачуна на рачун за онлајн резервацију карата. Такође можете размотрити верификацију интеграције у ПаиПал. На пример, шта ако систем стави два уноса у базу података након што само једном задужи новац?
Разликаизмеђу тестирања система и тестирања интеграције система:
Главна разлика је:
- Системско тестирање брине о интегритету једног система са релевантним окружењем
- Тестирање системске интеграције брине се о интегритету више система једни с другима, у истом окружењу.
Дакле, системски тест је почетак стварног тестирања где се тестира производ у целини, а не модул / карактеристика.
Разлика између испитивања система и прихватања
Доље су дате главне разлике:
Тестирање система | Прихватање тестирање | |
---|---|---|
1 | Тестирање система је тестирање система у целини. Извршава се тестирање од краја до краја како би се потврдило да сви сценарији раде како се очекивало. | Испитивање прихватљивости врши се како би се утврдило да ли производ испуњава захтеве купца. |
два | Системско тестирање укључује функционално и нефункционално тестирање, а изводе га тестери. | Испитивање прихватљивости је функционално испитивање, а изводе га тестери као и купац. |
3 | Тестирање се врши помоћу података о тестовима које су креирали тестери. | Реални / производни подаци се користе током извођења испитивања прихватања. |
4 | Систем у целини је тестиран да би се проверила функционалност и перформансе производа. | Испитивање прихватљивости врши се да би се потврдио тај пословни захтев, односно решава сврху коју купац тражи. |
5 | Откривени кварови током испитивања могу се отклонити. | Сви недостаци пронађени током испитивања прихватања сматрају се грешкама на Производу. |
6 | Испитивање система и системске интеграције су врсте за тестирање система. | Алфа и Бета тестирање подлежу тестирању прихватљивости. |
Савети за извођење системског теста
- Копирајте сценарије у стварном времену, уместо да вршите идеално тестирање, јер ће систем користити крајњи корисник, а не обучени испитивач.
- Проверите одговор система на различите начине јер човек не воли да чека или да види погрешне податке.
- Инсталирајте и конфигуришите систем према документацији, јер ће то крајњи корисник учинити.
- Укључујући људе из различитих области попут пословних аналитичара, програмера, тестера, купци могу послати бољи систем.
- Редовно тестирање је једини начин да се уверите да најмања промена кода за исправљање грешке није у систем убацила другу критичну грешку.
Закључак
Тестирање система је веома важно и ако се не уради правилно, критични проблеми могу се суочити у живом окружењу.
Систем у целини има различите карактеристике које треба верификовати. Једноставан пример може бити било која веб локација. Ако се не тестира у целини, корисник ће можда сматрати да је та страница врло спора или ће се можда срушити када се истовремено пријави велики број корисника.
А ове карактеристике се не могу тестирати док се веб локација не тестира у целини.
Надам се да је ово упутство било врло корисно за разумевање концепта системског тестирања.
Препоручено читање
- Врсте тестирања софтвера: различите врсте испитивања са детаљима
- Алфа тестирање и бета тестирање (потпун водич)
- Шта је тестирање системске интеграције (СИТ): научите на примерима
- Функционално тестирање вс нефункционално тестирање
- Континуирани процес интеграције: Како побољшати квалитет софтвера и смањити ризик
- 10 најбољих алата за тестирање интеграције за писање интеграционих тестова
- Шта је интеграционо тестирање (Водич са примером интеграционог тестирања)
- Шта је испитивање издржљивости у тестирању софтвера (примери)