我正在尝试对以下代码进行单元测试。我不知道如何获得100%的报道,而不是嘲笑我真的不喜欢,我不知道如何通过所有的If语句。 非常感谢
public static int Log(Exception ex)
{
if (config_info.EnableRayGun)
{
try
{
dynamic c = new RaygunClient { UserInfo = new Mindscape.Raygun4Net.Messages.RaygunIdentifierMessage(GetUsername()) };
c.Send(ex);
}
catch
{
//Swallow the exception. Oh the irony.
}
}
if ((config_info.GelfPublisherEnabled))
{
try
{
dynamic publisher = new GelfPublisher(config_info.GelfPublisherIP, config_info.GelfPublisherPort);
dynamic msg = new GelfMessage
{
FullMessage = ex.Message,
TimeStamp = DateTime.UtcNow
};
msg.Add("error", ex);
publisher.Publish(msg);
}
catch
{
}
}
if ((config_info.EnableApplicationInsights))
{
dynamic ai = new TelemetryClient();
ai.TrackException(ex);
}
return DoLog(ex);
}
答案 0 :(得分:1)
如果您使用MSTest
框架进行单元测试,则可以使用ExpectedExceptionAttribute
[ExpectedException(typeof(System.Exception))]
public boid MyTest()
{
//test code here
}