SpecFlow рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП TFS рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдХрдИ рд▓реЗрдЦ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдХреЛрдИ рднреА рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╕рднреА рдкрд╣рд▓реБрдУрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдФрд░ SpecFlow рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред
рдХрдЯ рдХреЗ рддрд╣рдд рдЖрдк рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:
- рдЯреАрдПрдлрдПрд╕ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдЪрд▓ рд░рд╣рд╛ рд╣реИ
- TFS рдореЗрдВ рдорд╛рдорд▓реЛрдВ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рд▓рд┐рдВрдХ
- рдЯреАрдПрдлрдПрд╕ рдореЗрдВ рд╣рдореЗрд╢рд╛ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЛрдВ рдХреА рдЕрдк-рдЯреВ-рдбреЗрдЯ рд╕рд╛рдордЧреНрд░реА
- рдкрд░реАрдХреНрд╖рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕реАрдзреЗ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛
![](https://habrastorage.org/webt/qz/sv/xi/qzsvxitxpn7rxzl282pvbrviqry.jpeg)
рдкреГрд╖реНрдарднреВрдорд┐
BDD . - TFS, , SpecFlow тАФ TFS, -. .
:
- SpecFlow
- Azure DevOps Server (aka Team Foundation Server)
- SpecFlow TFS
1.
, . .
![](https://habrastorage.org/webt/it/lw/lp/itlwlpkbwdnda0hgckji7rvljpi.jpeg)
2.
тАФ Visual Studio Test
![](https://habrastorage.org/webt/nr/8j/wn/nr8jwnhmsvcloslrw52inufzney.jpeg)
![](https://habrastorage.org/webt/fi/wd/0n/fiwd0nrffz6gcesf4h2azac5z2w.jpeg)
3.
, Visual Studio TFS -. , , , FeatureSync. тАФ feature , API TFS .
FeatureSync
namespace feature :
#language:en
@Namespace:Application.Autotests
Feature: Log to application
*namespace .dll -
TFS id :
![](https://habrastorage.org/webt/ew/xk/xf/ewxkxfkxhw9k8vomrin-qtpxsji.jpeg)
@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
:
![](https://habrastorage.org/webt/cd/mi/qu/cdmiqutagbwkkom7u9nrpnyc_ei.jpeg)
SpecFlow Automation
![](https://habrastorage.org/webt/x6/jc/sd/x6jcsdlf7hh0btb4tpchw-z4qgu.jpeg)
![](https://habrastorage.org/webt/it/vv/_0/itvv_0zofxl5h7uhtr25jdvt41w.jpeg)
4. -
рд╣рдо рдПрдХ рдкрд░реАрдХреНрд╖рдг рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЗрд╕рдореЗрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдорд╛рдорд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рд╣рдо рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдФрд░ рд░рд┐рд▓реАрдЬ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ
![](https://habrastorage.org/webt/ym/6u/tj/ym6utj0hu2omw2ku6vkkvhburzo.jpeg)
![](https://habrastorage.org/webt/-p/d-/8j/-pd-8jpje4i1jcmx0w_qoen1ra4.jpeg)
5. рдкрд░реАрдХреНрд╖рдг рдЪрд▓ рд░рд╣рд╛ рд╣реИ
рд╣рдо рдкрд░реАрдХреНрд╖рдг рдпреЛрдЬрдирд╛ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВред
![](https://habrastorage.org/webt/gp/vr/ej/gpvrejka58pq9kcub8b32vtejai.jpeg)
рдирд┐рд╖реНрдХрд░реНрд╖
рдЗрд╕ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд╛рдн:
- рдХреЛрдИ рднреА рдкрд░реАрдХреНрд╖рдХ рд╡реЗрдм рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдлрд╝реЙрд░реНрдо рдореЗрдВ рдлрд╝реЗрдЪрд░ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрди рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдкреНрд░рднрд╛рд╡реА рд╣реЛрдВрдЧреЗ
- рдЖрдк рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рд╕рдордп рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ
- рдкрд╛рд░рджрд░реНрд╢реА рдкрд░реАрдХреНрд╖рдг рдореЙрдбрд▓ - рд╣рдо рд╣рдореЗрд╢рд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╣рдордиреЗ рдХреНрдпрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИред