如何对电子邮件发送进行单元测试?

2024-01-15

我想使用 .NET (C#) 框架或任何兼容的库测试我的电子邮件发送功能,有什么建议吗?


如果您只需要测试发送电子邮件,您可以像这样配置您的 .config 文件

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

通过这些设置,您的消息不会通过网络发送,而是作为扩展名为 .eml 的物理文件放入您在配置中配置的文件夹中。pickupDirectoryLocation属性。您可以在课程的帮助下检查它们System.IO命名空间。

<smtp>元素(网络设置) https://msdn.microsoft.com/en-us/library/ms164240(v=vs.110).aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何对电子邮件发送进行单元测试? 的相关文章

  • 处理器关联组 C#

    我使用的是 72 核的 Windows Server 2016 我看到有两组处理器 我的 net 应用程序将使用一个或其他组 我需要能够强制我的应用程序使用我选择的组 我看到下面的代码示例 但我无法使其工作 我可能传递了错误的变量 我希望应
  • 以编程方式更新 Wifi 网络

    我正在尝试创建一个程序 当某个 wifi 网络在范围内时 该程序会连接到该网络 即使已经连接到另一个 wifi 也是如此 我在用着简单Wifi https github com DigiExam simplewifi 基本上效果很好 除了在
  • 图片框、双击和单击事件

    我有一个奇怪的问题 我有一个图片框双击事件以及单击事件 问题是即使我双击该控件 也会引发单击事件 如果我禁用单击事件 则双击事件正在工作 这个问题已经在这里讨论过 https stackoverflow com questions 1830
  • 如何将 dll 中包含的组件嵌入到 exe 中,以便它可以从内存运行?

    我正在尝试制作一个必须从内存运行的程序 通过Assembly Load bin 如上所述here http www codeproject com Articles 13897 Load an EXE File and Run It fro
  • MVC BaseController 处理 CRUD 操作

    我想重构我的基本 CRUD 操作 因为它们非常重复 但我不确定最好的方法 我的所有控制器都继承 BaseController 如下所示 public class BaseController
  • 使用c#在mac上启动外部进程

    我成功地使用 System Diagnostics Process Start 在 Windows 上启动我的外部单声道可执行文件 然而在mac上却失败了 我没有收到任何错误 只是什么也没发生 我尝试按以下方式进行操作 System Dia
  • 在编译输出中添加程序集绑定 (app.config)

    如果我编译应用程序 则会在输出中自动添加程序集绑定 具体的程序集绑定不在app config在 Visual Studio 中但在创建的应用程序配置中 有什么办法可以检查为什么会自动添加程序集绑定吗 选项AutoGenerateBindin
  • 我应该使用字节还是int?

    我记得曾在某处读到 即使您只需要字节 使用 Int32 更好 就性能而言 它 据说 仅适用于您不关心存储的情况 这是有效的吗 例如 我需要一个保存一周中某一天的变量 我是吗 int dayOfWeek or byte dayOfWeek E
  • 为什么 C# 中的命名空间允许循环依赖?

    在 c 中 您可以在文件 a cs 其命名空间为 MyApp A 中拥有一条语句 using MyApp B 而文件 b cs 其名称空间为 MyApp B 已经包含该语句 using MyApp A 如果类似的依赖关系存在于不同的 dll
  • ArrayList 有什么问题?

    最近我问了一个关于 SO 的问题 其中提到了可能使用 c ArrayList 来解决问题 有人评论说使用数组列表不好 我想了解更多有关此的信息 我以前从未听说过关于数组列表的这种说法 有人可以带我了解使用数组列表可能出现的性能问题吗 C n
  • 模板类中模板方法专门化的 clang 自动返回类型错误?

    试图理解另一个问题 https stackoverflow com questions 38054055 clang fails to compile template function with auto return type insi
  • Microsoft Visual Studio 2017 中的 wxWidgets 设置

    我花了大约 20 个小时试图弄清楚如何在 Microsoft Visual Studio 2017 中设置 wxWidgets 我遵循 https wiki wxwidgets org Microsoft Visual C 2B 2B Gu
  • asio::this_coro::executor 的实现是什么

    在协程函数中 我们可以添加auto ex co await asio this coro executor 获取该协程的执行者 但当我想了解它的定义时 我发现了这个 Awaitable type that returns the execu
  • C# 中的 mshtml.HTMLDocumentClass

    在 C 中 我设法从 InternetExplorer 对象获取整个 HTMLDocumentClass 导航到某个 URL 然而 在 Visual Studio 2008 的调试模式下 该特定 URL 的 HTMLDocumentClas
  • C 中的等效 plpgsql 触发器

    我有一个 PostgreSQL 9 0 服务器 并且在某些表上使用继承 因此我必须通过如下触发器模拟外键 CREATE OR REPLACE FUNCTION othertable before update trigger RETURNS
  • 在for循环中声明和初始化变量

    可以简单写一下吗 for int i 0 代替 int i for i 0 在 C 或 C 中 并且会变量i只能在循环内部访问 它在 C 中有效 它在 C 的原始版本中是不合法的 但在 C99 中被采用为 C 的一部分 当时一些 C 功能被
  • 为什么在一行中使用这个 C++ 函数两次会导致编译错误?

    我在尝试在 Visual C 2010 中实现智能相等测试宏类型模板函数时遇到了一些麻烦 该函数与VS 中关于模板函数默认参数的错误 https stackoverflow com questions 10343177 why do i g
  • Web 和 winforms 的 .Net 身份验证

    我有一个为客户端构建的 ASP NET Web 应用程序 它使用默认的 ASP NET 表单身份验证 他们现在请求一个能够 与 Web 应用程序一起工作的桌面 WinForms 应用程序 我已经创建了 Web 服务来访问他们想要从 Web
  • 在派生类中访问基类变量

    class Program static void Main string args baseClass obj new baseClass obj intF 5 obj intS 4 child obj1 new child Consol
  • 获取线段上最接近另一个点的点[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我想找到线段AB上最接近另一个点P的点 我的想法是 Get a1 and b1由直线公式y1 a1x b1 使用 A 点

随机推荐

  • 不使用 zipWith 的斐波那契数

    我一直在尝试实现从 0 到 n 的斐波那契数列列表 而不使用惰性zipwith https hackage haskell org package base 4 14 1 0 docs Prelude html v zipWith方法 到目
  • 如何从 VIM 在新选项卡中打开终端?

    当我使用 4 个文件时 所有文件都在选项卡 VIM 中打开 我想保存更改并编译它 而不必关闭选项卡 即我想在新选项卡中与现有的 4 个选项卡一起打开一个终端 我应该如何在 VIM 中执行此操作 tab ter 打开一个终端在新标签中而不是在
  • 如何在 linq 中对子列表求和?

    我想对列表的子列表上的属性求和 示例 I have public class List1 public List
  • 修改列表删除元素而不造成混乱

    我现在正在尝试解决一个听起来像这样的任务 编写一个函数 modi la lb 它接受输入 2 列表 la 和 lb 其中的元素数量相同 该功能应该modify列出 la 和 lb 比较两个列表中具有相同索引的元素并删除较大的一个 如果元素相
  • 为什么 FLAC Streaming over HTTP 采用 Ogg 封装而不是原生封装?

    当前所有 FLAC 流媒体实现 例如 Edcast 和 Icecast 似乎都在流媒体时使用 Ogg 作为 FLAC 的容器 这是什么原因呢 有什么缺点not使用 Ogg 并改为流式传输 本机 FLAC 流 我已经做了一些通过 HTTP 传
  • 使用 EWS 的 PR_SEARCH_KEY

    我需要提取PR SEARCH KEY对于某些邮件使用EWS 我之前是使用 Outlook API 完成的 但我想在 EWS 中重新编写完整的代码 因为它非常强大 旧代码 private String GetLnksForMailBoxMai
  • 使用 C# 将 excel 转换为 JSON,并将 excel 中的第一行作为键

    我正在寻找从中读取数据excel 2010通过指定工作表名称 然后我想将数据转换为JSON格式 假设我有一个这样的 Excel 工作表 Name Age Country Waugh Timothy 10 UK Freeman Neil 20
  • JavaFX 3-D 条形图与 Java 8

    是否有使用现代 3 D API 的最新 Java 8 的 3 D 条形图示例 我想使用 Java 8 中的 3 D API JavaFX 的早期版本中有一个 3d Bar Chart 演示 但已被删除 您可以自己创建条形图 只需创建一个网格
  • 在 Silverlight 中迭代枚举?

    在 Net 中 可以使用以下方式迭代枚举 System Enum GetNames typeof MyEnum or System Enum GetValues typeof MyEnum 然而 在 Silverlight 3 中 未定义
  • Mobaxterm:如何防止 ssh 会话退出?

    我该如何阻止这个 Session stopped Press
  • SwiftUI 拖放文件

    我正在尝试向我的 SwiftUI Mac 应用程序添加 拖放 手势 功能 我想将文件从我的系统 桌面拖放到我的应用程序中 我发现在常规 Swift 中这是可能的 我现在正在尝试在 SwiftUI 中执行此操作 我找到一个onDrop Swi
  • UITableView didSelectRowAt 不称为 iOS 10,但适用于 9.3.5

    关于这个问题有很多问题 但到目前为止我找到的答案并不适用 在这种情况下 该表在 iOS 9 3 5 中正常工作 但不适用于 iOS 10 或 10 3 1 我已经排除了 没有正确设置委托 代表执行 3 个功能 didSelectRowAt
  • 我应该为所有内容编写单元测试吗?

    我想知道我是否应该为所有内容编写单元测试 有一些类很难编写单元测试 例如 我正在编写一些处理音频的程序 用于从麦克风捕获音频的类和用于向扬声器播放音频的类 我如何为这些类编写单元测试 我无法获得这些类的输出和输入 因此几乎不可能测试它们 我
  • 退出在子子程序中打开的 Word.Application

    我们宣布Word Application对象在Pro1下面的子函数 因为我们需要返回Word Document对象 应保持打开状态 我怎样才能退出父子例程中的Word应用程序 test01 我需要objWord声明于的对象Pro1函数将在没
  • Android SDK 中的虚拟摇杆

    我想在我的 Android 应用程序中制作一个虚拟操纵杆来控制遥控汽车 我怎样才能做到这一点 我可以使用 API 来执行此操作吗 我在网上查看的代码示例似乎不起作用 你可以看一下这个 很简单 有文档等 https github com co
  • 如何在 Visual Studio 2008 或 Visual Studio 2010 中设置 JavaScript 断点

    我正在尝试使用 Visual Studio 2010 调试 JavaScript 代码 但无法设置断点 我怎样才能做到这一点 我只是注意到了一些事情 每次我尝试调用一个函数 无论什么函数 在 JavaScript 中 不知何故jQuery
  • 如何通过命令行对 apk 进行签名

    请注意 我们已经在 Android SDK 的帮助下通过命令行创建了 apk 文件 现在 由于将其上传到 Google Play 商店 需要对 apk 进行签名 我们该怎么做呢 首先 您需要一个密钥库来开始该过程 您将使用此密钥库对您的 a
  • 使用 SFINAE 和 void_t 区分类型

    我遇到了一些情况 我必须编写两个函数 其中一个应该使用原始类型调用 std string 另一种应该用其他类型来调用 到目前为止 我以工作解决方案结束 template
  • 为什么 Google Appengine 连接到 CloudSQL 的速度这么慢

    当连接到 CloudSQL 后端时 我发现开发和生产之间的延迟存在巨大差异 比我预期的要大得多 我进行了一个测试 其中 我获取了 125 250 500 1000 和 2000 行 行大小约为 30 字节 我获取了每行大小 20 次 以获得
  • 如何对电子邮件发送进行单元测试?

    我想使用 NET C 框架或任何兼容的库测试我的电子邮件发送功能 有什么建议吗 如果您只需要测试发送电子邮件 您可以像这样配置您的 config 文件