gpt4 book ai didi

specflow - 可以使用 specflow 编写非 bdd 程序测试吗?

转载 作者:行者123 更新时间:2023-12-01 05:38:54 26 4
gpt4 key购买 nike

specflow 看起来像是我希望我的团队考虑使用的解决方案。然而,我的经理并不真正喜欢 BDD 风格的测试。由于specflow 与visual studio 的良好集成,我想知道是否可以利用specflow 框架同时允许较少bdd 风格的测试形式。

例如,而不是编写像这样的测试:

Scenario: Help->About
Given a user is logged in to "http://..." as "user/password"
And they are on the page titled "Home"
When I click on "about"
Then I should see a window titled "about"

...我想把它写成:
Scenario: Help->About
log in to "http://..." as "user/password"
click on the "About" link
assert "About" window should be visible

换句话说,我必须使用像 Given 这样的关键字吗? , Then等,或者 specflow 是否能够处理不以这些词开头的步骤?

最佳答案

Specflow 使用代码生成器中的 Given、When 和 Then 关键字来生成如下测试用例:

    [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("See the content of a message")]
public virtual void SeeTheContentOfAMessage()
{
TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Help->About", ((string[])(null)));
this.ScenarioSetup(scenarioInfo);
testRunner.Given("a user is logged in to \"http://\" as user/password");
testRunner.When("I click on About");
testRunner.Then("I should see a window titled about");
testRunner.CollectScenarioErrors();
}

将测试更改为您描述的方式的唯一方法是更改​​代码生成器。 TryParseStepKeyword() GherkinDialect 中的方法是一个好的开始

关于specflow - 可以使用 specflow 编写非 bdd 程序测试吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6967895/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com