Π ΡΠ΅ΡΠΈ Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ°ΡΠ΅ΠΉ ΠΎ ΡΠΎΠΌ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SpecFlow, ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ TFS Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΡΠΎΠ², Π½ΠΎ Π½Π΅Ρ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π»Π° Π±Ρ Π² ΡΠ΅Π±Π΅ Π²ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ. Π ΡΡΠ°ΡΡΠ΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΡΡΠΊ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² SpecFlow ΡΠ΄ΠΎΠ±Π½ΡΠΌ Π΄Π»Ρ Π²ΡΠ΅Ρ .
ΠΠΎΠ΄ ΠΊΠ°ΡΠΎΠΌ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ:
- ΠΠ°ΠΏΡΡΠΊ ΡΠ΅ΡΡΠΎΠ² ΠΈΠ· TFS
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π»ΠΈΠ½ΠΊ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΊ ΡΠ΅ΡΡΠΊΠ΅ΠΉΡΠ°ΠΌ Π² TFS
- ΠΡΠ΅Π³Π΄Π° Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΊΠ΅ΠΉΡΠΎΠ² Π² TFS
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΠΏΡΡΠΌΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠ΅ΡΡΠΈΡΠΎΠ²ΡΠΈΠΊΠ°ΠΌΠΈ
ΠΡΠ΅Π΄ΡΡΡΠΎΡΠΈΡ
ΠΠ΅ΡΠ΅Π΄ Π½Π°ΠΌΠΈ Π²ΡΡΠ°Π»Π° Π·Π°Π΄Π°ΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ BDD ΠΏΠΎΠ΄Ρ ΠΎΠ΄. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡΠ½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠ°ΡΠΊ-ΡΡΠ΅ΠΊΠΈΠ½Π³Π° Π² Π½Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ TFS, Π² ΠΌΠΎΠ΅ΠΉ Π³ΠΎΠ»ΠΎΠ²Π΅ ΡΠ»ΠΎΠΆΠΈΠ»Π°ΡΡ ΠΊΠ°ΡΡΠΈΠ½Π°, Π³Π΄Π΅ ΡΠ°Π³ΠΈ ΡΡΠ΅Π½Π°ΡΠΈΡ SpecFlow β ΡΡΠΎ ΡΠ°Π³ΠΈ ΡΠ΅ΡΡΠΊΠ΅ΠΉΡΠΎΠ² Π² TFS, Π° Π·Π°ΠΏΡΡΠΊ ΡΠ΅ΡΡΠΎΠ² ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ· ΡΠ΅ΡΡ-ΠΏΠ»Π°Π½ΠΎΠ². ΠΠ°Π»Π΅Π΅ ΠΎ ΡΠΎΠΌ ΠΊΠ°ΠΊ Ρ ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π».
Π§ΡΠΎ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ:
- ΠΡΠΎΠ΅ΠΊΡ Ρ ΡΠ΅ΡΡΠ°ΠΌΠΈ Π½Π° SpecFlow
- Azure DevOps Server (aka Team Foundation Server)
- ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² SpecFlow Ρ ΡΠ΅ΡΡΠΊΠ΅ΠΉΡΠ°ΠΌΠΈ Π² TFS
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°
1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ ΡΠ΅ΡΡΠ°ΠΌΠΈ
ΠΠ΄Π΅ΡΡ Π²ΡΡ ΠΏΡΠΎΡΡΠΎ, ΡΠ±ΠΎΡΠΊΠ° ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΎΠ². Π ΡΡΠ΅ΡΡΠ΅ΠΌ ΡΠ°ΡΠΊΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ Π΄Π°Π»ΡΡΠ΅.
2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅Π»ΠΈΠ·Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΡΠΎΠ²
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠ΅Π»ΠΈΠ· Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ°ΡΠΊΠΎΠΌ β Visual Studio Test
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°ΡΠΊ Π½Π°ΡΡΡΠΎΠ΅Π½ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΡΠΎΠ² Π²ΡΡΡΠ½ΡΡ ΠΈΠ· ΡΠ΅ΡΡ ΠΏΠ»Π°Π½Π°
3. Π‘ΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΡΠΊΠ΅ΠΉΡΠΎΠ²
ΠΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Visual Studio ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»ΠΈΠ½ΠΊΠΎΠ²Π°ΡΡ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊ ΡΠ΅ΡΡΠΊΠ΅ΠΉΡΠ°ΠΌ Π² TFS ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡ ΠΈΡ
ΠΈΠ· ΡΠ΅ΡΡ-ΠΏΠ»Π°Π½ΠΎΠ². ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π½Π΅ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π²ΡΡΡΠ½ΡΡ, Π° ΡΠ°ΠΊ ΠΆΠ΅, Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², Ρ Π½Π°ΠΏΠΈΡΠ°Π» ΠΏΡΠΎΡΡΠΎΠ΅ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ FeatureSync
ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ namespace ΠΈ Π»ΠΎΠΊΠ°Π»Ρ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ feature ΡΠ°ΠΉΠ»Π°:
#language:en
@Namespace:Application.Autotests
Feature: Log to application
*namespace Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ .dll ΡΠ°ΠΉΠ»Π° Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΡΠ΅ΡΡ-ΠΌΠ΅ΡΠΎΠ΄Ρ
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΠΏΡΡΡΡΠ΅ ΡΠ΅ΡΡΠΊΠ΅ΠΉΡΡ Π² TFS ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠ΅Π³ΠΈ Ρ ΠΈΡ 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
ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ FeatureSync:
FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba
Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ ΡΠ΅ΡΡΠ°ΠΌΠΈ:
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ
Π‘ΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ ΡΠ°Π³ΠΈ SpecFlow ΡΡΠ΅Π½Π°ΡΠΈΡ ΠΈ ΠΏΡΠΎΡΡΠ°Π²Π»Π΅Π½ ΡΡΠ°ΡΡΡ Automation
4. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΡΡ-ΠΏΠ»Π°Π½Π°
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠ΅ΡΡ-ΠΏΠ»Π°Π½, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ Π½Π°ΡΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠ΅ΠΉΡΡ, Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ±ΠΎΡΠΊΡ ΠΈ ΡΠ΅Π»ΠΈΠ·
5. ΠΠ°ΠΏΡΡΠΊ ΡΠ΅ΡΡΠΎΠ²
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΉ ΡΠ΅ΡΡ Π² ΡΠ΅ΡΡ-ΠΏΠ»Π°Π½Π΅ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ»ΡΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³Π°:
- Π»ΡΠ±ΠΎΠΉ ΡΠ΅ΡΡΠΈΡΠΎΠ²ΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΊΡΡΡΡ fetaure ΡΠ°ΠΉΠ» Π² Π²Π΅Π± ΡΠΎΡΠΌΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΡΡΡΠΏΡΡ Π² ΡΠΈΠ»Ρ ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ ΡΠ±ΠΎΡΠΊΠΈ
- ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠ΅ΡΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ
- ΠΏΡΠΎΠ·ΡΠ°ΡΠ½Π°Ρ ΡΠ΅ΡΡΠΎΠ²Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ β Π²ΡΠ΅Π³Π΄Π° Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΠ΅ΡΡ ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com