繁体   English   中英

Assert.AreEqual失败。 预期:<8>。 实际:<8>当运行我的编码UI测试方法时

[英]Assert.AreEqual failed. Expected:<‭8‬>. Actual:<8> when ran my Coded UI test method

在我的codedui测试方法中,我正在将输出值与csv文件进行比较。 基本上,我使用计算器应用程序并选择程序员模式选项。 单击一个按钮(此处单击按钮8),然后将输出作为Decimal,HexaDecimal,Binary和Octal值与我的结果(即来自我的csv文件的)进行比较。 比较结果时,我使用了Assert.AreEqual()方法。 以下是我的代码段:

try
{
    Assert.AreEqual(TestContext.DataRow["Binary"].ToString().Split(' ')[1].Trim(), control.ToString().Split(' ')[1].Trim(), "Binary value matches with expected.");
}
catch (AssertFailedException err)
{
    Console.WriteLine(err.Message);
}

但是,当我运行测试方法时,我的测试通过了,并显示以下消息:

Assert.AreEqual失败。 预期:<1000>。 实际:<1000>。

我不确定Asser.AreEqual为什么失败。

通过将我的Assert.AreEqual(expected,actual,string)(其中期望值和实际值是字符串)更改为Assert.AreEqual(string,string,boolean,string)重载列表来解决此问题,该列表验证两个指定的字符串是否相等,而忽略大小写或如果它们不相等,则断言失败;如果断言失败,则显示一条消息。

我将代码更改如下:

try
{
    Assert.AreEqual(TestContext.DataRow["Binary"].ToString().Split(' ')[1].Trim(), control.ToString().Split(' ')[1].Trim(),true, "Actual Binary value does not match with expected.");
}
catch (AssertFailedException err)
{
    Console.WriteLine(err.Message);
}

当我运行测试方法时,它可以工作。 我在下面的msdn网站上提到了进一步的说明: Assert.AreEqual方法Assert.AreEqual方法(字符串,字符串,布尔值,字符串)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM