Junior
Ի՞նչ է BDD (Կարողության հենված զարգացման մեթոդը)։
sobes.tech AI
Պատասխան AI-ից
BDD - դա ծրագրային ապահովման մշակման մեթոդաբանություն է, որը կենտրոնանում է թիմի բոլոր անդամների (մշակողները, թեստավորողները, բիզնես-վերլուծաբանները) պահանջների և համակարգի վարքագծի համատեղ ըմբռնման վրա: Այն զարգացել է TDD (Թեստային ուղղված զարգացում) մեթոդից:
ԲԱՌՆԵՐԻ ՀԱՄԱՀԱՅԿԱԿԱՆՈՒԹՅՈՒՆՆԵՐ:
- Համատեղ մասնակցություն: Ներգրավում է բոլոր շահագրգիռ կողմերին գործառույթների սահմանման գործընթացում:
- Բնական լեզու: Օգտագործում է հասկանալի, տեխնիկական olmayan լեզու (հաճախ Gherkin) համակարգի վարքագիծը նկարագրելու համար:
- Նմուշներ: Սահմանում է վարքագիծը կոնկրետ, իրական օգտագործման օրինակների միջոցով:
- Ավтоматացում: Վարքագծի սցենարները կարող են ավտոմատացվել և օգտագործվել որպես գործարկվող փաստաթուղթ և ռեգրեսիոն փորձարկումներ:
BDD սցենարները սովորաբար նկարագրվում են Given-When-Then ձևաչափով:
- Երբ (Given): Նկարագրում է համակարգի սկզբնական վիճակը:
- Երբ (When): Նկարագրում է գործողությունը, որը կատարում է օգտվողը կամ համակարգը:
- Երբ (Then): Նկարագրում է սպասվող վարքագիծը կամ արդյունքը:
Gherkin-ով օգտագործվող BDD սցենարի օրինակ:
# Գործառույթ: Ապրանքի որոնում
# Օգտվողը պետք է կարողանա գտնել ապրանքներ անվանմամբ:
# Սցենար: Հաջող որոնում գոյություն ունեցող ապրանքի
Ելք օգտվողը գտնվում է առցանց խանութի գլխավոր էջում
Երբ օգտվողը մուտքագրում է "Գիրք" որոնման դաշտում
Եվ սեղմում է "Որոնել" կոճակը
Տեղադրվում է ապրանքների ցանկ, որոնք պարունակում են "Գիրք" անվանումում
Եվ գտնված ապրանքների քանակը մեծ է զրոյից
Օգտագործվող գործիքներ:
- Cucumber (մեկը ամենահետաքրքիր տարբերակներից տարբեր լեզուների համար)
- SpecFlow (.NET)
- JBehave (Java)
- Behave (Python)
Առավելությունները BDD-ի:
- Բարելավված պահանջների ըմբռնում:
- Թեթևացում սխալների քանակի նվազեցմամբ՝ անորոշ կամ հակասական պահանջների պատճառով:
- Ավելի արդյունավետ փոխգործակցություն թիմերի միջև:
- Աշխատող փաստաթուղթ:
- Ավտոմատացված փորձարկումների ավելի կայուն և պահպանվող տարբերակներ։