【问题标题】:how to test an executable in .NET如何在 .NET 中测试可执行文件
【发布时间】:2017-05-29 11:35:04
【问题描述】:

每当我处理在 .NET (C#) 中编写测试时,我都会读到,您只能测试 DLL。但是我的应用程序没有任何 DLL,我也想测试一些控制器和行为。在不创建 DLL 项目的情况下怎么可能?有可能吗?

欢迎提示。

【问题讨论】:

  • 你从哪里读到这个的?你试过了吗?
  • 仅供参考:您应该始终牢记,您可以在任何可访问的部分上编写集成测试,但只有当您将您的类设计为可单元测试的(所有依赖项必须是可注入和可模拟的)。两者有着相似但不同的意图和不同的规则

标签: c# .net unit-testing testing automated-tests


【解决方案1】:

您的单元测试项目仍然可以像任何其他类库一样引用应用程序项目。它可能被认为不太理想,但没有什么可以阻止它工作。随着系统逻辑的增长,即使是一点点,您肯定会考虑将业务逻辑移动到类库项目中,并使应用层尽可能薄。

我读到了,你只能测试 DLL。

这过于简单化了。他们可能的意思是您只能测试离散的功能。无论什么样的项目托管该功能,功能本身都必须明确定义,具有分离的关注点,并且可以单独测试。如果那是导致您的设计出现问题,那么您需要做更多的工作才能对您的代码进行单元测试。

但要开始,只需创建您的单元测试项目并引用您的其他项目。然后开始为您的各个功能单元编写测试。每个测试应该只测试一个离散的东西,并且应该包括以下简单的步骤:

  1. 安排
  2. 行动
  3. 断言

单元测试不应该需要任何额外的设置,也不应该产生任何副作用。这就是“离散”部分的用武之地,每个部分都应该是独立的,而不是依赖于其他部分。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-17
    • 2011-04-16
    • 2013-01-13
    • 2015-10-31
    • 1970-01-01
    • 2018-08-01
    • 2010-09-27
    相关资源
    最近更新 更多