问题标签 [bdd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
804 浏览

ruby-on-rails - Rails RR 框架:对 instance_of 的多次调用

我想使用 RR 为我的控制器编写 RSpec。

我写了以下代码:

然而,当仍然调用原始的批准方法时, RR 存根仅部署方法。

我应该使用什么语法来存根注册类的所有实例的两个方法调用?

更新: 我用 [Mocha] 达到了预期的结果

0 投票
2 回答
1425 浏览

bdd - 使用 xUnit.NET 的 BDD、规范和“规范报告”?

我是软件开发和“规范”的 BDD 方法的新的但超级粉丝。我一直在使用xUnit.NETMoqxUnit.NET 的扩展,它允许我执行 BDD 样式的测试(我正在松散地使用测试,因为它并不是真正的测试,因为它指定了预期的行为) . 目前,我使用 ReSharper 运行我的所有测试,很高兴看到我的规格详细说明并且全面绿色。

然而,既然我定期使用 BDD 方法,我想要一个更好的报告解决方案,它可以以一种很好的格式呈现系统的所有规范,可以作为新开发人员的一种文档形式引用,在未来的重构等

有谁知道任何现有的工具,最好是免费的,可以与 xUnit.NET 集成以提供格式良好的报告?

0 投票
2 回答
660 浏览

silverlight - 将 BDD 场景与 Silverlight 测试的结果相关联

我与一个使用行为驱动开发 (BDD) 来交付我们的应用程序的团队合作。我们已经开始提供 Silverlight 应用程序。

我想将同意的以纯文本形式编写的 BDD 场景与我们的 silverlight 应用程序的自动化测试结果相关联。因此,当应用程序中遇到某个场景时,会有一个简单的报告显示此映射到原始文本。这样我们的利益相关者(又名产品所有者)就可以快速获得有关已测试和交付的验收标准的反馈。

以前,我使用FitnesseCucumber以及 xUnit/rSpec 来帮助产品所有者和开发人员在使用 BDD 交付 Web 应用程序时进行沟通。

我的问题是我没有看到使用这些报告工具之一插入 Silverlight 测试框架结果和 BDD 场景文本的简单方法。

我的问题:是否有人在使用 Silverlight 的 BDD 项目中提供此类“报告”?如果是这样,你是怎么做到的?

0 投票
3 回答
18832 浏览

bdd - 如何在 BDD 中编写故事/场景(行为驱动设计)

我即将第一次使用 BDD(行为驱动设计),并试图习惯这种不同的解决问题的方式。

您能否提供一些您会为使用 BDD 的简单登录应用程序编写的故事/场景?

例如,从我读过的内容来看,这似乎很好:

当用户输入无效的用户名/密码时,会显示错误消息。

相对于:

通过在数据库中搜索匹配记录来验证 ID 和密码。

0 投票
3 回答
3537 浏览

ruby - 我可以覆盖 test_helper.rb 中的 task :environment 来测试 rake 任务吗?

我在 Rakefile 中有一系列 rake 任务,我想将其作为我的规范等的一部分进行测试。每个任务都以以下形式定义:

:environment 任务设置 ActiveRecord/DataMapper 数据库连接和类的位置。我没有将它用作 Rails 的一部分,但我有一系列测试,我喜欢将它们作为 BDD 的一部分运行。

此片段说明了我如何尝试测试 rake 任务。

所以我的帮助请求 - 是否可以覆盖我的 test_helper.rb 文件中的 :environment 任务,以便我的 rake 测试与我的测试数据库交互,而不是生产?我尝试在帮助文件中重新定义任务,但这不起作用。

对解决方案的任何帮助都会很棒,因为过去一周我一直坚持这一点。

0 投票
1 回答
2640 浏览

.net - 如何将 MSpec 与 MS Build 集成?

几天前,我观看了Rob Conery的BDD 截屏视频。在视频中,他展示了如何使用MSpec,所以我下载了它并使用了这些位。我现在想要将MSpec与 MS Build 集成,但我不知道如何......我使用 TFS 团队构建作为我的 CI 服务器 - 你能帮我将MSpec与 MSBuild 集成吗?

谢谢!

0 投票
5 回答
7275 浏览

unit-testing - 我创建了 NUnit 测试,现在如何运行它们?

我正在开发 vs2008、c#、.net 3.5。

我下载了 NUnit 2.5 win/msi 版本。我创建了一个包含几个 [Test] 方法的 [TestFixture] 类。

如何运行测试?

当我从 Ed Ames 运行 NUnit 演示解决方案时,他的测试 .cs 文件在代码左侧的灰色列中有一个图标(断点、书签等出现的同一位置。)单击该图标会给我一个选项运行测试。

该图标没有出现在我的项目中。我需要设置一个属性吗?

此外,该文档还提到了可用于运行测试的 NUnit GUI。在 NUnit 的 msi 版本中似乎没有下载 GUI。Gui 有单独的下载吗?

0 投票
7 回答
578 浏览

c# - 这是一个糟糕的设计吗?

我正在尝试行为驱动的开发,我发现自己在编写设计时第二次猜测我的设计。这是我的第一个绿地项目,可能只是我缺乏经验。无论如何,这是我正在编写的类的简单规范。它以 BDD 风格用 NUnit 编写,而不是使用专用的行为驱动框架。这是因为该项目以 .NET 2.0 为目标,并且所有 BDD 框架似乎都采用了 .NET 3.5。

MainPresenter 使用的接口都没有任何真正的实现。AccountService 将负责创建新帐户。可以有多个 IAccount 实现定义为单独的插件。在运行时,如果有多个,则会提示用户选择要创建的帐户类型。否则 AccountService 将简单地创建一个帐户。

让我感到不安的一件事是编写一个规范/测试需要多少模拟。这只是使用 BDD 的副作用还是我以错误的方式处理这件事?

[更新]

这是 MainPresenter.AddAccount 的当前实现

欢迎任何提示、建议或替代方案。

0 投票
7 回答
2345 浏览

unit-testing - 我应该更改单元测试的命名约定吗?

我目前对我的单元测试使用一个简单的约定。如果我有一个名为“EmployeeReader”的类,我将创建一个名为“EmployeeReader.Tests”的测试类。然后我在测试类中为该类创建所有测试,其名称如下:

  • Reading_Valid_Employee_Data_Correctly_Generates_Employee_Object
  • Reading_Missing_Employee_Data_Throws_Invalid_Employee_ID_Exception

等等。

我最近一直在阅读BDD 中使用的不同类型的命名约定。我喜欢这个命名的可读性,最终得到一个测试列表,例如:

  • When_Reading_Valid_Employee(夹具)
    • Employee_Object_Is_Generated(方法)
    • Employee_Has_Correct_ID(方法)
  • When_Reading_Missing_Employee(夹具)
    • An_Invalid_Employee_ID_Exception_Is_Thrown(方法)

等等。

有人用过这两种命名方式吗?你能提供任何建议、好处、缺点、陷阱等来帮助我决定是否为我的下一个项目切换吗?

0 投票
8 回答
46743 浏览

java - Java的BDD框架之间有什么区别?

Java 的每个行为驱动开发(BDD) 框架的优缺点是什么?

例如,我在这里找到了一些。

如果我已经使用了模拟库(例如Mockito ) ,那么使用 BDD 框架是否有意义?