Ўзбекистон республикаси ахборот технологиялари ва коммуникацияларини ривожлантириш вазирлиги муҳаммад ал-хоразмий номидаги



Download 2,45 Mb.
Pdf ko'rish
bet85/196
Sana21.06.2022
Hajmi2,45 Mb.
#687454
1   ...   81   82   83   84   85   86   87   88   ...   196
Bog'liq
dasturij taminotni testlash va tekshirish

покрытие программного кода
, называемое также 
структурным 
покрытием

Во время работы каждого тестового примера выполняется некоторый участок 
программного кода системы, при выполнении всей системы тестов выполняются все участки 
программного кода, которые задействует эта система тестов. В случае, если существуют 
участки программного кода, не выполненные при выполнении системы тестов, система 
тестов потенциально неполна (т.е. не проверяет всю функциональность системы), либо 
система содержит участки защитного кода или неиспользуемый код (например, «закладки» 


104 
или задел на будущее использование системы). Таким образом, отсутствие покрытия каких-
либо участков кода является сигналом к переработке тестов или кода (а иногда – и 
требований). 
К анализу покрытия программного кода можно приступать только после полного 
покрытия требований. Полное покрытие программного кода не гарантирует того, что тесты 
проверяют все требования к системе. Одна из типичных ошибок начинающего тестировщика 
– начинать с покрытия кода, забывая про покрытие требований. 
1.14.2. Уровни покрытия 
1.14.3. По строкам программного кода (Statement Coverage) 
Для обеспечения полного покрытия программного кода на данном уровне, необходимо, 
чтобы в результате выполнения тестов каждый оператор был выполнен хотя бы один раз. 
Особенность данного уровня покрытия состоит в том, что на нем затруднен анализ 
покрытия некоторых управляющих структур. 
Например, для полного покрытия всех строк следующего участка программного кода на 
языке C достаточно одного тестового примера:
Вход: condition = true; Ожидаемый выход: *p = 123.
int* p = NULL; 
if (condition) 
p = &variable; 
*p = 123; 
Даже если в состав тестов не будет входить тестовый пример, проверяющий работу 
фрагмента при значении condition = false, код будет покрыт. Однако, в случае condition = 
false выполнение фрагмента вызовет ошибку. 
Аналогичные проблемы возникают при проверке циклов do … while – при данном 
уровне покрытия достаточно выполнение цикла только один раз, при этом метод совершенно 
нечувствителен к логическим операторам || и &&.
Другой особенностью данного метода является зависимость уровня покрытия от 
структуры программного кода. На практике часто не требуется 100% покрытия 
программного кода, вместо этого устанавливается допустимый уровень покрытия, например 
75%. Проблемы могут возникнуть при покрытии следующего фрагмента программного кода: 
if (condition) 
functionA(); 
else 
functionB(); 
Если functionA() содержит 99 операторов, а functionB() один оператор, то единственного 
тестового примера, устанавливающего condition в true, будет достаточно для достижения 
необходимого уровня покрытия. При этом аналогичный тестовый пример, устанавливающий 
значение condition в false даст слишком низкий уровень покрытия. 

Download 2,45 Mb.

Do'stlaringiz bilan baham:
1   ...   81   82   83   84   85   86   87   88   ...   196




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish