将 Moles 与 DateTime 结合使用

2023-11-29

我开始在单元测试中使用 Moles,并且在文档方面遇到了一些困难。

我想摩尔 DateTime.Now。

如果您查看旧的执行此操作的方法是添加对 mscorlib 的引用,然后为其添加一个存根文件(添加新项 -> 用于测试的存根和摩尔)。

“用于测试的存根和摩尔”模板已被弃用,您所需要做的就是右键单击引用并选择“添加摩尔程序集”,这很好。

VS2010不允许您直接添加对mscorlib的引用,因为我们有对“System”的引用,这没关系,因为我可以在对象浏览器中看到DateTime作为此命名空间的一部分。

如果我为系统引用添加摩尔程序集并重建,我仍然无法解析 MDateTime。

有什么建议 ?


对于mscorlib的Moles,您需要直接右键单击您的测试项目的References。你将会拥有为 mscorlib 添加 Moles 程序集。 然后加using System.Moles;到您的测试类,因为您想要 System.DateTime 的 Moles(实际上,您需要更多)。

[TestMethod()]
[HostType("Moles")]
public void DateTimeMolesTest()
{
    DateTime date = new System.DateTime(2000, 1, 1, 2, 3, 4, 5);
    MDateTime.NowGet = () => date;
    Assert.AreEqual(date, DateTime.Now);
}

如果运行此测试,它将失败,因为您需要添加:

using Microsoft.Moles.Framework;
[assembly: MoledType(typeof(System.DateTime))]

然后,你的测试就会成功。 不要忘记 Moles 不能与某些特殊类型的 mscorlib 一起使用。

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

将 Moles 与 DateTime 结合使用 的相关文章

  • 使用反应式扩展对事件进行单元测试

    我在用着 NET 的反应式扩展 Rx http msdn microsoft com en us devlabs ee794896 aspx将事件公开为IObservable
  • 维护 VS Test Project 中单元测试方法之间的上下文

    我想按顺序运行以下单元测试 使用随机数字的名称 密码等创建新客户 检索刚刚创建的客户并断言其属性包含相同的随机数 对同一用户调用 ForgotPassword 函数 并使用相同的随机数作为用户名 清楚地看到 我需要生成一次随机数 并在 3
  • “yield item”与 return iter(items) 相比有何优点?

    在下面的示例中 resp results 是一个迭代器 版本1 items for result in resp results item process result items append item return iter items
  • 使用 PHPUnit 测试受保护方法的最佳实践

    我发现有关的讨论你测试私有方法吗 https stackoverflow com questions 105007 do you test private method内容丰富 我决定 在某些类中 我想要受保护的方法 但要测试它们 其中一些
  • 测试框架允许测试依赖于其他测试

    我想知道是否有一个测试框架允许将测试声明为依赖于其他测试 这意味着如果它们所依赖的测试未通过 则不应运行它们 或者不应突出显示它们的结果 这种设置的目的是在存在许多测试失败的情况下更容易确定根本原因 作为奖励 如果有某种方法可以使用一个测试
  • Grails Spock 单元测试需要模拟事务管理器

    在 Grails 3 1 12 中 我想对服务进行单元测试 Transactional class PlanService List
  • 如何对这种效果进行单元测试(使用 {dispatch: false})?

    ngrx 和单元测试初学者在这里 我有如下效果 Injectable export class NotificationEffects Effect dispatch false notificationShow this actions
  • Python 单元测试 Google Bigquery

    我在对以下代码块进行单元测试时遇到问题 from google cloud import bigquery from google oauth2 import service account def run query query gcp
  • 构造函数上的分支未涵盖

    我正在使用 Jasmine 创建单元测试 我对所涵盖的分支有疑问 有谁知道为什么代码部分显示分支没有被覆盖 如下所示 这是单元测试 describe MyComponent gt let component MyComponent let
  • C# 压力测试 - 模拟对给定共享资源的多次访问

    如何在 C 单元测试中模拟 压力测试 100 个用户访问给定的共享资源 例如数据库 假设您正在访问真实的数据库 那么您就处于集成测试的范围内 最简单的方法是从多个线程访问资源 例如 Test public void SimpleStress
  • 将文件上传到S3的模拟测试用例

    我们如何模拟文件上传到 S3 我尝试过这样的事情 file mock mock MagicMock spec File name FileMock mock patch storages backends s3boto S3BotoStor
  • 使用带有 OnException 定义的adviceWith进行Camel路由测试

    我有一个非常简单的 Camel 路由定义 其中只包含一些 OnException 谓词来处理相应的异常和一些日志语句 from hazelcast seda someQueue id someQueueID onException Cust
  • CSV 提供的数据源第一列中存在奇数字符

    我有一个 CSV 文件 已添加到 Visual Studio 单元测试项目中 它有七列 如下所示 assessmentitemid reviewer1 reviewer2 reviewer3 reviewer4 reviewer5 revi
  • Grails 控制器单元测试不会将页面渲染到response.text

    我的环境配置 Java 1 7u51 Grails 2 3 7 我试图断言response text在控制器测试中但它总是带 发生了什么 这是我的用户控制器 class UserController def index flash erro
  • Seam 和 Mock 有什么区别?

    自从我使用 java 遗留代码以来已经有几个月了 这是我正在处理的一些事情 0 测试覆盖率 巨大的函数有时我什至看到有的代码超过300行 许多私有方法 有时还有静态方法 高度紧密耦合的代码 一开始我很困惑 我发现在遗留系统中使用TDD很难
  • 使用 testify 模拟接口方法两次,输入和输出不同

    如何在 golang 测试中模拟接口方法两次 例如 type myCache interface Get key string data interface error type service struct cache myCache f
  • 单元测试依赖注入

    我对茉莉花和业力是全新的 我相信我的环境设置正确 并且我能够运行非常基本的单元测试 但是一旦我尝试实例化控制器 我就会收到未知提供程序错误 并且我不确定如何调试它 我需要传入 stateProvider 依赖项吗 我在角种子示例中没有看到这
  • 测试弱引用

    在 Java 中测试弱引用的正确方法是什么 我最初的想法是执行以下操作 public class WeakReferenceTest public class Target private String value public Targe
  • 何时使用模拟框架?

    因此 我正在使用模拟框架 Moq 进行单元测试 并且想知道何时应该使用模拟框架 以下两个测试之间的优点 缺点是什么 public class Tests Fact public void TestWithMock Arrange var r
  • 从文件夹中删除文件的单元测试方法

    我们有一个方法 它将文件夹名称和天数作为参数 public void Delete string folder int days var files Directory GetFiles folder foreach var file in

