Шта је кодирање?
Обухват кода познат је као мјера којом описујемо степен изворног кода програма који треба тестирати. Укратко, покривеност кода је једна врста технике тестирања у белој кутији у којој лоцирамо оне делове програма који нису извршени у скупу тестних случајева. Они такође укључују у креирање неколико тест случајева да би се повећала покривеност као и одређивање прилично добре мере покривености кодом. Међутим, у многим случајевима овај систем прикупља информације у вези са покретаним програмом. Покривање кода, осим тога, укључује га заједно са подацима изворног кода тако да се извади извештај о покривању кода тестног скупа.
Како функционира покривање кода?
Заправо постоје различити приступи за мерење покривености кода. Ако размотримо на широки начин, постоје 3 приступа који су следећи:
- Инструментација изворног кода : Инструментација изворног кода додаће изјаве инструментације изворном коду и затим ће саставити код заједно с уобичајеним алатом за компајлирање како би нам добила склоп који је инструментиран.
- Инструментација интермедијарног кода : У инструментима средњег кода састављене датотеке добијају се инструментацијом додавањем нових бајткодова и након тога се генерише нова класа.
- Збирка информација о времену извршавања : У збирци информација о рунтимеу прикупљамо информације из окружења које је вријеме извођења јер се извршава код како би се одредиле информације о покривању.
Пошто се код извршава током теста, систем покривања кода би прикупљао информације о томе која се изјава изводи. Сада би се те информације користиле као нека од основа извештаја. Поред тога, методе покривања кода разликују се у зависности од различитих облика информација о покривању које се прикупљају. Постоје разне методе покривања кода ако надиђемо основне методе покривања исказа.
Методе покривања кодом
Постоји много метода покривања кода. Неке од њих су наведене у наставку:
- Стање покривености
- Обухват ФСМ
- Извештај о покрићу
- Обухват одлуке
- Покривање подружнице
1. Покривање извештаја
- То је техника дизајнирања беле кутије за тестирање у којој се бавимо извршавањем свих извршних израза барем једном који постоје у изворном коду. Обухват кода је потребан у прорачуну, као и за мерење многих изјава које постоје у изворном коду, као и оних које се могу извршити под условом да су захтеви задати.
- Ова метода је потребна при одређивању сценарија у зависности од структуре кода која постоји под тестом.
2. Обухват одлуке
- Ова метода је корисна у извештавању о истинитим или лажним исходима сваког израза који је логичан. Изрази у овој покривености често постају компликовани. Зато је прилично тешко добити 100% покривеност.
- То је и разлог што постоје различите методе за извештавање о овој врсти метрике. Ове читаве методе у основи се баве покривањем најзначајнијих комбинација. Обухват одлуке доноси велику осјетљивост како би се контролирао проток.
3. Покривање подружнице
- Када говоримо о овом типу, мислимо да се сваки излаз који долази из кодног модула тестира. Као пример можемо узети у обзир да ће у случају да су излази бинарни, тестирати Труе и Фалсе излазе.
- Покривање подружнице помаже нам да осигурамо да се све могуће гране које потичу од сваке одлуке услов извршавају најмање једном.
- Кроз методу покривања подружнице можемо израчунати део сегмената кода који су независни. Поред тога, ова метода нам омогућава да откријемо који делови кода немају огранке.
Постоји формула израчуна покрића подружнице:
Покривеност грана = Број извршених грана / Укупан број извршених грана
4. Покривање стања
- Обухват стања, који се назива и изразом покривања, говори нам о томе како се оцењују променљиве или под-експресије које постоје у условној изјави.
- Размотримо пример где се израз састоји од логичних операција као што су АНД, ОР или КСОР који се састоји од укупног броја могућности.
- Ова метода нам заправо даје много бољу осјетљивост за контролу протока у односу на покривеност одлуке. Ова метода нам не даје гаранцију у вези са потпуним покривањем одлука.
Постоји формула израчуна покрића подружнице:
Обухват стања = Број извршених операнди / Укупан број извршених операнди
5. Покривеност коначних државних машина
- Ова метода се сматра најсложенијом врстом покривања кода. Разлог за то је што ова метода заправо делује на понашање дизајна.
- Такође, у овој методи морамо сазнати колико држава која су временски специфична посети и пређе. Поред тога, ова метода такође потврђује колико секвенце треба размотрити у машини коначних стања.
Предности покривања кодом
Неке од предности су дате у наставку:
- Врло је корисно за процену квантитативне мере покривености кодом
- Такође нам дозвољава креирање додатних случајева који ће повећати покривеност
- Обухват кода омогућава нам и лоцирање оних делова програма које тестни случајеви не спроводе.
Недостаци кодног обухвата
Неки од недостатака дати су у наставку:
- Кад год одређена карактеристика није добро имплементирана унутар дизајна, покривеност кода је и даље извештавањем да је покривеност 100%.
- Немогуће је разумети да ли тестирате све могуће вредности ове функције путем покривања кода
- Такође не говори колико смо и колико добро покрили нашу логику.
Закључак
Покривеност кода сматра се мером у којој описујемо степен који је изворни код програма тестиран. Такође нам помаже да израчунамо ефикасност имплементације теста. Такође, покривање изјава значи извршење свих извршних изјава најмање једном.
Препоручени чланци
Ово је водич за покривеност кодом. Овде смо расправљали о методама и како ради покривање кода? заједно са предностима и недостацима. Такође можете погледати следеће чланке да бисте сазнали више -
- Како тестно покривање чини рад тако лаким?
- Различити алати за тестирање ГУИ-ја
- Врсте тестирања мутацијама
- Шта је ЦодеИгнитер?
- Алати за покривање кода | Топ 6 алата за покривање кода
- Шта је тест случај? | Савети и Трикови