gpt4 book ai didi

c# - 如何对邮件发送功能进行单元测试

转载 作者:IT王子 更新时间:2023-10-29 04:20:46 24 4
gpt4 key购买 nike

我有一个创建报告并将其发送给用户的功能。我所做的是为电子邮件函数创建一个模拟,并验证是否调用了电子邮件类的“发送”函数。

现在我知道函数被调用了,但是如何对 Send() 函数的主体进行单元测试?我如何证明主题和正文是正确的,并且附件已附加到电子邮件中?

最佳答案

可以通过以下方式完成。

第 1 步:导航到您的 Web.Config 文件并向其中添加以下标签。

<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory pickupDirectoryLocation="E:\MailTest\"/>
</smtp>
</mailSettings>
</system.net>

确保您指定的取件位置目录必须存在。

第 2 步:现在测试您的电子邮件发送功能。我已使用 button_click 通过以下代码测试此功能。

SmtpClient smtp = new SmtpClient();
MailMessage message = new MailMessage("me@gmail.com", "me@yahoo.com","My Message Subject","This is a test message");
smtp.Send(message);

输出:它将在文件夹内创建.eml 文件,并随机生成GUID 名称,这是我们收到后可以看到的电子邮件。对我来说,它在 E:\MailTest\ 文件夹中创建了一个类似 c127d1d5-255d-4a5a-873c-409e23002eef.eml 的文件

希望这有帮助:)

关于c# - 如何对邮件发送功能进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6382262/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com