小编asa*_*f92的帖子

NUnit 异步任务失败“方法有非空返回值,但没有预期结果”

我正在使用 NUnit 3.10 在 ReSharper 中运行单元测试。

我在进行简单的异步测试时遇到此错误:

方法具有非 void 返回值,但预计不会有结果

我的测试实际上是:

[Test]
public async Task Nothing()
{
    await Task.Delay(100);
}
Run Code Online (Sandbox Code Playgroud)

它在文档中说这实际上是运行异步测试的正确方法。

resharper nunit visual-studio nunit-3.0

7
推荐指数
1
解决办法
1985
查看次数

“目标类型对象创建”功能在 C# 7.3 中不可用。请使用9.0或更高版本的语言

我在这一行收到错误:

MessageParser<BestLimit> parser = new(() => new BestLimit());
Run Code Online (Sandbox Code Playgroud)

我收到的错误是:

“目标类型对象创建”功能在 C# 7.3 中不可用。请使用9.0或更高版本的语言

这是什么错误?我该如何修复它?

.net c# c#-9.0

7
推荐指数
1
解决办法
1万
查看次数

为什么 -count=1 在 Go 测试中忽略缓存?

我知道为了避免在 Go 测试中缓存结果,您可以在命令-count=1中使用该标志go test,但为什么呢?

这是来自文档

显式禁用测试缓存的惯用方法是使用-count=1

该标志的解释count是:

-count n
    Run each test, benchmark, and fuzz seed n times (default 1).
    If -cpu is set, run n times for each GOMAXPROCS value.
    Examples are always run once. -count does not apply to
    fuzz tests matched by -fuzz.
Run Code Online (Sandbox Code Playgroud)

它没有说明任何有关缓存的信息,默认值为 1,但默认情况下不会忽略跳过缓存测试。

go go-testing

4
推荐指数
1
解决办法
2561
查看次数

如何从托管 C# 代码跟踪 CRT 调试内存泄漏输出的来源?

我正在运行一个用 C# (WPF) 编写的软件,它使用了很多本机遗留代码。当我关闭软件时,调试器继续运行,我的调试输出屏幕打印如下:

Detected memory leaks!
Dumping objects ->
{41198} normal block at 0x00000211F11C58F0, 16 bytes long.
 Data: <                > D8 CE DF B0 8D 00 00 00 00 00 00 00 00 00 00 00 
{41194} normal block at 0x00000211C66AD710, 96 bytes long.
 Data: <D:\mydir\somedir> 44 3A 5C 72 65 70 6F 5C 69 71 73 2D 74 72 75 6E 
{41193} normal block at 0x00000211F11C5210, 16 bytes long.
 Data: <                > 80 83 A1 E1 11 02 …
Run Code Online (Sandbox Code Playgroud)

memory-leaks crtdbg.h visual-c++

3
推荐指数
1
解决办法
304
查看次数