gpt4 book ai didi

unit-testing - 单元测试大方法

转载 作者:行者123 更新时间:2023-12-04 05:07:56 25 4
gpt4 key购买 nike

遵循测试驱动开发。

我最近实现了一个需要干净界面的算法 (A*)。通过清理我想要的只是几个属性和一个搜索方法。

我发现很难的是测试搜索方法。它包含大约五个步骤,但我基本上是被迫在一次大范围内编写此方法的代码,这使事情变得困难。

对此有什么建议吗?

编辑

我正在使用 C#。不,我目前手头没有代码。我的问题依赖于这样一个事实,即测试仅在实现整个搜索方法后才能通过 - 而不是算法中的一个步骤。之后我很自然地重构了代码,但我发现它很难实现。

最佳答案

如果您的步骤足够大(或者它们本身就有意义),您应该考虑将它们委派给其他较小的类并测试您的类与它们之间的交互。例如,如果您有一个解析步骤,然后是一个排序步骤,然后是一个搜索步骤,那么拥有一个解析器类、一个排序器类等可能是有意义的。然后您将在每一个上使用 TDD。

不知道您使用的是哪种语言,但是如果您在 .net 世界中,您可以将这些类设置为内部类,然后将它们公开给您的测试类,并使用“内部可见”来隐藏它们。

如果这些步骤本身很小并且毫无意义,那么 tvanfosson 的建议就是可行的方法。

关于unit-testing - 单元测试大方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1620855/

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