相关疑难解决方法(0)

如何使用NUnit(或可能使用其他框架)测试异步方法?

我有一个ASP.NET Web API应用程序,带有一个ApiController,它具有异步方法,返回Task<>对象并用async关键字标记.

public class MyApiController : ApiController
{
    public async Task<MyData> GetDataById(string id)
    {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

如何为ApiController的异步方法编写NUnit测试?如果我需要使用另一个测试框架,我也会对此开放.我对.NET单元测试很新,所以我对学习最佳实践很感兴趣.

.net nunit unit-testing asynchronous async-await

54
推荐指数
3
解决办法
4万
查看次数

有没有办法对超时错误进行单元测试?

我创建了一个程序来调用数千个URL,我想要做的是确保如果url超时我可以将超时错误追溯到url.我所拥有的是:

          string url = "http://www.google.com";
          HttpWebRequest request = (HttpWebRequest)
                                 WebRequest.Create(url);
        request.Timeout = 5000;
        request.ReadWriteTimeout = 5000;
        request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101        Firefox/14.0.1";
        //From Fiddler
        DateTime giveUp = DateTime.UtcNow.AddSeconds(5);
        if (DateTime.UtcNow > giveUp)
            throw new TimeoutException("The following url could not be reached: " + url);
Run Code Online (Sandbox Code Playgroud)

我想创建一个单元来测试超时异常是否正常工作.如果您需要更多细节,请告诉我,但这应该足够了.

c# unit-testing http

2
推荐指数
1
解决办法
5160
查看次数

标签 统计

unit-testing ×2

.net ×1

async-await ×1

asynchronous ×1

c# ×1

http ×1

nunit ×1