Ցանցում կան բազմաթիվ հոդվածներ այն մասին, թե ինչպես օգտագործել SpecFlow-ը, ինչպես կարգավորել TFS թեստերն իրականացնելու համար, բայց չկա մեկը, որը պարունակում է բոլոր ասպեկտները: Այս հոդվածում ես ձեզ ցույց կտամ, թե ինչպես կարող եք հեշտացնել SpecFlow սկրիպտների գործարկումն ու խմբագրումը բոլորի համար:
Կտրվածքի տակ դուք կսովորեք, թե ինչպես ստանալ.
- Թեստերի անցկացում TFS-ից
- Սցենարների ավտոմատ կապակցում TFS-ում թեստային դեպքերին
- TFS-ում թեստային դեպքերի միշտ արդիական բովանդակություն
- Փորձարկողների կողմից տարբերակների կառավարման համակարգում ուղղակիորեն սկրիպտները խմբագրելու ունակություն
նախապատմությանը
Մեր առջեւ խնդիր էր դրված ավտոմատացնել հավելվածների թեստավորումը՝ օգտագործելով BDD մոտեցումը: Քանի որ TFS-ը մեր ընկերության առաջադրանքների հետևման համակարգի հիմքն է, իմ գլխում ձևավորվել է մի պատկեր, որտեղ SpecFlow սցենարի քայլերը TFS-ում թեստային դեպքերի քայլերն են, և թեստերը գործարկվում են թեստային պլաններից: Ավելին այն մասին, թե ինչպես եմ դա իրականացրել:
Այն, ինչ մեզ անհրաժեշտ է.
- Նախագիծ SpecFlow-ի վրա թեստերով
- Azure DevOps սերվեր (aka Team Foundation Server)
- Գործիք՝ SpecFlow սկրիպտները TFS-ում թեստային դեպքերի հետ համաժամեցնելու համար
հարմարեցում
1. Ստեղծեք նախագծի ժողով՝ թեստերով
Այստեղ ամեն ինչ պարզ է, արտեֆակտների հավաքում և հրապարակում: Երրորդ առաջադրանքի մասին ավելի ուշ:
2. Ստեղծեք թողարկում՝ թեստերն իրականացնելու համար
Մեկ առաջադրանքով թողարկման ստեղծում՝ Visual Studio Test
Այս դեպքում առաջադրանքը կազմաձևված է այնպես, որ թեստերը ձեռքով գործարկվեն թեստային պլանից
3. Փորձարկման դեպքերի համաժամացում
Մենք գիտենք, որ Visual Studio-ն թույլ է տալիս կապել փորձարկման մեթոդները TFS-ում փորձարկման դեպքերի հետ և գործարկել դրանք թեստային պլաններից: Որպեսզի դա ձեռքով չանեմ, ինչպես նաև սկրիպտների բովանդակությունը համաժամացնելու համար, ես գրեցի պարզ կոնսոլային հավելված
Ինչպես օգտագործել FeatureSync-ը
Ավելացրեք անվանատարածք և տեղակայում ֆայլի վերնագրին.
#language:en
@Namespace:Application.Autotests
Feature: Log to application
*namespace-ը պետք է համապատասխանի .dll ֆայլի անվանմանը, որը պարունակում է փորձարկման մեթոդներ
Ստեղծեք դատարկ թեստային դեպքեր TFS-ում և դրանց id-ով պիտակներ ավելացրեք սկրիպտներին.
@2124573 @posistive
Scenario: Successful authorization
Given I on authorization page
And I enter:
| Login | Password |
| user | pass |
When I press Login button
Then Browser redirect on Home page
Գործարկել FeatureSync-ը.
FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba
Մեր դեպքում գործարկումը տեղի է ունենում նախագիծը թեստերով կառուցելուց հետո.
Համաժամացման արդյունք
Համաժամեցրեց SpecFlow սցենարի քայլերը և սահմանեց Ավտոմատացման կարգավիճակը
4. Փորձարկման պլանի կարգավորում
Մենք ստեղծում ենք թեստային պլան, դրան ավելացնում ենք մեր ավտոմատացված պատյանները, կարգավորումներում ընտրում ենք կառուցում և թողարկում
5. Գործարկել թեստերը
Ընտրեք անհրաժեշտ թեստը թեստի պլանում և գործարկեք այն:
Ամփոփում
Այս կոնֆիգուրայի առավելությունները.
- ցանկացած փորձարկող կարող է բացել ֆայլը տարբերակի կառավարման վեբ ձևով, խմբագրել այն և փոփոխություններն ուժի մեջ կմտնեն կառուցումից անմիջապես հետո:
- Դուք կարող եք ցանկացած պահի թեստեր անցկացնել անհատապես
- թափանցիկ թեստային մոդել. մենք միշտ գիտենք, թե ինչ է անում մեր կատարած թեստը:
Source: www.habr.com