BDD i përshtatshëm: SpecFlow+TFS

Ka shumë artikuj në internet se si të përdorni SpecFlow, si të konfiguroni TFS për të ekzekutuar teste, por nuk ka asnjë që përmban të gjitha aspektet. Në këtë artikull, unë do t'ju tregoj se si mund ta bëni nisjen dhe modifikimin e skripteve SpecFlow të përshtatshme për të gjithë.

Më poshtë prerjes do të mësoni se si të merrni:

  • Ekzekutimi i testeve nga TFS
  • Lidhja automatike e skripteve me rastet e testimit në TFS
  • Përmbajtja gjithmonë e përditësuar e rasteve të testimit në TFS
  • Aftësia për të redaktuar skriptet drejtpërdrejt në sistemin e kontrollit të versionit nga testuesit
    BDD i përshtatshëm: SpecFlow+TFS

parahistorinë

Ne u përballëm me detyrën e automatizimit të testimit të aplikacioneve duke përdorur qasjen BDD. Meqenëse baza e sistemit të gjurmimit të detyrave në kompaninë tonë është TFS, unë kisha një fotografi në kokën time ku hapat e skriptit SpecFlow janë hapat e rasteve të testimit në TFS, dhe testet nisen nga planet e testimit. Më poshtë është se si e zbatova atë.

Ajo që na nevojitet:

  1. Projekt me teste në SpecFlow
  2. Serveri Azure DevOps (i njohur ndryshe si Serveri i Fondacionit të Ekipit)
  3. Një mjet për sinkronizimin e skripteve SpecFlow me rastet e provës në TFS

rregullim

1. Krijimi i një ndërtimi projekti me teste

Gjithçka është e thjeshtë këtu, montimi dhe publikimi i objekteve. Më shumë rreth detyrës së tretë më vonë.

BDD i përshtatshëm: SpecFlow+TFS

2. Krijimi i një versioni për të ekzekutuar testet

Krijimi i një versioni me një detyrë - Visual Studio Test

BDD i përshtatshëm: SpecFlow+TFS

Në këtë rast, detyra është konfiguruar për të ekzekutuar testet manualisht nga plani i testimit

BDD i përshtatshëm: SpecFlow+TFS

3. Sinkronizimi i rasteve të testimit

Ne e dimë se Visual Studio ju lejon të lidhni metodat e testimit me rastet e testimit në TFS dhe t'i ekzekutoni ato nga planet e testimit. Për të mos e bërë këtë me dorë, dhe gjithashtu për të sinkronizuar përmbajtjen e skripteve, kam shkruar një aplikacion të thjeshtë konsol FeatureSync. Parimi është i thjeshtë - ne analizojmë skedarin e veçorive dhe përditësojmë rastet e provës duke përdorur TFS API.

Si të përdorni FeatureSync

Shtoni hapësirën e emrave dhe vendndodhjen në kokën e skedarit të veçorive:

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

*namespace duhet të përputhet me emrin e skedarit .dll që përmban metodat e testimit

Ne krijojmë prova boshe në TFS dhe shtojmë etiketa me ID-në e tyre në skriptet:

BDD i përshtatshëm: 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

Nis FeatureSync:

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

Në rastin tonë, nisja ndodh pas ndërtimit të projektit me teste:

BDD i përshtatshëm: SpecFlow+TFS

Rezultati i sinkronizimit

Hapat e skriptit SpecFlow sinkronizohen dhe statusi i automatizimit është vendosur

BDD i përshtatshëm: SpecFlow+TFS

BDD i përshtatshëm: SpecFlow+TFS

4. Vendosja e një plani testimi

Ne krijojmë një plan testimi, shtojmë rastet tona të automatizuara në të, zgjedhim ndërtimin dhe lëshimin në cilësimet

BDD i përshtatshëm: SpecFlow+TFS

BDD i përshtatshëm: SpecFlow+TFS

5. Vrapimi i testeve

Zgjidhni testin e kërkuar në planin e testimit dhe ekzekutoni atë.

BDD i përshtatshëm: SpecFlow+TFS

Përfundim

Përparësitë e këtij konfigurimi:

  • çdo testues mund të hapë skedarin e veçorive në formën e internetit të kontrollit të versionit, ta modifikojë atë dhe ndryshimet do të hyjnë në fuqi menjëherë pas ndërtimit
  • ju mund të kryeni teste individualisht në çdo kohë
  • modeli transparent i testit - ne gjithmonë e dimë se çfarë bën testi që kemi nisur.

Burimi: www.habr.com

Shto një koment