Հարմարավետ BDD՝ SpecFlow+TFS

Ցանցում կան բազմաթիվ հոդվածներ այն մասին, թե ինչպես օգտագործել SpecFlow-ը, ինչպես կարգավորել TFS թեստերն իրականացնելու համար, բայց չկա մեկը, որը պարունակում է բոլոր ասպեկտները: Այս հոդվածում ես ձեզ ցույց կտամ, թե ինչպես կարող եք հեշտացնել SpecFlow սկրիպտների գործարկումն ու խմբագրումը բոլորի համար:

Կտրվածքի տակ դուք կսովորեք, թե ինչպես ստանալ.

  • Թեստերի անցկացում TFS-ից
  • Սցենարների ավտոմատ կապակցում TFS-ում թեստային դեպքերին
  • TFS-ում թեստային դեպքերի միշտ արդիական բովանդակություն
  • Փորձարկողների կողմից տարբերակների կառավարման համակարգում ուղղակիորեն սկրիպտները խմբագրելու ունակություն
    Հարմարավետ BDD՝ SpecFlow+TFS

նախապատմությանը

Մեր առջեւ խնդիր էր դրված ավտոմատացնել հավելվածների թեստավորումը՝ օգտագործելով BDD մոտեցումը: Քանի որ TFS-ը մեր ընկերության առաջադրանքների հետևման համակարգի հիմքն է, իմ գլխում ձևավորվել է մի պատկեր, որտեղ SpecFlow սցենարի քայլերը TFS-ում թեստային դեպքերի քայլերն են, և թեստերը գործարկվում են թեստային պլաններից: Ավելին այն մասին, թե ինչպես եմ դա իրականացրել:

Այն, ինչ մեզ անհրաժեշտ է.

  1. Նախագիծ SpecFlow-ի վրա թեստերով
  2. Azure DevOps սերվեր (aka Team Foundation Server)
  3. Գործիք՝ SpecFlow սկրիպտները TFS-ում թեստային դեպքերի հետ համաժամեցնելու համար

հարմարեցում

1. Ստեղծեք նախագծի ժողով՝ թեստերով

Այստեղ ամեն ինչ պարզ է, արտեֆակտների հավաքում և հրապարակում: Երրորդ առաջադրանքի մասին ավելի ուշ:

Հարմարավետ BDD՝ SpecFlow+TFS

2. Ստեղծեք թողարկում՝ թեստերն իրականացնելու համար

Մեկ առաջադրանքով թողարկման ստեղծում՝ Visual Studio Test

Հարմարավետ BDD՝ SpecFlow+TFS

Այս դեպքում առաջադրանքը կազմաձևված է այնպես, որ թեստերը ձեռքով գործարկվեն թեստային պլանից

Հարմարավետ BDD՝ SpecFlow+TFS

3. Փորձարկման դեպքերի համաժամացում

Մենք գիտենք, որ Visual Studio-ն թույլ է տալիս կապել փորձարկման մեթոդները TFS-ում փորձարկման դեպքերի հետ և գործարկել դրանք թեստային պլաններից: Որպեսզի դա ձեռքով չանեմ, ինչպես նաև սկրիպտների բովանդակությունը համաժամացնելու համար, ես գրեցի պարզ կոնսոլային հավելված Feature Sync. Սկզբունքը պարզ է. մենք վերլուծում ենք առանձնահատկությունների ֆայլը և թարմացնում փորձարկման դեպքերը՝ օգտագործելով TFS API:

Ինչպես օգտագործել FeatureSync-ը

Ավելացրեք անվանատարածք և տեղակայում ֆայլի վերնագրին.

#language:en
@Namespace:Application.Autotests
Feature: Log to application

*namespace-ը պետք է համապատասխանի .dll ֆայլի անվանմանը, որը պարունակում է փորձարկման մեթոդներ

Ստեղծեք դատարկ թեստային դեպքեր TFS-ում և դրանց id-ով պիտակներ ավելացրեք սկրիպտներին.

Հարմարավետ BDD՝ SpecFlow+TFS

@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

Մեր դեպքում գործարկումը տեղի է ունենում նախագիծը թեստերով կառուցելուց հետո.

Հարմարավետ BDD՝ SpecFlow+TFS

Համաժամացման արդյունք

Համաժամեցրեց SpecFlow սցենարի քայլերը և սահմանեց Ավտոմատացման կարգավիճակը

Հարմարավետ BDD՝ SpecFlow+TFS

Հարմարավետ BDD՝ SpecFlow+TFS

4. Փորձարկման պլանի կարգավորում

Մենք ստեղծում ենք թեստային պլան, դրան ավելացնում ենք մեր ավտոմատացված պատյանները, կարգավորումներում ընտրում ենք կառուցում և թողարկում

Հարմարավետ BDD՝ SpecFlow+TFS

Հարմարավետ BDD՝ SpecFlow+TFS

5. Գործարկել թեստերը

Ընտրեք անհրաժեշտ թեստը թեստի պլանում և գործարկեք այն:

Հարմարավետ BDD՝ SpecFlow+TFS

Ամփոփում

Այս կոնֆիգուրայի առավելությունները.

  • ցանկացած փորձարկող կարող է բացել ֆայլը տարբերակի կառավարման վեբ ձևով, խմբագրել այն և փոփոխություններն ուժի մեջ կմտնեն կառուցումից անմիջապես հետո:
  • Դուք կարող եք ցանկացած պահի թեստեր անցկացնել անհատապես
  • թափանցիկ թեստային մոդել. մենք միշտ գիտենք, թե ինչ է անում մեր կատարած թեստը:

Source: www.habr.com

Добавить комментарий