当使用Fitsharp格式化时,我如何使用.Net之类的Given在fitnesse中编写BDD场景
本文关键字:Given fitnesse 场景 BDD Net 格式化 Fitsharp 何使用 | 更新日期: 2023-09-27 17:59:01
我们需要在Given When Then(Gherkin)中用Fitnesse编写场景有办法做到这一点吗?像在java中一样GivWenZen
我们正在使用Fitsharp在.Net 4.0中使用fitnesse。
场景:现有贴合度表-
!define TEST_SYSTEM {fit}
!define COMMAND_PATTERN {%m -r fitnesse.fitserver.FitServer %p}
!define TEST_RUNNER {D:'API_TC_Setup'Fitnesse'Runner.exe}
!path D:'API_TC_Setup'FitnesseBDDDemo'FitnesseBDDDemo'bin'Debug'FitnesseBDDDemo.dll
|configure|processor|add operator|findmemberpattern|
!|import |
| FitnesseBDDDemo|
|Class1|
|Given User should login|
|When User place an Order|
|Then Order should present in market|
这是上面场景的代码
namespace FitnesseBDDDemo
{
public class Class1
{
[MemberPattern ( "Given User should login" )]
public void LoginUser1( )
{
Console.WriteLine ( "Executing loggin-" );
}
//When User place an Order
[MemberPattern ( "When User place an Order" )]
public void PlaceOrder( )
{
Console.WriteLine ( " Order placing-" );
}
//Then Order should present in market
[MemberPattern ( "Then Order should present in market" )]
public void OrderInMarket( )
{
Console.WriteLine ( "Order in market-" );
}
}
}
错误-
没有错误我的场景在执行时被忽略请查看此快照
FitnesseResult
您可以使用FindMemberPattern运算符请参阅:http://fitsharp.github.io/Fit/FindMemberPatternOperator.html
你的测试可能是:
(这些行可能出现在祖先页面上)
!define TEST_SYSTEM {fit}
!define COMMAND_PATTERN {%m -r fitnesse.fitserver.FitServer %p}
(下一行可能出现在设置页面上)
|configure|processor|add operator|findmemberpattern|
|Place Order|
|Given User user1 should login|
|When Placing Bid Order|
|Then Order Available In Market|
您的代码将包含:
[MemberPattern("Given User (.*) should login")]
public bool LoginUser(string user) { ... }
[MemberPattern("When Placing (.*) Order")]
public bool PlacingOrder(string side) { ... }
[MemberPattern("Then Order Available In Market")]
public bool OrderAvailableInMarket() { ... }