随机推荐

  • 如何更改 JTable 中已编辑单元格的背景颜色?

    我到处搜索 但似乎仍然找不到我的问题的答案 我已经阅读了有关单元格渲染器和单元格编辑器的所有内容 但仍然不知道 我有一个 JTable 我想确保用户清楚地看到他们正在编辑哪个单元格 默认情况下 JTable 中编辑的单元格会获得较暗的边框
  • React 中的 Konva 无限网格

    我正在尝试学习如何通过包react konva使用canvas 我找到了我需要在 javascript 中编写的确切内容 但我需要像反应组件一样 并在单击按钮时添加矩形的图像 任何人都可以帮我重新组织代码以在反应中显示它 这是我在网上找到的
  • 在tensorflow 1.2.1中导入tensorflow contrib模块很慢

    1 2 1 中的tensorflow contrib 模块导入速度比 1 1 0 慢是否有原因 我正在使用Python 3 5 使用命令行的开销并不大 大约需要 2 3 秒 然而 在 IDE 中 它变得非常重要 导入tensorflow c
  • 在 PHP 中使用常量来声明一个对象来保存类名(就像使用变量一样)?

    这个问题是关于 PHP 中的语法 语法功能 以声明对象时使用变量来存储类名为例 className myClass obj new className 我想知道是否有某种方法可以对常量执行相同的操作 大致如下 define CLASS NA
  • JavaScript 四舍五入到小数点后两位

  • C# HttpWebRequest 网站登录

    我正在尝试从 Web 浏览器控件切换到 http 请求 以实现任务自动化以提高速度 使用此函数 我可以发布数据并接收登录页面 但不会返回任何 cookie 并将其添加到 cookie 列表中 因此登录会话不会传递到下一个请求 an exam
  • 如何调整 AVD 模拟器的大小(在 Eclipse 中)?

    我正在为一家拥有一些 Droid 手机的小型企业编写我的第一个 Android 应用程序 我为手机设置了一个具有正确分辨率的 AVD 854 像素高 我正在使用最大屏幕分辨率为 900 像素高的 MacBook Pro 因此当模拟器启动时
  • Java 从 JAR 设置背景并使其透明

    请耐心等待 我还是个初学者 请不要发表粗鲁的评论 所以这个问题的目标是让我学习如何将已经透明的 JFrame 的背景设置为模糊 这就是我现在所拥有的 正如您所看到的 它是透明的 但并不模糊 我在想也许 Java 有一些进程可以模糊 JAR
  • IONIC2 背景图像在键盘打开时调整大小

    当设置背景图像并将其大小 背景大小 设置为 覆盖 或 100 100 时使用 ionic 2 例如 background url img bg jpeg background repeat no repeat background size
  • Kerberos/Spring Security/IE/Active Directory 出现“检测到有缺陷的令牌”错误(NTLM 不是 Kerberos)

    我们在让 Spring Security Kerberos AD 适用于我们的 Web 应用程序时遇到问题 我们的诊断是 我们的 AD 服务器将 NTLM 令牌 我们可以看出它以 TlRMTVNT 开头 发送到 IE 然后 IE 将其发送到
  • scipy.stats.rv_continuous 的子类化

    我有 3 个关于 scipy stats rv continuous 子类化的问题 我的目标是编写一个截断正态分布 截断指数分布和 2 个均匀分布的统计混合模型 1 为什么通过 mm model rvs size 1000 绘制随机变量如此
  • Django DRF 创建相关对象的权限

    我努力在 Django REST 框架中强制执行对象创建的安全性 基本上 我可以使用 has object permission 在对象级别强制执行安全性 登录的用户必须是对象的所有者才能操作它 实际上 正如文档中所述 我缩小了查询集中的对
  • 仅 CSS 旋转 box-shadow,无原始元素

    我有一个小问题 我想为图片创建 45 度阴影 但如果我使用我的代码 我的对象也会旋转 所以我想请求帮助解决这个问题 我的代码 item box shadow 50px 80px 4px 10px 555 webkit transform r
  • 刷新 让我们在 docker 容器中加密根 CA

    我在 docker 容器中运行 debian 9 今天我无法更新让我们在容器内加密的根证书 在主机 Ubuntu 20 上 一切都可以正常工作 无需我的任何干预 但在我的 debian 容器上 我无法获得新的根 Lets Encrypt 证
  • 使用Java将Java项目导入到Eclipse中

    我编写了一个java程序 该程序编写了另一个java项目 但是 我想添加一段特定代码 将项目导入工作区 这可以做到吗 你有这里有同样的想法表示为利兰 奥雷维但有更多细节和代码示例 Imports the given path into th
  • 组合 std::function 对象

    说我有 double xSquared const double return x x std function
  • 计算html中两个输入类型=“日期”之间的天数[重复]

    这个问题在这里已经有答案了 我有这段 html 代码 其中有两个日期选择器 输入类型 date 和一个 id numdays 的文本字段 我想计算两个选定日期之间的天数并在文本字段中显示该数字 我还想限制选择早于今天的日期 我认为这可以通过
  • Scanner、nextInt 和 InputMismatchException

    我正在尝试读取一个文本文件 然后使用 Java 中的 nextInt 函数循环打印出整数 我的文本文件的形式为 a 2000 2 b 3000 1 c 4000 5 d 5000 6 这是我的代码 public static void ma
  • C++ 中的动态数组

    我是 C 和编程新手 如果您能在 C 或 C 中动态调整数组大小方面获得一些帮助 我将不胜感激 ex 我需要将值存储到数组中 值可能会改变 设置 1 0 1 2 3 设置 2 0 1 2 3 4 设置 3 0 1 设置 4 0 所以我希望他
  • 将 Moles 与 DateTime 结合使用

    我开始在单元测试中使用 Moles 并且在文档方面遇到了一些困难 我想摩尔 DateTime Now 如果您查看旧的执行此操作的方法是添加对 mscorlib 的引用 然后为其添加一个存根文件 添加新项 gt 用于测试的存根和摩尔 用于测试