gpt4 book ai didi

c# - 使用 Linq Any() 和 All() 的 TDD

转载 作者:行者123 更新时间:2023-11-30 20:01:48 26 4
gpt4 key购买 nike

我正在编写一个执行 Linq 查询的方法,并且我正在尝试使用 TDD 来执行此操作。

但是,我的查询现在有一个 Any(),但有时我会在编写测试后删除或更改代码中的内容,以查看我的测试是否涵盖了所有应该涵盖的内容。

然后为了好玩,我开始将Any()改成All(),我的测试还是通过了。

我想知道我是否必须像这样检查所有不同的情况,以便获得所有 All()Any() 组合:

  1. 鉴于我的列表包含零个元素(All() 将返回 true,但 Any() 将返回 false)
  2. 鉴于我的列表包含一些元素并且只有一个满足谓词
  3. 鉴于我的列表包含一些元素并且所有元素都满足谓词

我在几本 TDD 书籍中读到,人们经常“伪造”代码,从而导致测试失败。但在这种情况下,我必须编写比伪造它所需的更多的代码。

最佳答案

解决方案很简单:您显然没有足够的测试来涵盖所有可能性。在不知道您的领域或您正在测试的内容的情况下,您可能需要测试

  • 不空,都满足
  • 不空,有些满足
  • 不空,不满足

关于c# - 使用 Linq Any() 和 All() 的 TDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18003786/

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