gpt4 book ai didi

unit-testing - TDD 测试应用入口点

转载 作者:行者123 更新时间:2023-12-01 11:39:27 26 4
gpt4 key购买 nike

我是 TDD 的新手,到目前为止我非常喜欢它(尽管这是一个调整过程)。

但是,我正在为如何着手测试应用程序的入口点而苦恼。我指的是 main(String... args) 方法,它是一个类,它的唯一职责是从/向磁盘加载和保存属性文件,等等。

当我先写代码时,这似乎不是问题。我只是不会为那些类型的方法/类编写测试。但是,当我必须编写没有测试的代码时,我应该如何遵循 TDD 流程?

换句话说,何时/如何编写入口点适合 TDD 开发过程?

最佳答案

在大多数情况下,您无法对入口点进行单元测试,因为根据定义,单元 测试会单独测试单元 来自其依赖项。

除了一些微不足道的边缘情况,应用程序的入口点是 Composition Root。 ——也就是所有单位整合的地方。虽然您可以对入口点执行完整的系统测试,但通常您应该将其视为 Humble Executable。 .

我个人的规则是 Humble Executable 不能包含任何逻辑(只有组合),我用 Cyclomatic Complexity 来衡量这一点;如果 Humble Executable 的圈复杂度为 1,则可以不对其进行测试。

然而,虽然您不能单元测试入口点,您仍然可以使用Outside-In TDD。驱动组合,尽管您通常仍需要用 Test Doubles 替换一些外部服务.

关于unit-testing - TDD 测试应用入口点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22978996/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com