![](/img/trans.png)
[英]C# string(char[]) constructor with oversized array fails equality comparison
[英].NET Webhandler Test string equality comparison fails
我目前正在為.NET應用程序編寫測試。 為了測試Web處理程序,我將使用Web客戶端對其進行調用,並計划將其與來自我先前編寫的文件中的字符串進行比較。
我將預期的字符串存儲在文件中,因為WebHandler正在生成一個html文檔,我將其作為文本/純文本返回。
這是我當前正在使用的代碼:
private string getWebResponse(string projectName)
{
string url = "http://webhandler.ashx?parameter={0}";
WebClient client = new WebClient();
return client.DownloadString(string.Format(url, projectName));
}
[TestMethod()]
public void ProcessRequestTest1()
{
string expected = File.ReadAllText(Path.Combine(projectRootFolder, "testresults", "Test (1).txt"), Encoding.UTF8);
Assert.AreEqual(expected, getWebResponse("Test (1)"));
}
運行此測試用例時,即使返回的字符串似乎相同(如我已經使用diff-tool測試了它們),測試仍然失敗。 收集字符串時是否缺少我的問題?
問題是換行符。 我的網絡處理程序將換行符定義為\\n
。 將處理程序中的結果復制粘貼到文件中后,由於Windows使用\\r\\n
作為換行符,導致我輸入了另一個字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.