我很好奇.NET中测试自动化框架中的剧本模式/演员模型的实现。
我预见在测试自动化中使用此模式的好处是:
研究:
这是通过Java BDD自动化框架Serenity BDD(以前称为Thucydides)实现的
可能的.NET实现可能包括使用以下技术:
我的问题是:为了这个目的,有没有人在.NET框架中实现这个?
答案 0 :(得分:2)
您可以签出以下库:CSF.Screenplay
这是一个受Serenity启发的库,它是一个测试框架,其中包括Screenplay模式的Java实现。
在.NET中使用此库的首选集成是SpecFlow。但这是一个使用NUnit的示例,因为它更简洁,更广为人知。
[TestFixture]
[Description("Users should be able to buy groceries via the web application")]
public class UsersCanBuyGroceries
{
[Test,Screenplay]
[Description("Joe should see a thankyou message when he uses the web application to buy eggs.")]
public void JoeShouldSeeAThankyouMessageWhenHeBuysEggs(ICast cast, BrowseTheWeb browseTheWeb)
{
var joe = cast.Get("Joe")
joe.IsAbleTo(browseTheWeb);
Given(joe).WasAbleTo(SearchTheShop.ForGroceries());
When(joe).AttemptsTo(Click.On(GroceriesForSale.BuyEggsButton));
var message = Then(joe).ShouldSee(TheText.Of(GroceriesForSale.FeedbackMessage));
Assert.That(message, Is.EqualTo("Thankyou for buying eggs."));
}
}