Ka shumë artikuj në internet se si të përdorni SpecFlow, si të konfiguroni TFS për të ekzekutuar teste, por nuk ka asnjë që përmban të gjitha aspektet. Në këtë artikull, unë do t'ju tregoj se si mund ta bëni nisjen dhe modifikimin e skripteve SpecFlow të përshtatshme për të gjithë.
Më poshtë prerjes do të mësoni se si të merrni:
- Ekzekutimi i testeve nga TFS
- Lidhja automatike e skripteve me rastet e testimit në TFS
- Përmbajtja gjithmonë e përditësuar e rasteve të testimit në TFS
- Aftësia për të redaktuar skriptet drejtpërdrejt në sistemin e kontrollit të versionit nga testuesit
parahistorinë
Ne u përballëm me detyrën e automatizimit të testimit të aplikacioneve duke përdorur qasjen BDD. Meqenëse baza e sistemit të gjurmimit të detyrave në kompaninë tonë është TFS, unë kisha një fotografi në kokën time ku hapat e skriptit SpecFlow janë hapat e rasteve të testimit në TFS, dhe testet nisen nga planet e testimit. Më poshtë është se si e zbatova atë.
Ajo që na nevojitet:
- Projekt me teste në SpecFlow
- Serveri Azure DevOps (i njohur ndryshe si Serveri i Fondacionit të Ekipit)
- Një mjet për sinkronizimin e skripteve SpecFlow me rastet e provës në TFS
rregullim
1. Krijimi i një ndërtimi projekti me teste
Gjithçka është e thjeshtë këtu, montimi dhe publikimi i objekteve. Më shumë rreth detyrës së tretë më vonë.
2. Krijimi i një versioni për të ekzekutuar testet
Krijimi i një versioni me një detyrë - Visual Studio Test
Në këtë rast, detyra është konfiguruar për të ekzekutuar testet manualisht nga plani i testimit
3. Sinkronizimi i rasteve të testimit
Ne e dimë se Visual Studio ju lejon të lidhni metodat e testimit me rastet e testimit në TFS dhe t'i ekzekutoni ato nga planet e testimit. Për të mos e bërë këtë me dorë, dhe gjithashtu për të sinkronizuar përmbajtjen e skripteve, kam shkruar një aplikacion të thjeshtë konsol
Si të përdorni FeatureSync
Shtoni hapësirën e emrave dhe vendndodhjen në kokën e skedarit të veçorive:
#language:en
@Namespace:Application.Autotests
Feature: Log to application
*namespace duhet të përputhet me emrin e skedarit .dll që përmban metodat e testimit
Ne krijojmë prova boshe në TFS dhe shtojmë etiketa me ID-në e tyre në skriptet:
@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
Nis FeatureSync:
FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba
Në rastin tonë, nisja ndodh pas ndërtimit të projektit me teste:
Rezultati i sinkronizimit
Hapat e skriptit SpecFlow sinkronizohen dhe statusi i automatizimit është vendosur
4. Vendosja e një plani testimi
Ne krijojmë një plan testimi, shtojmë rastet tona të automatizuara në të, zgjedhim ndërtimin dhe lëshimin në cilësimet
5. Vrapimi i testeve
Zgjidhni testin e kërkuar në planin e testimit dhe ekzekutoni atë.
Përfundim
Përparësitë e këtij konfigurimi:
- çdo testues mund të hapë skedarin e veçorive në formën e internetit të kontrollit të versionit, ta modifikojë atë dhe ndryshimet do të hyjnë në fuqi menjëherë pas ndërtimit
- ju mund të kryeni teste individualisht në çdo kohë
- modeli transparent i testit - ne gjithmonë e dimë se çfarë bën testi që kemi nisur.
Burimi: www.habr.com