Internetā ir daudz rakstu par to, kā lietot SpecFlow, kā konfigurēt TFS, lai palaistu testus, taču nav neviena, kas saturētu visus aspektus. Šajā rakstā es jums pastāstīšu, kā padarīt SpecFlow skriptu palaišanu un rediģēšanu ērtu ikvienam.
Zem griezuma jūs uzzināsit, kā iegūt:
- Testu izpilde no TFS
- Automātiska skriptu saistīšana ar testa gadījumiem TFS
- Vienmēr atjaunināts testa gadījumu saturs TFS
- Testētājiem iespēja rediģēt skriptus tieši versiju kontroles sistēmā
Aizvēsture
Mēs saskārāmies ar uzdevumu automatizēt lietojumprogrammu testēšanu, izmantojot BDD pieeju. Tā kā mūsu uzņēmumā uzdevumu izsekošanas sistēmas pamatā ir TFS, man galvā bija bilde, kur SpecFlow skripta soļi ir testa gadījumu soļi TFS, un testi tiek palaisti no testa plāniem. Tālāk ir norādīts, kā es to īstenoju.
Kas mums vajadzīgs:
- Projekts ar SpecFlow testiem
- Azure DevOps serveris (pazīstams arī kā Team Foundation serveris)
- Rīks SpecFlow skriptu sinhronizēšanai ar testa gadījumiem TFS
koriģēšana
1. Projekta būvējuma izveide ar testiem
Šeit viss ir vienkārši, artefaktu montāža un publicēšana. Vairāk par trešo uzdevumu vēlāk.
2. Izlaiduma izveide testu palaišanai
Izlaiduma izveide ar vienu uzdevumu - Visual Studio Test
Šajā gadījumā uzdevums ir konfigurēts, lai manuāli palaistu pārbaudes no testa plāna
3. Testpiemēru sinhronizācija
Mēs zinām, ka Visual Studio ļauj saistīt testa metodes ar testa gadījumiem TFS un palaist tos no testa plāniem. Lai to nedarītu manuāli un arī lai sinhronizētu skriptu saturu, es uzrakstīju vienkāršu konsoles lietojumprogrammu
Kā lietot funkciju FeatureSync
Pievienojiet nosaukumvietu un lokalizāciju līdzekļu faila galvenē:
#language:en
@Namespace:Application.Autotests
Feature: Log to application
*nosaukumvietai ir jāatbilst tā .dll faila nosaukumam, kurā ir ietvertas pārbaudes metodes
Mēs izveidojam tukšus testa gadījumus TFS un pievienojam skriptiem tagus ar to ID:
@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
Palaist FeatureSync:
FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba
Mūsu gadījumā palaišana notiek pēc projekta izveides ar testiem:
Sinhronizācijas rezultāts
SpecFlow skripta soļi ir sinhronizēti, un ir iestatīts automatizācijas statuss
4. Pārbaudes plāna sastādīšana
Mēs izveidojam testa plānu, pievienojam tam savas automatizētās lietas, iestatījumos atlasām uzbūvi un izlaišanu
5. Skriešanas testi
Pārbaudes plānā atlasiet vajadzīgo testu un palaidiet to.
Secinājums
Šīs konfigurācijas priekšrocības:
- jebkurš testētājs var atvērt fetaure failu versiju kontroles tīmekļa veidlapā, rediģēt to, un izmaiņas stāsies spēkā tūlīt pēc būvēšanas.
- jebkurā laikā varat veikt testus atsevišķi
- caurspīdīgs testa modelis — mēs vienmēr zinām, ko dara mūsu uzsāktais tests.
Avots: www.habr.com