使用RestSharp,我编写了以下测试,期望输出结果为以Json格式返回一些错误信息并且状态码为400。
但是以下测试在等待客户端PostAsync(request)时失败并抛出"System.Net.Http.HttpRequestException : Request failed with status code BadRequest"异常,并未达到断言语句。
使用Fiddler验证了我的请求和响应都按预期工作。
非常感谢您提供的任何解决方法。谢谢!
解决方案行之有效。谢谢Nicolas VERHELST...
但是以下测试在等待客户端PostAsync(request)时失败并抛出"System.Net.Http.HttpRequestException : Request failed with status code BadRequest"异常,并未达到断言语句。
使用Fiddler验证了我的请求和响应都按预期工作。
非常感谢您提供的任何解决方法。谢谢!
[Test]
public async Task Test1Async()
{
var jsonData = json;
var client = new RestClient(endpoint);
var request = new RestRequest();
request.AddStringBody(jsonData, ContentType.Json);
var response = await client.PostAsync(request);
Assert.AreEqual(400, response.StatusCode);
}
解决方案行之有效。谢谢Nicolas VERHELST...
[Test]
public async Task Test1Async()
{
var jsonData = json;
var client = new RestClient(endpoint);
var request = new RestRequest();
request.AddStringBody(jsonData, ContentType.Json);
var response = await client.ExecutePostAsync(request);
Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode);
}
ExecutePostAsync
?看看这里的表格:https://restsharp.dev/error-handling.html(你可以看到一些方法在错误状态下会抛出异常,而有些则不会)。 - Nicolas VERHELST