what is software testing
Комплетан водич за тестирање софтвера са више од 100 упутстава за ручно тестирање са дефиницијом тестирања, врстама, методама и детаљима процеса:
Шта је тестирање софтвера?
Тестирање софтвера је поступак верификације и валидације функционалности апликације како би се утврдило да ли задовољава наведене захтеве. То је поступак проналажења недостатака у апликацији и провере где апликација функционише у складу са захтевима крајњег корисника.
Шта је ручно тестирање?
Ручно тестирање је поступак у којем се упоређује понашање развијеног дела кода (софтвер, модул, АПИ, функција итд.) Са очекиваним понашањем (захтеви).
Шта ћете научити:
Списак приручника за ручно тестирање софтвера
Ово је најдубљи низ серијала о испитивању софтвера. Пажљиво прођите кроз теме поменуте у овој серији да бисте научили основне и напредне технике тестирања.
Ова серија туторијала обогатиће ваше знање, а заузврат ће побољшати ваше вештине тестирања.
Вежбајте ручно тестирање од краја до краја бесплатну обуку на пројекту уживо:
Туториал # 1: Основе ручног тестирања софтвера
Туториал # 2: Увод у пројекат уживо
Туториал # 3: Писање сценарија теста
Туториал # 4: Напишите документ плана теста из нуле
Водич бр. 5: Писање тест случајева из СРС документа
Лекција # 6: Извршење теста
Туториал # 7: Праћење грешака и тест одјава
Туториал # 8: Курс за тестирање софтвера
Животни циклус тестирања софтвера:
Туториал # 1: СТЛЦ
Веб тестирање:
Туториал # 1: Тестирање веб апликација
Туториал # 2: Тестирање више прегледача
Управљање тест случајем:
како добити брзе књиге бесплатно
Туториал # 1: Тест случајева
Туториал # 2: Узорак предлошка тест случаја
Туториал # 3: Матрица сљедивости захтјева (РТМ)
Туториал # 4: Тест Цовераге
Водич бр. 5: Тест Дата Манагемент
Управљање тестом:
Туториал # 1: Тест Стратеги
Туториал # 2: Предложак плана испитивања
Туториал # 3: Процена теста
Туториал # 4: Алати за управљање тестовима
Водич бр. 5: Водич за ХП АЛМ
Лекција # 6: Јира
Туториал # 7: Водич за ТестЛинк
Техничка испитивања:
Туториал # 1: Користите испитивање случајева
Туториал # 2: Тестирање државне транзиције
Туториал # 3: Анализа граничне вредности
Туториал # 4: Еквиваленција партиционирања
Водич бр. 5: Методологије испитивања софтвера
Лекција # 6: Агилна методологија
Управљање недостацима:
Туториал # 1: Животни циклус буба
Туториал # 2: Извештавање о грешкама
Туториал # 3: Приоритет дефекта
Туториал # 4: Водич за Бугзилла
Функционално испитивање
Туториал # 1: Јединствено тестирање
Туториал # 2: Испитивање разумности и дима
Туториал # 3: Регресија тестирање
Туториал # 4: Тестирање система
Водич бр. 5: Прихватање тестирање
Лекција # 6: Испитивање интеграције
Туториал # 7: УАТ тестирање прихватања корисника
Нефункционално тестирање:
Туториал # 1: Нефункционално тестирање
Туториал # 2: Тестирање перформанси
Туториал # 3: Испитивање сигурности
Туториал # 4: Тестирање сигурности веб апликација
Водич бр. 5: Испитивање употребљивости
Лекција # 6: Испитивање компатибилности
Туториал # 7: Испитивање инсталације
Туториал # 8: Испитивање документације
Врсте тестирања софтвера:
Туториал # 1: Врсте испитивања
Туториал # 2 : Тестирање црне кутије
Туториал # 3: Испитивање базе података
Туториал # 4: Тестирање од краја до краја
Водич бр. 5: Истраживачко испитивање
Лекција # 6: Инкрементално тестирање
Туториал # 7: Испитивање приступачности
Туториал # 8: Негативно тестирање
Туториал # 9: Бацкенд Тестирање
Туториал # 10: Алфа тестирање
Водич бр. 11: Бета тестирање
Водич бр. 12: Алфа вс Бета тестирање
Водич бр. 13: Гама тестирање
Водич # 14: ЕРП тестирање
Туториал # 15: Статичко и динамичко испитивање
Туториал # 16: Адхоц тестирање
Водич # 17: Испитивање локализације и интернационализације
Туториал # 18: Испитивање аутоматизације
Водич бр. 19: Испитивање беле кутије
Каријера тестирања софтвера:
Туториал # 1: Избор каријере за тестирање софтвера
Туториал # 2: Како добити посао за КА тестирање - Потпуни водич
Туториал # 3: Могућности каријере за тестере
Туториал # 4: Пребацивач за тестирање софтвера који није ИТ
Водич бр. 5: Започните каријеру ручног тестирања
Лекција # 6: Лекције научене од 10 година тестирања
Туториал # 7: Опстати и напредовати на пољу тестирања
Припрема интервјуа:
Туториал # 1: Припрема за наставак квалитета
Туториал # 2: Питања за ручно тестирање интервјуа
Туториал # 3: Питања за интервју за испитивање аутоматизације
Туториал # 4: Питања за КА интервју
Водич бр. 5: Обрадите било који интервју за посао
Лекција # 6: Набавите посао за тестирање као свежији
Тестирање различитих домена:
Туториал # 1 : Тестирање банкарских апликација
Туториал # 2: Тестирање апликација за здравствену заштиту
Туториал # 3: Тестирање мрежног пролаза
Туториал # 4: Систем продајног места (ПОС)
Водич бр. 5: Тестирање веб страница е-трговине
Тестирање КА сертификата:
Туториал # 1: Водич за сертификацију тестирања софтвера
Туториал # 2: Водич за сертификацију ЦСТЕ
Туториал # 3: Водич за сертификацију ЦСКА
Туториал # 4: Водич за ИСТКБ
Водич бр. 5: ИСТКБ Адванцед
Теме напредног ручног тестирања:
Туториал # 1: Цикломатична сложеност
Туториал # 2: Испитивање миграције
Туториал # 3: Цлоуд тестирање
Туториал # 4: ЕТЛ тестирање
Водич бр. 5: Метрика тестирања софтвера
Лекција # 6: Веб сервиси
Припремите се да погледате први водич у овој серији Ручно тестирање !!!
Увод у ручно тестирање софтвера
Ручно тестирање је поступак у којем се упоређује понашање развијеног дела кода (софтвер, модул, АПИ, функција итд.) Са очекиваним понашањем (захтеви).
А како ћете знати какво је очекивано понашање?
Знаћете то пажљиво читајући или слушајући захтеве и разумевајући их у потпуности. Запамтите, разумевање захтева у потпуности је веома важно.
најбољи софтвер за видео конвертере за Виндовс
Замислите себе као крајњег корисника онога што ћете тестирати. После тога више нисте везани за документ захтева софтвера или речи у њему. Тада можете разумети основни захтев, а не само проверити понашање система према написаном или испричаном, већ и према сопственом разумевању и према стварима које нису написане или испричане.
Понекад то може бити пропуштени захтев (непотпуни захтев) или имплицитни захтев (нешто што не треба посебно помињати, али би требало да буде испуњено), па и за ово треба да тестирате.
Даље, захтев не мора нужно бити документован. Можете врло добро имати знање о функционалности софтвера или чак можете претпоставити и тестирати један по један корак. Ми то обично називамо ад-хоц тестирањем или истраживачким тестирањем.
Погледајмо детаљно:
Прво, схватимо чињеницу - Без обзира да ли упоређујете тестирање софтверске апликације или нечег другог (рецимо возила), концепт остаје исти. Приступ, алати и приоритети могу се разликовати, али основни циљ остаје ИСТИ и ЈЕДНОСТАВАН је, тј. Упоређивање стварног понашања са очекиваним понашањем.
Друго - Тестирање је попут става или размишљања који би требало да потичу изнутра. Вештине се могу научити, али постаћете успешан испитивач тек кад подразумевано имате неколико квалитета у себи. Када кажем да се вештине тестирања могу научити, мислим на усредсређено и формално образовање о процесу тестирања софтвера.
Али које су особине успешног тестера? О њима можете прочитати на доњем линку:
Прочитајте овде => Квалитете високо ефикасних тестера
Топло препоручујем да прођете кроз горњи чланак пре него што наставите са овим упутством. Помоћи ће вам да упоредите своје карактеристике са онима које се очекују у улози тестера софтвера.
За оне који немају времена да прођу кроз чланак, ево синопсиса:
„Ваша радозналост, пажња, дисциплина, логично размишљање, страст за послом и способност сецирања ствари пуно су важни да бисте били деструктивни и успешни испитивач. Упалило ми је и чврсто верујем да ће успети и вама. Ако већ имате ове особине, онда је заиста и вама то пошло за руком. “
Разговарали смо о основним предусловима за постајући испитивач софтвера. Сада да схватимо зашто ручно тестирање има и увек би имало независно постојање са или без раста аутоматизованог тестирања.
Зашто је потребно ручно тестирање?
Да ли знате шта је најбоље у томе што сте тестер, и то ручни тестер?
Чињеница је да овде не можете да зависите само од вештина. Морате имати / развити и побољшати свој мисаони процес. Ово је нешто што заправо не можете купити за неколико долара. На томе морате и сами радити.
Ти ћеш морати развити навику постављања питања и мораћете да их питате сваког минута када тестирате. У већини случајева ова питања треба да постављате себи него другима.
Надам се да сте прошли кроз чланак који сам препоручио у претходном одељку (тј. Квалитете високо ефикасних тестера). Ако је одговор да, тада бисте знали да се тестирање сматра процесом размишљања, а колико ћете бити успешни као испитивач у потпуности зависи од квалитета које поседујете као особа.
Погледајмо овај једноставан ток:
- Урадиш нешто ( вршити радње ) док га посматрате са неком намером (упоређујући са очекиваним). Сада твој посматрање вештине и дисциплина за извођење ствари овде долази до слике.
- Воила! Шта је то било? Нешто сте приметили. Приметили сте то јер сте давали савршено пажња на детаље испред тебе. Нећете то пустити јер јесте радознао . Ово није било у вашем плану да се догоди нешто неочекивано / чудно, приметићете то и истражићете даље. Али сада то радите. Можете то пустити. Али не бисте требали то пустити.
- Срећни сте, сазнали сте узрок, кораке и сценарио. Сада ћете ово исправно и конструктивно пренети развојном тиму и осталим заинтересованим странама у вашем тиму. То можете учинити помоћу неке алатке за праћење недостатака или усмено, али морате бити сигурни да јесте саопштавајући то конструктивно .
- Упс! Шта ако то учиним на тај начин? Шта ако као улаз унесем прави цели број, али са водећим празнинама? Шта ако? … Шта ако? … Шта ако? Не завршава се лако, не би требало да се заврши лако. Хоћеш замислити пуно ситуација и сценарија и заиста ћете бити у искушењу да их и ви изведете.
Дијаграм дат у наставку представља живот испитивача:
Прочитајте још једном оне четири горе поменуте тачке. Да ли сте приметили да сам га држао врло кратким, али и даље истицао најбогатији део ручног тестера? И да ли сте приметили подебљано истицање током неколико речи? То су управо најважније особине које су потребне ручном испитивачу.
Е сад, да ли заиста мислите да ови акти могу бити у потпуности замењени било чиме другим? А данас актуелни тренд - може ли се икада заменити аутоматизацијом?
У СДЛЦ код било које развојне методологије, мало ствари увек остаје константно. Као тестер потрошићете захтеве, претворити их у тест сценарије / тест случајеве. Затим ћете извршити те тестове или их директно аутоматизовати (знам да то ради неколико компанија).
Када га аутоматизујете, фокус вам је стабилан, што аутоматизује написане кораке.
Вратимо се формалном делу, тј. Ручном извршавању тест случајева.
Овде се не фокусирате само на извршавање писаних тест случајева, већ истовремено обављате пуно истраживачких испитивања. Сећаш се да си радознао? И замислићете. И нећете моћи да се одупрете, заиста ћете учинити оно што сте замислили.
Слика дата испод приказује како је поједностављено писање Тест Цасе-а:
Попуњавам образац и завршио сам са попуњавањем првог поља. Превише сам лењ да бих прешао мишем да пребацим фокус на следеће поље. Притиснуо сам тастер „таб“. Завршио сам са попуњавањем следећег и последњег поља, сада морам да кликнем на дугме Пошаљи, фокус је и даље на последњем пољу.
Упс, случајно сам притиснуо тастер „Ентер“. Да проверим шта се догодило. ИЛИ постоји дугме за слање, двоструко ћу кликнути на њега. Није задовољан. Кликнем више пута, пребрзо.
Да ли сте приметили? Постоји толико много могућих корисничких радњи, и оних намењених и ненамерних.
Нећете успети да напишете све тест случајеве који 100% покривају вашу пријаву која се тестира. Ово се мора догодити на истраживачки начин.
Наставићете са додавањем нових тест случајева током тестирања апликације. Ово ће бити тест случајеви за грешке које сте наишли за које претходно није написан тест случај. Или, док тестирате, нешто је покренуло ваш процес размишљања и добили сте још неколико тест случајева које бисте желели да додате у свој пакет случајева и извршите их.
Чак и након свега овога, нема гаранције да их нема скривене грешке . Софтвер са нула грешака је мит. Можете циљати само тако да га приближите Нули, али то се једноставно не може догодити без људског ума који непрекидно циља исто, слично, али не ограничавајући се на пример процеса који смо видели горе.
Барем од данас не постоји софтвер који ће размишљати као људски ум, посматрати као људско око, постављати питања и одговарати као човек, а затим изводити предвиђене и ненамерне радње. Чак и ако се тако нешто догоди, чији ће ум, мисли и очи опонашати? Твој или мој? Ми, људи, такође нисмо исто право. Сви смо различити. Онда?
Потреба за ручним тестирањем када је у току аутоматизација:
Испитивање аутоматизације ових дана има свој удео славе, а имаће још више у наредним годинама, али једноставно не може заменити ручно КА тестирање (прочитајте људско / истраживачко тестирање).
Сигурно сте чули раније- ‘ Не аутоматизујете тестирање, већ аутоматизацију провере ’. Ова реченица пуно говори о томе где стоји ручно КА тестирање са аутоматским тестирањем. Многа велика имена широм света писала су и говорила о овој теми, тако да нећу пуно наглашавати ово.
Аутоматизација не може заменити тестирање људи јер:
- Захтева време извођења пресуда о свему што се дешава пред вашим очима (док тестирате), ау неколико случајева и иза кулиса.
- Захтева јасно и стално посматрање.
- То захтева испитивање.
- Захтева истрагу.
- Захтева образложење.
- Захтева непланиране радње према тестирању.
Тестирање може бити замењено алатом / машином која ће бити у стању да упије детаље, обради их, заповеди радњама и изврши их попут људског ума и човека, и све то током извођења и у свим могућим контекстима. Овај алат поново мора бити попут свих могућих људи.
Дакле, укратко, испитивање на људима не може се заменити. Можда ће му неки холивудски научнофантастични филм за неколико година изгледати блиско, али у стварном животу не могу да видим да долази неколико стотина година, колико могу да замислим. Нећу то заувек отписати јер верујем у бескрајне могућности.
Одвојено, чак и ако се то заиста догоди након неколико стотина година, слика коју сигурно могу да замислим је слика застрашујућег света. Доба трансформатора. :)
= >> Препоручена литература - Најбоље компаније за ручно тестирање
Како аутоматизација допуњује ручно тестирање?
Већ сам рекао и опет кажем да се аутоматизација више не може занемарити. У свету у којем непрекидна интеграција, континуирана испорука и континуирано постављање постају обавезне ствари, континуирано тестирање не може беспослено радити. Морамо открити начине како то учинити.
Већина времена ангажовање све више радне снаге дугорочно не помаже за овај задатак. Стога испитивач (вођа теста / архитекта / менаџер) мора опрезно да одлучи шта ће аутоматизовати и шта још треба ручно да уради.
Постаје изузетно важно да се напишу врло прецизни тестови / провере како би се могли аутоматизовати без икаквих одступања од првобитних очекивања и користити док регресирамо производ као део „континуираног тестирања“.
Белешка: Реч непрекидно из израза „континуирано тестирање“ подвргава се условним и логичким позивима сличним осталим терминима које смо горе користили са истим префиксом. Континуирано у овом контексту значи све чешће и брже него јуче. Иако у значењу, врло добро може значити сваку секунду или Нано-секунду.
Без савршеног подударања хуманих тестера и аутоматизованих провера (тестови са прецизним корацима, документовани очекивани резултат и критеријуми изласка из наведеног теста), постизање континуираног тестирања је веома тешко, а то ће заузврат чинити континуирану интеграцију, континуирану испоруку и континуирано постављање теже.
Намерно сам користио термин критеријуми за излаз из горе наведеног теста. Наша одела за аутоматизацију више не могу бити слична традиционалним. Морамо бити сигурни да би, ако не успеју, брзо пропали. А да би убрзали њихов неуспех, и излазни критеријуми би требали бити аутоматизовани.
Пример:
Рецимо, постоји квар блокера у којем нисам у могућности да се пријавим на Фацебоок.
Функционалност пријаве тада мора бити ваша прва аутоматизована провера и ваш пакет за аутоматизацију не би требало да покреће следећу проверу где је пријава предуслов, попут објављивања статуса. Добро знате да ће сигурно пропасти. Зато нека брже пропадне, брже објавите резултате како би се квар могао брже решити.
Следећа ствар је опет нешто што сте сигурно већ чули - Не можете и не бисте требали покушати све аутоматизовати.
Изаберите тест случајеве који ће, ако су аутоматизовани, имати значајну корист људским тестерима и има добар повраћај улагања. У том погледу постоји опште правило које каже да треба да покушате да аутоматизујете све своје случајеве Приоритет 1 и ако је могуће онда Приоритет 2.
Аутоматизацију није лако применити и дуготрајна је, па се саветује да избегавате аутоматизацију случајева ниског приоритета барем док не завршите са високим. Одабиром шта ће се аутоматизовати и фокусирањем на то побољшава се квалитет апликације када се континуирано користи и одржава.
Закључак
Надам се да сте до сада већ разумели зашто и колико је лоше потребно ручно / људско тестирање за испоруку квалитетних производа и како то аутоматизација допуњује.
Прихватање важности КА ручног тестирања и сазнање зашто је оно посебно, први је корак ка томе да постанете одличан ручни тестер.
У нашим предстојећим водичима за ручно тестирање, покриваћемо генерички приступ ручном тестирању, како ће он коегзистирати са аутоматизацијом и многим другим важним аспектима.
Сигуран сам да ћете стећи неизмерно знање о тестирању софтвера када прођете кроз целу листу водича у овој серији.
алати за прикупљање захтева које користе пословни аналитичари
Волели бисмо да чујемо вас. Слободно изразите своје мисли / сугестије у одељку за коментаре испод.
Препоручено читање
- Најбољи алати за тестирање софтвера 2021. [Алати за аутоматизацију КА теста]
- Посао за КА помоћника за тестирање софтвера
- Алфа тестирање и бета тестирање (потпун водич)
- Функционално тестирање вс нефункционално тестирање
- Најбоље услуге КА тестирања софтвера од СофтвареТестингХелп
- Курс за тестирање софтвера: Који институт за тестирање софтвера да се придружим?
- Врсте тестирања софтвера: Различите врсте испитивања са детаљима
- Одабир тестирања софтвера за вашу каријеру