gpt4 book ai didi

tdd - 在数据库而不是假存储库上运行测试是不好的做法吗?

转载 作者:行者123 更新时间:2023-12-03 23:16:24 26 4
gpt4 key购买 nike

我知道优点是什么,当我使用更复杂的系统时,我会使用假数据。

如果我正在开发一些简单的东西并且我可以轻松地在真实数据库中设置我的环境,并且正在访问的数据非常小,以至于访问时间不是一个因素,我只运行了一些测试,该怎么办。

创建虚假数据仍然很重要,还是我可以忘记额外的编码并直接跳到真实数据?

当我说真实数据库时,我指的不是生产数据库,而是测试数据库,而是使用真实的实时 DBMS 和与真实数据库相同的架构。

最佳答案

使用假数据而不是真实数据库的原因是:

  • 速度。如果你的测试很慢,你就不会运行它们。模拟数据库可以使您的测试运行得比其他方式快得多。
  • 控制。您的测试必须是测试数据的唯一来源。当您使用假数据时,您的测试会选择您将使用哪些假数据。因此,您的测试不可能因为有人将数据库置于不熟悉的状态而被破坏。
  • 秩序独立。我们希望我们的测试能够以任何顺序运行。一个测试的输入不应该依赖于另一个测试的输出。当您的测试控制测试数据时,测试可以相互独立。
  • 环境独立。您的测试应该可以在任何环境中运行。您应该能够在火车上、飞机上、家中或工作中运行它们。他们不应该依赖外部服务。当您使用假数据时,您不需要外部数据库。

  • 现在,如果您正在构建一个小型应用程序,并且通过使用真正的 DB(如 MySQL)可以实现上述目标,那么请务必使用 DB。我愿意。但是请不要误会,随着应用程序的增长,您最终将面临模拟 DB 的需求。没关系,需要的时候就去做。亚格尼。只要确保你在需要的时候做。如果你放手,你就会付出代价。

    关于tdd - 在数据库而不是假存储库上运行测试是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/607620/

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