BDD convenientu: SpecFlow + TFS

Ci hè parechje articuli in Internet nantu à cumu utilizà SpecFlow, cumu cunfigurà TFS per eseguisce e teste, ma ùn ci hè micca unu chì cuntene tutti l'aspettu. In questu articulu, vi dicu cumu pudete fà u lanciamentu è l'edità di script SpecFlow cunvene per tutti.

Sottu u tagliu, amparate cumu ottene:

  • Esecuzione di teste da TFS
  • Ligame automaticu di script à i casi di teste in TFS
  • Contenutu sempre aghjurnatu di i casi di teste in TFS
  • Capacità di edità script direttamente in u sistema di cuntrollu di versione da i testatori
    BDD convenientu: SpecFlow + TFS

Pristoria

Avemu statu di fronte à u compitu di automatizà a prova di l'applicazioni utilizendu l'approcciu BDD. Siccomu a basa di u sistema di seguimentu di u travagliu in a nostra cumpagnia hè TFS, aghju avutu una stampa in u mo capu induve i passi di u script SpecFlow sò i passi di i casi di teste in TFS, è e teste sò lanciate da i piani di teste. Quì sottu hè cumu l'aghju implementatu.

Ciò chì avemu bisognu:

  1. Prughjettu cù teste nantu à SpecFlow
  2. Servitore Azure DevOps (aka Team Foundation Server)
  3. Un strumentu per sincronizà script SpecFlow cù casi di teste in TFS

cutter

1. Crià un prughjettu custruitu cù testi

Tuttu hè simplice quì, assemblea è publicazione di artefatti. Più nantu à u terzu compitu dopu.

BDD convenientu: SpecFlow + TFS

2. Crià una liberazione per eseguisce testi

Creazione di una liberazione cù un compitu - Test Visual Studio

BDD convenientu: SpecFlow + TFS

In questu casu, u compitu hè cunfiguratu per eseguisce testi manualmente da u pianu di prova

BDD convenientu: SpecFlow + TFS

3. Sincronizazione di i casi di teste

Sapemu chì Visual Studio vi permette di ligà i metudi di teste à i casi di teste in TFS è eseguite da i piani di prova. Per ùn fà micca questu manualmente, è ancu per sincronizà u cuntenutu di i scripts, aghju scrittu una semplice applicazione di cunsola. FeatureSync. U principiu hè simplice - analizemu u schedariu di funziunalità è aghjurnà i casi di teste usendu l'API TFS.

Cumu aduprà FeatureSync

Aghjunghjite u spaziu di nomi è locale à l'intestazione di u schedariu di funziunalità:

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

* namespace deve currisponde à u nome di u schedariu .dll chì cuntene i metudi di teste

Creemu casi di teste vacanti in TFS è aghjunghjenu tag cù u so id à i scripts:

BDD convenientu: 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

Lanciate FeatureSync:

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

In u nostru casu, u lanciamentu si faci dopu à custruisce u prughjettu cù testi:

BDD convenientu: SpecFlow + TFS

Risultu di sincronizazione

I passi di script SpecFlow sò sincronizati è u statutu di l'automatizazione hè stabilitu

BDD convenientu: SpecFlow + TFS

BDD convenientu: SpecFlow + TFS

4. Stabbilimentu di un pianu di prova

Creemu un pianu di prova, aghjunghjenu i nostri casi automatizati, selezziunate custruisce è liberate in i paràmetri

BDD convenientu: SpecFlow + TFS

BDD convenientu: SpecFlow + TFS

5. Testi di corsa

Selezziunate a prova necessaria in u pianu di prova è eseguite.

BDD convenientu: SpecFlow + TFS

cunchiusioni

I vantaghji di sta cunfigurazione:

  • Qualchese tester pò apre u schedariu fetaure in a forma web di cuntrollu di versione, edità è i cambiamenti entranu in vigore immediatamente dopu a custruzione.
  • pudete eseguisce teste individualmente in ogni mumentu
  • mudellu di prova trasparente - sapemu sempre ciò chì face a prova chì avemu lanciatu.

Source: www.habr.com

Add a comment