异步测试在Nunit 2.6.2中挂起(Async test hangs in Nunit 2.6.2)

编程入门 行业动态 更新时间:2024-10-26 08:24:22
异步测试在Nunit 2.6.2中挂起(Async test hangs in Nunit 2.6.2)

我有这个简单的测试方法如下。

[Test] public async Task OneSimpleTest1() { var eightBall = new EightBall(); var answer = await eightBall.WillIWin(); Assert.That(answer, Is.True); }

测试类看起来像这样

public class EightBall { public Task<bool> WillIWin() { return new Task<bool>(() => true); } }

我使用下面的命令在Nunit 2.6.2中运行测试。

nunit-console.exe EightBall.dll /framework:net-4.5

但是,测试似乎没有返回并永远挂起。 是否有一种特殊的方法可以使用Nunit 2.6.2运行异步测试。 我认为使用Nunit 2.6.2支持异步

I have this simple test method below.

[Test] public async Task OneSimpleTest1() { var eightBall = new EightBall(); var answer = await eightBall.WillIWin(); Assert.That(answer, Is.True); }

The test class looks like this

public class EightBall { public Task<bool> WillIWin() { return new Task<bool>(() => true); } }

I run the tests in Nunit 2.6.2 using the below command.

nunit-console.exe EightBall.dll /framework:net-4.5

However, the test does not seem to return and hangs forever. Is there a special way to run async tests with Nunit 2.6.2. I thought async was supported using Nunit 2.6.2

最满意答案

return new Task<bool>(() => true); 创建任务但不启动它。 更好的使用return Task.Run(()=> true); 或者return Task.FromResult<bool>(true)

您也可以将代码更改为

public Task<bool> WillIWin() { var task = new Task<bool>(() => true); task.Start(); return task; }

使它工作

return new Task<bool>(() => true); creates a task but does't start it. Better use return Task.Run(()=> true); or return Task.FromResult<bool>(true)

You can also change your code to

public Task<bool> WillIWin() { var task = new Task<bool>(() => true); task.Start(); return task; }

to make it work

更多推荐

测试,Nunit,EightBall,public,test,电脑培训,计算机培训,IT培训"/> <meta name=&quo

本文发布于:2023-08-04 22:40:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1423086.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:挂起   测试   Nunit   hangs   Async

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!