如何保持断言失败数据

时间:2014-03-12 15:48:34

标签: c# mstest coded-ui-tests

我正在使用VS2013 / CodedUI,在我的[TestMethod]中我声明如下:

Assert.IsTrue(String.Equals(logo.GetModifiedBy(), "Vendor2"));

这在我的测试用例中按预期失败,但输出中的消息如下所示,是否有办法报告用于比较的数据?我搜索但没有找到太多

Message: Assert.IsTrue failed

2 个答案:

答案 0 :(得分:5)

尝试使用Assert.AreEqual

Assert.AreEqual("Vendor2", logo.GetModifiedBy());

生成的异常消息将指示预期值和实际值。

当然,您也可以使用IsTrue的{​​{3}}提供自定义消息:

var modifiedBy = logo.GetModifiedBy();
Assert.IsTrue(
    String.Equals(modifiedBy, "Vendor2"), 
    "Incorrect ModifiedBy value: '{0}'", 
    modifiedBy);

答案 1 :(得分:2)

每个Assert方法都有一个带有字符串消息的重载。以下内容将为您提供您想要的内容,但我同意@ p.s.w.g,Assert.AreEqual()可能就是您想要的。 Assert.AreEqual()也支持自定义消息。

Assert.IsTrue(String.Equals(logo.GetModifiedBy(), "Vendor2"), string.Format("{0} does not match {1}", logo.GetModifiedBy(), "Vendor2"));