我有一个发送电子邮件的简单方法:
public void notifyEmail(string messageSubject, string messageBody)
{
MailMessage message = new MailMessage(from, to);
message.Subject = messageSubject;
message.Body = messageBody;
SmtpClient client = new SmtpClient(smtp_client);
client.Send(message);
message.Dispose();//release everything related
}
还有一个单元测试(我正在学习):
[TestMethod()]
public void notifyEmailTest()
{
eMail target = new eMail("TEST Subject","TEST Body"); // TODO: Initialize to an appropriate value
bool testSent = true;
try
{
target.notifyEmail();
}
catch (Exception)
{
testSent = false;
}
Assert.IsTrue(testSent);
}
我故意将 smtp_client 变量值设置为无效的值。
在我的项目中运行代码会导致错误。
运行测试方法会导致通过。我的测试或方法是否应该采用不同的结构以使错误无法通过测试?