BDD i përshtatshëm: SpecFlow+TFS

Në internet ka shumë artikuj mbi përdorimin e SpecFlow, si të konfigurohet TFS për të ekzekutuar teste, por nuk ka asnjë që të përfshijë të gjitha aspektet. Në këtë artikull do të flas se si mund ta bëjmë ekzekutimin dhe editimin e skenarëve SpecFlow të lehtë për të gjithë.

Nën këtë, do të mësoni si të merrni:

  • Ekzekutimi i testeve nga TFS
  • Lidhja automatike e skenarëve me raste të testimit në TFS
  • Përmbajtja e rasteve të testimit gjithmonë e përditësuar në TFS
  • Mundësia për të redaktuar skenarët direkt në sistemin e kontrollit të versioneve nga testuesit
    BDD i përshtatshëm: SpecFlow+TFS

Pas historia

Na u paraqit detyra për të automatizuar testimin e aplikacionit duke përdorur qasjen BDD. Duke qenë se sistemi kryesor i ndjekjes së detyrave në kompaninë tonë është TFS, në mendjen time u formua një pamje, ku hapat e skenarit SpecFlow — janë hapat e rasteve të testimit në TFS, dhe ekzekutimi i testeve bëhet nga planet e testeve. Më poshtë rreth asaj si e realizova këtë.

Çfarë na nevojitet:

  1. Projekt me teste në SpecFlow
  2. Azure DevOps Server (d.m.th. Team Foundation Server)
  3. Një mjet për të sinkronizuar skenarët SpecFlow me raste testimi në TFS

Konfigurimi

1. Krijimi i ndërtimit të projektit me teste

Këtu gjithçka është e thjeshtë, ndërtimi dhe publikimi i artefaktëve. Për detyrën e tretë do flas më tepër më poshtë.

BDD i përshtatshëm: SpecFlow+TFS

2. Krijimi i një lëshimi për ekzekutimin e testeve

Krijojmë një lëshim me një detyrë — Testi në Visual Studio

BDD i përshtatshëm: SpecFlow+TFS

Në këtë rast detyra është e konfiguruar për ekzekutimin manual të testeve nga plani i testeve

BDD i përshtatshëm: SpecFlow+TFS

3. Sinkronizimi i rasteve të testeve

E dimë se Visual Studio lejon lidhjen e metodave të testit me rastet e testimit në TFS dhe ekzekutimin e tyre nga planet e testeve. Për të mos e bërë këtë manualisht, gjithashtu për të sinkronizuar përmbajtjen e skenarëve, kam shkruar një aplikacion të thjeshtë në konsolë FeatureSync. Parimi është i thjeshtë — analizojmë skedarin e karakteristikave dhe me ndihmën e API TFS përditësojmë rastet e testimit.

Si të përdorim FeatureSync

Shtoni namespace dhe lokalitetin në titullin e skedarit të karakteristikave:

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

*namespace duhet të përputhet me emrin e skedarit .dll në të cilin ndodhen metodat e testeve

Krijoni raste testimi të zbrazëta në TFS dhe shtoni etiketa me ID e tyre në skenarë:

BDD i përshtatshëm: SpecFlow+TFS

@2124573 @posistive
Scenario: Autorizimi i suksesshëm
    Duke qenë se ndodhem në faqen e autorizimit
    Dhe unë fut:
        | Login | Password |
        | user  | pass     |
    Kur unë shtyp butonin Login
    Atëherë shfletuesi më drejtë për në faqen e Shtëpisë

Ekzekutojmë FeatureSync:

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

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

BDD i përshtatshëm: SpecFlow+TFS

Rezultati i sinkronizimit

Hapat SpecFlow të skenarit janë sinkronizuar dhe statusi Automation është vendosur

BDD i përshtatshëm: SpecFlow+TFS

BDD i përshtatshëm: SpecFlow+TFS

4. Konfigurimi i planit të testeve

Krijojmë një plan testi, shtojmë rastet tona të automatizuara, në konfigurime zgjedhim ndërtimin dhe lëshimin

BDD i përshtatshëm: SpecFlow+TFS

BDD i përshtatshëm: SpecFlow+TFS

5. Ekzekutimi i testeve

Zgjedhim testin e nevojshëm në planin e testeve dhe e ekzekutojmë.

BDD i përshtatshëm: SpecFlow+TFS

Përfundimi

Pikat pozitive të këtij konfigurimi:

  • Çdo testues mund të hapë skedarin e karakteristikave në formatin web të kontrollit të versioneve, ta redaktojë dhe ndryshimet do të hyjnë në fuqi menjëherë pas ndërtimit
  • Mund të ekzekutoni teste në çdo moment veçmas
  • Modeli i testit transparent — gjithmonë dimë se çfarë bën testi që kemi ekzekutuar.

Burimi: habr.com

Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS 🔥 Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS | ProHoster