BDD e leverdisshme: SpecFlow+TFS

Në internet ka shumë artikuj për përdorimin e SpecFlow-it, si të konfigurosh TFS për të ekzekutuar teste, por nuk ka asnjë që përfshin të gjitha aspektet. Në këtë artikull do të flas se si mund të bëjmë ekzekutimin dhe redaktimin e skenarëve SpecFlow më të lehtë për të gjithë.

Pas katit do të mësoni se si të merrni:

  • Ekzekutimi i testeve nga TFS
  • Lidhja automatike e skenarĂ«ve me testet nĂ« TFS
  • PĂ«rmbajtja gjithmonĂ« aktuale e testeve nĂ« TFS
  • MundĂ«sia pĂ«r tĂ« redaktuar skenarĂ«t direkt nĂ« sistemin e kontrollit tĂ« versioneve nga testerĂ«t
    BDD e leverdisshme: SpecFlow+TFS

Historia e mëparshme

Ne hasëm në detyrën 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 formohet një pamje ku hapat e skenarëve SpecFlow janë hapat e testeve në TFS, dhe ekzekutimi i testeve bëhet nga planet e testeve. Më poshtë do të flas se si e realizova këtë.

ÇfarĂ« na nevojitet:

  1. Një projekt me teste në SpecFlow
  2. Azure DevOps Server (aka Team Foundation Server)
  3. Një mjet për të sinkronizuar skenarët SpecFlow me testet në TFS

Configuration

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

Këtu gjithçka është e thjeshtë, ndërtimi dhe publikimi i artefakteve. Më shumë për detyrën e tretë më poshtë.

BDD e leverdisshme: SpecFlow+TFS

2. Krijimi i një publikimi për ekzekutimin e testeve

KrijojmĂ« njĂ« publikim me njĂ« detyrĂ« — Testi i Visual Studio

BDD e leverdisshme: SpecFlow+TFS

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

BDD e leverdisshme: SpecFlow+TFS

3. Sinkronizimi i testeve

E dimĂ« qĂ« Visual Studio lejon lidhjen e metodave testuese me testet nĂ« TFS dhe ekzekutimin e tyre nga planet e testeve. PĂ«r tĂ« mos e bĂ«rĂ« kĂ«tĂ« manualisht, si dhe pĂ«r tĂ« sinkronizuar pĂ«rmbajtjen e skenarĂ«ve, shkrova njĂ« aplikacion tĂ« thjeshtĂ« konsolĂ« FeatureSync. Parimi Ă«shtĂ« i thjeshtĂ« — parse-fajllin e funksioneve dhe me anĂ« tĂ« API TFS pĂ«rditĂ«sojmĂ« testet.

Si të përdorim FeatureSync

Shtojmë hapësirën e emrave dhe lokalitetin në titullin e fajllit të funksioneve:

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

*hapësira e emrave duhet të përputhet me emrin e fajllit .dll në të cilin gjenden metodat e testeve

Krijojmë teste të zbrazëta në TFS dhe shtojmë etiketat me ID e tyre te skenarët:

BDD e leverdisshme: SpecFlow+TFS

@2124573 @pozitive
Scenario: Autorizimi i suksesshëm
    Duke pasur parasysh se ndodhem në faqen e autorizimit
    Dhe unë fut:
        | Login | Password |
        | përdorues | kalim     |
    Kur unë shtyp butonin Login
    Atëherë shfletuesi rredirecton në faqen kryesore

Ekzekutojmë FeatureSync:

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

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

BDD e leverdisshme: SpecFlow+TFS

Rezultati i sinkronizimit

Hapat e skenarëve SpecFlow janë sinkronizuar dhe statusi është vendosur në Automatizim

BDD e leverdisshme: SpecFlow+TFS

BDD e leverdisshme: SpecFlow+TFS

4. Konfigurimi i planit të testeve

Krijojmë një plan testi, shtojmë rastet tona automatizuar në të, zgjedhim ndërtimin dhe versionin në konfigurime.

BDD e leverdisshme: SpecFlow+TFS

BDD e leverdisshme: SpecFlow+TFS

5. Nisja e testeve

Zgjedhim testin e nevojshëm në planin e testit dhe e nisim.

BDD e leverdisshme: SpecFlow+TFS

Përfundim

Avantazhet e këtij konfigurimi:

  • çdo testues mund tĂ« hapĂ« skedarin fetaure nĂ« formĂ«n e kontrollit tĂ« versioneve, ta editojĂ« atĂ« dhe ndryshimet do tĂ« hyjnĂ« nĂ« fuqi menjĂ«herĂ« pas ndĂ«rtimit.
  • mund tĂ« nisin testet nĂ« çdo moment, veç e veç.
  • modeli i testimit tĂ« qartĂ« - gjithmonĂ« dimĂ« se çfarĂ« bĂ«n testi qĂ« ne e nisĂ«m.

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster