単体テストの際、csv形式の結果を確認したいので、テストに以下のコードを入れています。
MyDtoReq request = new MyDtoReq();
// ... assign some properties
string url = request.ToUrl("GET");
HttpWebRequest httpReq = (HttpWebRequest)WebRequest.Create(url);
httpReq.Accept = "text/csv";
csv = new StreamReader(httpReq.GetResponse().GetResponseStream()).ReadToEnd();
リクエストが成功した場合、それはうまくいきます。しかし、失敗するとSystem.Net.WebException、期待される詳細を持たない が発生しWebServiceException.ResponseStatusます。NUnit は次のように例外を報告します。
Test Name:  TestReq
Test FullName:  [...].TestReq
Test Source:    c:\Users\[...]\UnitTestProject1\ServiceTests.cs : line 261
Test Outcome:   Failed
Test Duration:  0:00:27.104
Result Message: System.Net.WebException : The remote server returned an error: (400) Bad Request.
Result StackTrace:  at [...].TestReq() in c:\Users\[...]\UnitTestProject1\ServiceTests.cs:line 287
csv 形式を要求するほとんどのクライアントはResponseStatus. 実際のエラーを確認するために、ブラウザで format=html を指定してリクエストを再送信しますが、時間の無駄です。