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

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster