bdd - 用于单元测试的 SpecFlow/BDD?

标签 bdd specflow

似乎互联网没有明确的答案,也没有一套原则来帮助我回答这个问题。所以我求助于 SO 上的伟大人物帮助我找到答案或指导思想:)

SpecFlow 对于 .NET 中的 BDD 非常有用。但是当我们谈论 BDD 时,我们只是在谈论集成/验收测试,还是在谈论单元测试——完全替代 TDD?

我只在小型项目中使用过它,但我发现即使对于我的单元测试,SpecFlow 也改进了代码文档和语言方面的思考。 Converseley,我无法在一个地方看到测试的完整代码 - 因为这些步骤是零散的。

现在给你......

编辑:我忘了提到我在 RoR 社区中看到了 RSpec,它使用 BDD 风格的语法进行单元测试。

最佳答案

我最近开始使用 SpecFlow 对于我的 BDD 测试,我仍然使用单元和集成测试。

基本上,我将测试拆分为单独的项目:

  • 规范
  • 集成
  • 单位

  • 我的单元测试用于测试单个方法,不执行任何数据库调用或任何外部引用。我将集成测试用于与外部资源(例如数据库或 Web 服务等)交互的单个方法调用(有时可能是两个)。

    我使用 BDD 来描述模仿项目业务/领域需求的测试。例如,我会有一个项目的发票生成功能的规范;或用于处理购物篮。这些测试遵循

    As a user, I want, In order to



    语义类型。

    我的建议是根据您的需要拆分您的测试。避免尝试使用 SpecFlow 执行单元测试。

    关于bdd - 用于单元测试的 SpecFlow/BDD?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4152988/

    相关文章:

    visual-studio-2017 - 生成错误: Could not load file or assembly 'Microsoft.Build.Framework, Version=15.1.0.0 " or one of its dependencies

    iis - 使用 Coypu 和 SpecFlow 运行 IIS 服务器

    c# - 使用 BDD 风格的测试

    ios - 如何彻底测试使用 Swift 创建的 iOS 应用程序?

    ruby-on-rails - 在 Ruby On Rails 上学习 BDD 的途径是什么?

    tdd - TDD 中的需求可追溯性?

    java - Mockito 使用正则表达式验证是否使用正确的参数调用了方法

    c# - 使用 Selenium 在 textArea 中输入完整的 html

    .net - BDD测试框架

    流量稳定性