嗨,我正在設定一些集成測驗(使用 Xunit),我想運行一個斷言來檢查是否回傳了正確的自定義錯誤訊息。
這是我需要獲取的資料在以下回應中,請參見圖片...詳細資訊:“用戶名必須是唯一的”不要擔心此訊息將被修改為以后更有用我只是想讓它先作業
必填資訊
這是當前的代碼...
//Act
response = await _httpClient.PostAsync("CompleteUserSetup", formContent);
//Assert
Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode) ; //Bad request should be returned
//TODO: check custom error message is correct
所以希望...
ASSERT.Equal("用戶名必須是唯一的",一些代碼可以從回應中獲取詳細資訊)
uj5u.com熱心網友回復:
好的,所以我想出了如何獲取我需要的資料。我只需要將結果轉換為一個物件,然后我就可以提取我需要的詳細資料。
var resultModel = await System.Text.Json.JsonSerializer.DeserializeAsync<Result>(response.Content.ReadAsStream(), JsonSerializerHelper.DefaultDeserialisationOptions);
var errorMessage = resultModel.detail;
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/316778.html
標籤:测试 一体化 断言 xunit dotnet-httpclient
上一篇:如何動態自定義通過的測驗訊息
