我有一个自定义异常类
public class CustomException : Exception
{
string moreInfo;
public CustomException(string message, string info) : base(message)
{
moreInfo = info;
}
public override string ToString()
{
return "Custom Exception Info:" + moreInfo;
}
}
这可以在测试中抛出,因此我收到以下消息:
有没有办法在Test Explorer中显示更多信息(不修改Message属性)
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace UnitTestProject1
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
throw new CustomException("aaa", "bla bla");
}
}
}
更新
我的所有测试都运行良好,我有正确的断言声明
如果由于某种原因虽然任何测试都被破坏了,我在测试资源管理器中看不到有意义的错误,所以我必须将每个测试包装在try / catch中并手动逐个调试它们......
由于我在抛出异常时需要所有错误信息,所以这似乎很愚蠢
答案 0 :(得分:0)
为什么你会在[TestMethod]
中抛出异常。测试异常的正确方法是:
[TestMethod]
public void TestMethod1()
{
try
{
throw new CustomException("aaa", "bla bla");
}
catch(CustomException ex)
{
//some assert condition with proper message
Assert.AreEqual(ex.Message, "some Stuff", "My message");
}
}