gpt4 book ai didi

c# - StoryQ When() 调用任务 C#

转载 作者:太空宇宙 更新时间:2023-11-03 12:21:44 26 4
gpt4 key购买 nike

我想使用 storyQ 将此单元测试转换为 BDD工作单元测试

       [Test]
public async void CreateNewProjectAndDatabase()
{
StartParametersAndAteEngineDlls();
await TheNewDatabaseAndProjectIsCreated();
TheDataBaseViewModelIsCreated();
TheMainViewModelIsCreated();
}




private async Task TheNewDatabaseAndProjectIsCreated()
{
....
}

转换为 BDD

   [Test]
public async Task CreateNewProjectAndDatabase()
{
_story.WithScenario("Create a new bla bla")
.Given(StartParametersAndAteEngineDlls)
.When(async ()=> await TheNewDatabaseAndProjectIsCreated())
.Then(TheDataBaseViewModelIsCreated)
.And(TheMainViewModelIsCreated)
.Execute();
}

代码正在编译,但是我得到一个 ArgumentException如果您在方法名称中使用 2 个下划线,请确保有 2 个参数(找到 0 个)

最佳答案

我知道我来晚了。我遇到了同样的问题,我修复了它,改变了我执行 When 方法的方式。我没有使用 await 和任务,而是在 When 方法中使用了 oldSchool 函数“Wait”。通过这种方式,我们可以获得 StoryQ 理解的私有(private) void 函数。

像这样。

private void MyWhenMethod()
{
_sut.AsyncMethodRun().Wait()
}

关于c# - StoryQ When() 调用任务 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46888815/

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