C# xUnit Assert.All()异步
我使用以下方法进行了此示例测试:C# xUnit Assert.All()异步,c#,xunit,xunit.net,xunit2,C#,Xunit,Xunit.net,Xunit2,我使用以下方法进行了此示例测试: 是否有一个好的解决方案使整个测试异步/可等待?没有内置的异步所有。您可以使用任务。所有时: [Fact] public async Task SomeTest() { var itemList = ...; var results = await Task.WhenAll(itemList.Select(async item => { var i = await Something(item); re
是否有一个好的解决方案使整个测试异步/可等待?没有内置的异步
所有
。您可以使用任务。所有时:
[Fact]
public async Task SomeTest()
{
var itemList = ...;
var results = await Task.WhenAll(itemList.Select(async item =>
{
var i = await Something(item);
return i;
}));
Assert.All(results, result => Assert.Equal(1, result));
}
将测试方法签名更改为public async Task SomeTest()
@Igor:这种更改只会使SomeTest()
表面上是可以等待的Assert.All()
的行为方式仍然相同。方法不错,但var results=wait Task。whalll(tasks)
为您提供了一个很好的结果数组。谢谢@StephenCleary。编辑。
[Fact]
public async Task SomeTest()
{
var itemList = ...;
var results = await Task.WhenAll(itemList.Select(async item =>
{
var i = await Something(item);
return i;
}));
Assert.All(results, result => Assert.Equal(1, result));
}