Mugav BDD: SpecFlow+TFS

Internetis on palju artikleid selle kohta, kuidas SpecFlow'd kasutada, kuidas konfigureerida TFS-i testide käivitamiseks, kuid pole ühtegi, mis sisaldaks kõiki aspekte. Selles artiklis räägin teile, kuidas saate SpecFlow skriptide käivitamise ja redigeerimise kõigile mugavaks muuta.

Lõike alt saate teada, kuidas saada:

  • Testide käivitamine TFS-ist
  • Skriptide automaatne linkimine testjuhtumitega TFS-is
  • Alati ajakohane testjuhtumite sisu TFS-is
  • Võimalus testijate poolt skripte redigeerida otse versioonikontrollisüsteemis
    Mugav BDD: SpecFlow+TFS

eelajalugu

Meie ees seisis ülesanne automatiseerida rakenduste testimine BDD-meetodi abil. Kuna meie ettevõttes on ülesannete jälgimise süsteemi aluseks TFS, siis tekkis mul peas pilt, kus SpecFlow skripti sammud on TFS-is testjuhtumite sammud ning testid käivitatakse testiplaanidest. Allpool kirjeldan, kuidas ma seda rakendasin.

Mida me vajame:

  1. Projekt SpecFlow testidega
  2. Azure DevOps Server (teise nimega Team Foundationi server)
  3. Tööriist SpecFlow skriptide sünkroonimiseks TFS-i testjuhtumitega

reguleerimine

1. Projekti ehituse loomine testidega

Siin on kõik lihtne, esemete kokkupanek ja avaldamine. Kolmandast ülesandest lähemalt hiljem.

Mugav BDD: SpecFlow+TFS

2. Väljalaske loomine testide käitamiseks

Väljalase loomine ühe ülesandega – Visual Studio test

Mugav BDD: SpecFlow+TFS

Sel juhul on ülesanne konfigureeritud katseplaanist teste käsitsi käivitama

Mugav BDD: SpecFlow+TFS

3. Testjuhtumite sünkroniseerimine

Teame, et Visual Studio võimaldab teil linkida testmeetodid TFS-i testjuhtumitega ja käivitada neid testiplaanidest. Selleks, et seda käsitsi mitte teha ja ka skriptide sisu sünkroonida, kirjutasin lihtsa konsoolirakenduse Funktsiooni Sync. Põhimõte on lihtne – analüüsime funktsioonifaili ja värskendame testjuhtumeid TFS API abil.

Kuidas funktsiooni FeatureSync kasutada

Lisage funktsioonifaili päisele nimeruum ja lokaat:

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

*nimeruum peab ühtima testimeetodeid sisaldava .dll-faili nimega

Loome TFS-is tühjad testjuhtumid ja lisame skriptidele nende ID-ga sildid:

Mugav 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

Käivitage FeatureSync:

FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba

Meie puhul toimub käivitamine pärast projekti koostamist testidega:

Mugav BDD: SpecFlow+TFS

Sünkroonimise tulemus

SpecFlow skripti sammud sünkroonitakse ja automatiseerimise olek on seatud

Mugav BDD: SpecFlow+TFS

Mugav BDD: SpecFlow+TFS

4. Testiplaani koostamine

Koostame testplaani, lisame sellele oma automatiseeritud juhtumid, valime seadetes build ja release

Mugav BDD: SpecFlow+TFS

Mugav BDD: SpecFlow+TFS

5. Testide jooksmine

Valige testiplaanist vajalik test ja käivitage see.

Mugav BDD: SpecFlow+TFS

Järeldus

Selle konfiguratsiooni eelised:

  • iga testija saab fetaure faili versioonihalduse veebivormis avada, seda redigeerida ja muudatused jõustuvad kohe pärast ehitamist
  • saate katseid igal ajal individuaalselt läbi viia
  • läbipaistev testmudel – me teame alati, mida meie käivitatud test teeb.

Allikas: www.habr.com

Lisa kommentaar