我想測試一些涉及HttpClient工作的異步方法,用vs820表達win8並且它是測試框架。無論我如何嘗試,我總是會得到同樣的例外。單元測試異步方法:無法解析遠程主機協議
例如本次測試代碼:
[TestMethod]
public async Task Connect()
{
HttpClient client = new HttpClient();
string reply = await client.GetStringAsync("http://google.com");
Assert.AreNotEqual(0, reply.Length);
}
這應該也許可以工作的考慮是:http://www.richard-banks.org/2012/03/how-to-unit-test-async-methods-with.html
拋出
System.Net.WebException: The remote name could not be resolved: 'google.com'
相同的代碼只是正常調用時從實際的程序(不是測試用例)。 任何幫助表示讚賞。
如果您同步執行測試用例,測試用例是否可以正常工作? – svick
有沒有在.net 4.5中這樣做的方法?我只能在HttpClient類中看到異步請求方法。 –
對,'HttpClient'沒有同步方法。但是你可以嘗試像'client.GetStringAsync(url).Result'這樣的東西。 – svick