当前位置: 首页 > 编程笔记 >

unit-testing 资产注入

蒲寂离
2023-03-14
本文向大家介绍unit-testing 资产注入,包括了unit-testing 资产注入的使用技巧和注意事项,需要的朋友参考一下

示例

属性注入允许在创建类依赖关系后对其进行更新。如果要简化对象创建,但是仍然允许测试双精度测试覆盖依赖项,这可能很有用。

考虑一个需要在错误情况下写入日志文件的类。该类知道如何构造一个default Logger,但是允许通过属性注入覆盖它。但是,值得注意的ILogger是,ConcreteLogger在这种给定的示例中,以这种方式使用属性注入将使该类与该类的确切实现紧密结合。可能的解决方法是返回所需ILogger实现的工厂。

public class RecordProcessor
{
    public RecordProcessor()
    {
        Logger = new ConcreteLogger();
    }

    public ILogger Logger { get; set; }

    public void DoSomeProcessing()
    {
        // ...
        _logger.Log("Complete");
    }
}

在大多数情况下,构造器注入优于属性注入,因为它可以在构造对象后立即提供关于对象状态的更好保证。

 类似资料:
  • You can use promtool to test your rules. # For a single test file. ./promtool test rules test.yml # If you have multiple test files, say test1.yml,test2.yml,test2.yml ./promtool test rules test1.yml

  • How can you ensure that your app continues to work as you add more features or change existing functionality? By writing tests. Unit tests are handy for verifying the behavior of a single function, me

  • Support classes for automated testing. and : Subclasses of unittest.TestCase with additional support for testing asynchronous ( based) code. and : Make test logs less spammy. : A simple test runner (w

  • 我不会对unit testing(单元测试)是什么的话题展开讨论。存在很多定义,但是都有一些细微的不同。一个普通的观点可能是unit testing验证一个单位(unit)的源代码的测试。一个单位(unit)包含什么就留给读者了。在我们的例子中,我仅仅去定义了一个unit test作为一个不需要设备运行的测试。IDE将会运行这些测试然后显示最后的结果分辩哪些测试成功哪些测试失败了。 Unit te

  • 本文向大家介绍unit-testing 基本单元测试,包括了unit-testing 基本单元测试的使用技巧和注意事项,需要的朋友参考一下 示例 简单来说,单元测试包含三个阶段: 准备测试环境 执行要测试的代码 验证预期行为与观察到的行为是否匹配 这三个阶段通常称为“安排-行动-断言”或“给予-当-然后-当”。 下面是使用NUnit框架的C#示例。 如有必要,可以进行可选的第四清理阶段。

  • 本文向大家介绍unit-testing 将模拟框架用作存根,包括了unit-testing 将模拟框架用作存根的使用技巧和注意事项,需要的朋友参考一下 示例 术语“模拟”和“存根”经常会变得混乱。造成这种情况的部分原因是,许多模拟框架还提供了对创建存根的支持,而没有与模拟相关的验证步骤。 可以像使用“使用存根提供罐头响应”示例中那样编写新类来实现存根,而可以使用模拟框架代替。 使用起订量: 这实现