【问题标题】:Can we use same feature file for BDD & TDD? [closed]我们可以为 BDD 和 TDD 使用相同的功能文件吗? [关闭]
【发布时间】:2022-01-24 23:29:37
【问题描述】:

我必须在我的团队的帮助下第一次开始应用 TDD 和 BDD APPRoach,所以我需要根据您的经验进行一些说明:

1 - can we share the same feature file for BDD and TDD

如果是,使用什么插件?我们将使用 karma 和 jasmine 进行 TDD,但我们仍然不知道如何将函数与测试场景联系起来

PS:当人们给出 -1 甚至没有写一个有用的答案时,我不明白!有用还是保持安静

【问题讨论】:

  • TDD,据我所知,只是另一种借助测试编写代码的方法。您将使用哪些库与 TDD 无关。
  • 这个问题和java有什么关系?

标签: unit-testing tdd bdd


【解决方案1】:

BDD 和 TDD 是不同的。功能文件是 BDD 资产,您不应该将其用于 TDD。

在开始任何开发之前,您从 BDD 协作开始,并从需求中派生出场景,作为团队跨职能成员的具体示例——主要是三个朋友,即开发人员、QA 和 BA 或产品负责人。 BDD 以简单、自然的语言将需求分解为示例。这些示例从客户的角度解释了应用程序应如何工作。

一旦团队就方案达成一致,开发​​人员就会编写代码来实现每个商定的方案。当您练习 TDD 时,您应该这样做,开发人员可以自己(或与其他开发人员一起进行结对/mob 编程)为 s(he) 实现的功能的不同单元编写测试。编写测试后,开发人员将实现代码以使测试通过。这种方法称为红、绿、重构(RGR)。这是关于 RGR 的 great article 以及它是如何使用 TDD 完成的。

因此,总而言之,您应该同时使用 BDD 和 TDD 来提高产品质量并缩短上市时间。 BDD 是为团队服务的,它可以帮助您导出使整个团队保持在同一页面上的场景,并且您在 BDD 级别进行的测试是功能测试。而 TDD 由开发人员应用和拥有,而您在 TDD 上进行的测试是单元级别的(即,不功能只是检查代码是否按预期工作,并且您模拟所有外部接口,包括 UI、DB 或任何外部调用)。如果有人声称测试人员/QA 应该编写 TDD,那么他们完全错误地理解了 TDD。

我的博客里也写了一篇非常详细的BDD和TDD区别的博文。这是该文章的链接https://blog.nocodebdd.com/bdd-vs-tdd/

我们还将在我们的 youtube 频道 https://www.youtube.com/channel/UCJl6M7o44mGaLX03AP22KTg 上发布有关 BDD 与 TDD 的视频。还有其他视频解释了 BDD 是什么以及如何在您可能会发现有用的项目中推出

【讨论】:

    猜你喜欢
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 2016-02-18
    • 2021-10-07
    • 2019-10-21
    相关资源
    最近更新 更多