如何对转换库进行单元测试?

2024-06-05

我刚刚开始使用 C# 进行单元测试。
我已经阅读有关单元测试的内容很长时间了,并且已经开始使用 NUnit,但这是我第一次真正尝试为真实代码编写真正的测试。

但我的问题是:
我很难想出可以实际测试的东西。

我要测试的项目是一个转换库(将 POCO 列表转换为 ADO 记录集)。

到目前为止,我只提出了两件事要测试:

  • 记录集是否存在(不为 Null,不为空)
  • 如果每个字段的内容相同(--> ifRS!Foo == POCO.Foo)

所以,我的问题是:

  • 当我的代码只是将 A 转换为 B 时,我还可以测试什么?
  • 或者这个项目是否太小/太简单/不是一个很好的例子来编写更多有意义的单元测试?

有很多事情需要测试。我还建议考虑并可能验证:

  • 私人领域POCO没有正确映射
  • 列表中的无效条目正确抛出异常
  • 记录集长度正确
  • POCO 中的继承按需要进行处理(即:基类成员按预期映射)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何对转换库进行单元测试? 的相关文章

随机推荐

  • git 别名:多个命令、可变参数

    我经常发现自己输入以下内容 git push remote1 branch1 branch2 tag1 tag2 tag3 git push remote2 branch1 branch2 tag1 tag2 tag3 我更喜欢一个别名 我
  • 散景图只会弹出一个空白窗口

    所以我最近一直在尝试学习散景 一切都很顺利 但突然间 每当我尝试制作散景图时 浏览器就会显示一个空白页面 我没有收到任何错误代码 只有空白页 这是我几天前成功用来创建绘图的程序 我什至尝试加载几周前制作的 html 绘图文件 该文件在同事计
  • 在 Android 上检测已接听的拨出电话

    我知道这个问题已经被问过很多次了 但没有答案 但我仍然希望有人终于解决了这个问题 问题 我有一台运行 Android 2 3 的未 root 设备 我需要创建一项服务 打电话 等待呼叫被应答 接听电话后挂断电话 有超时 和其他许多人一样 我
  • Laravel 规则和正则表达式 (OR) 运算符的问题

    我的 Laravel 规则和正则表达式操作有一个小问题 基本上 规则是一个数组 如下所示 room gt required alpha num min 2 max 10 我遇到的问题是使用正则表达式和 时 或 运算符 例如 cid gt r
  • 获取信封 URL

    有没有办法使用 API 获取用户在 DocuSign 网站上查看特定信封的 URL 我并没有尝试使用嵌入式签名体验 因此 API 提供的各种信封 视图 不是所需的 URL 目标是在自定义 Web 应用程序中提供一个链接 单击该链接时将根据用
  • 如何在 WPF 数据网格中添加页脚行?

    如何在 WPF 数据网格中添加页脚行 我必须在 WPF 数据网格中为每列的总和添加一行 我不想使用任何 dll 或 telerik 以及类似的东西 仅使用 Microsoft 组件来执行此操作 我正在尝试这样做
  • 难以理解 R 中双括号和单括号子集之间的区别[重复]

    这个问题在这里已经有答案了 我很难理解双括号子集和单括号子集之间的区别 我在开源编程方面相当陌生 我很难理解 R 中的 help 函数 因为考虑到我目前对 R 的理解 其中的一些信息对我来说太技术性了 我尝试过谷歌搜索差异 虽然它给了我一个
  • 在 ASP .NET Core 2.1 Web Api 中启用 CORS

    我正在使用 ASP NET Core 2 1 Web API 和 React 编写应用程序 我的服务器位于 localhost 5000 上 客户端位于 localhost 3000 上 我想用 axios 发送 post 请求 但在浏览器
  • 如何在JavaFX中为TextArea设置圆角?

    我需要在 TextArea 上有圆角 但它看起来有点奇怪 看起来 有些内层也应该有相同半径的圆角 但是哪一个呢 我使用这个CSS text area fx background color dbb1b1 fff0f0 fx backgrou
  • 从另一个分支或从 master 创建 Git 分支?

    所以我是 Git 新手 我最近从存储库中提取了主分支的新版本 我创建了一个branch 1 获取某个功能并将其推送到存储库并创建拉取请求 现在我创建了一个新的branch 2 具有另一个功能 但由于我的拉取请求尚未合并 再次拉取 maste
  • 根据多行中的总分对 mysql 中的用户进行排名

    我有与这个问题中描述的非常相似的要求 mysql中的用户按积分排名 https stackoverflow com questions 34637943 rank users in mysql by their points 唯一的区别在于
  • MySQL 可以存储多少行?

    所以我是一个初学者 刚刚自学了几个月的MySQL 我在工作中总是使用 phpMyAdmin 我过去的工作只涉及大约 100k 行的表 所以没有什么大问题 然而 我的客户现在想要在表中存储大约 800 万行 MySQL phpMyAdmin
  • 如何在C中将一个字符串拆分为2个字符串

    我想知道如何获取 1 个字符串 用分隔符 例如空格 将其拆分为 2 个字符串 并将这 2 个部分分配给 2 个单独的字符串 我尝试过使用strtok 但无济于事 include
  • GO中的优先级队列

    谁能向我解释一下 我想在GO中实现一个优先级队列 接口实现来自link https golang org pkg container heap example priorityQueue 但优先级最低 我的代码 pq make Priori
  • 为 JSP 创建注销链接?

    当用户登录我的应用程序时 他提交一个要通过 Servlet 处理的表单 servlet 为用户创建一个会话 我如何创建一个链接以便用户可以注销 我似乎无法直接链接到 Servlet 如何删除会话并链接回主页 HttpSession sess
  • 读取 Android 4.2 中的 APN?

    我有个问题阅读 APN在安卓v4 2中 是读 不是写APNS 它抛出一个安全异常 没有写入 APN 设置的权限 用户 10068 和当前用户都没有权限 进程有 android permission WRITE APN SETTINGS 相同
  • 如何通过仅调用一个命令来构建多个目标?

    我得到了一个像下面这样的 Makefile PHONY all all aaa 2 bbb 2 aaa 2 aaa 1 common 1 create 2 bbb 2 bbb 1 common 1 create 2 程序 create 2
  • 在Android中打开浮动菜单(上下文菜单)?

    我创建了一个新菜单 名为 drmenu xml 当我按下菜单按钮时它可以正常工作 但是当用户按下按钮时我需要打开上下文菜单 下面的代码按钮只显示一个吐司 这是我的 xml 布局
  • 使用 AJAX 来回发送信息

    使用 post 你可以向服务器发送信息 但是当你需要从服务器接收信息时怎么办呢 信息如何从可以由 php 变量保存的方式变为可以由 javascript 变量保存的方式 反之亦然 这与您的问题更相关 http docs jquery com
  • 如何对转换库进行单元测试?

    我刚刚开始使用 C 进行单元测试 我已经阅读有关单元测试的内容很长时间了 并且已经开始使用 NUnit 但这是我第一次真正尝试为真实代码编写真正的测试 但我的问题是 我很难想出可以实际测试的东西 我要测试的项目是一个转换库 将 POCO 列