问题标签 [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 投票
3 回答
747 浏览

ruby-on-rails - 您如何使用 Cucumber 和 RSpec 开发由外而内的 Rails 应用程序?

我刚开始在 Rails 应用程序中使用 BDD,但我不确定最佳实践和工作流程是什么?还有哪些我真正需要的东西来测试我的项目,例如步骤定义、控制器、模型和视图?我需要测试所有这些吗?

0 投票
6 回答
5249 浏览

ruby - Cucumber:自动创建步骤文件?

当我运行 cucumber 时,它会显示我应该定义的可能步骤,RSpec book 中的一个示例:

有没有办法自动创建步骤定义文件,所以我不必手动重写或复制粘贴,但我可以将它们自定义为更通用?

0 投票
1 回答
11363 浏览

c# - 我是否正确编写了我的第一个 MSpec 规范?

我正在编写我的第一个 MSpec 规范,我想要一些指导。我将规范留在“待定”状态,但上下文已填写。有什么需要改进的地方吗?

作为参考,这是故事和第一个场景:

和 MSpec 代码(一些部分被剪断),请注意,It由于与以下冲突,我不得不为 MSpec 委托起别名Moq.It

0 投票
4 回答
4052 浏览

c# - 学习 BDD、TDD(ruby、C#、javascript)的好资源

什么是学习 BDD 和 TDD(ruby、C#、javascript)的好资源。

现在用什么好的框架?

0 投票
1 回答
793 浏览

c# - Ngourd C# BDD Cucumber

http://code.google.com/p/ngourd/downloads/list

以上是 NGourd 的链接,这是一个 C# BDD 测试框架。问题是我如何下载这个?我没有看到任何下载链接。我看到“Wiki”选项卡下有一个“QuickStart”链接,没有其他下载链接。谢谢你的帮助。请在您的答案中提供一个链接,以便我可以下载并运行我的程序测试。再次感谢。

0 投票
2 回答
148 浏览

unit-testing - 如何在 BDD/TDD 中表达动作的结果

标题可能不是很清楚。我想到了以下示例:

Authenticator 对象使用凭据对用户进行身份验证。它返回一个 AuthResult 对象。此 AuthResult 对象表示身份验证成功或失败(如果是,则说明失败的原因,例如未找到用户名)。

我如何在测试中表达这个?'testShouldReturnAuthObjectWithStatusSuccessOnValidLogin'?

0 投票
2 回答
322 浏览

tdd - BDD/TDD:依赖可以是一种行为吗?

我被告知不要使用实现细节。依赖项似乎是一个实现细节。但是,我也可以将其表述为一种行为。

示例:LinkList 依赖于存储引擎来存储其链接(例如 LinkStorageInterface)。构造函数需要传递一个已实现的 LinkStorageInterface 的实例来完成它的工作。我不能说'shouldUseLinkStorage'。但也许我可以说“shouldStoreLinksInStorage”。

在这种情况下“测试”什么是正确的?我应该测试它是否将链接存储在商店(行为)中,还是根本不测试?

0 投票
1 回答
703 浏览

testing - 使用 DAO 测试对象

继续另一个关于测试的类似问题(见这里)。我将使用一个类似的例子(伪代码)

所以 linkDisplayer 使用 LinkStorage 来获取链接。我要测试的行为是“shouldDisplayLatestLinks”。在我的测试中,我是否需要模拟 LinkStorage,并让它返回具有模拟 getUrl() 等行为的模拟 Link 对象?

测试“叶子”类很容易,但我仍然很难找到测试其他类的方法。

0 投票
2 回答
811 浏览

ruby-on-rails - 在 Rails 应用程序中使用黄瓜进行 autospec

我的黄瓜功能工作正常,rspec 规格工作正常我可以同时运行黄瓜功能和规格规格,它们都可以工作,但现在我正在考虑让 autospec 运行,但运行会产生以下结果

警告:$KCODE 为 NONE。/opt/local/lib/ruby/gems/1.8/gems/cucumber-0.3.90/lib/cucumber/step_definition.rb:100:警告:方法重新定义;丢弃旧的正则表达式/opt/local/lib/ruby/gems/1.8/gems/treetop-1.2.6/lib/treetop/ruby_extensions/string.rb:31:警告:方法重新定义;丢弃旧缩进/opt/local/lib/ruby/gems/1.8/gems/treetop-1.2.6/lib/treetop/compiler/node_classes/character_class.rb:13:警告:在无效上下文/opt中无用地使用文字/local/lib/ruby/gems/1.8/gems/treetop-1.2.6/lib/treetop/compiler.rb:5:警告:全局变量“$exclude_metagrammar”未初始化/opt/local/lib/ruby/gems/ 1.8/gems/treetop-1.2.6/lib/treetop/compiler/metagrammar.rb:232:警告:方法重新定义;丢弃旧空间/opt/local/lib/ruby/gems/1.8/gems/treetop-1.2.6/lib/treetop/compiler/metagrammar.rb:388:警告:方法重新定义;丢弃旧空间/opt/local/lib/ruby/gems/1.8/gems/treetop-1.2.6/lib/treetop/compiler/metagrammar.rb:771:警告:方法重新定义;丢弃旧空间/opt/local/lib/ruby/gems/1.8/gems/treetop-1.2.6/lib/treetop/compiler/metagrammar.rb:779:警告:方法重新定义;丢弃旧空间/opt/local/lib/ruby/gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/feature.rb:28:警告:方法重新定义;丢弃旧的白色/opt/local/lib/ruby/gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/feature.rb:36:警告:方法重新定义;丢弃旧的白色/opt/local/lib/ruby/gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/feature.rb:679:警告:方法重新定义;丢弃旧的白色/opt/local/lib/ruby/gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/feature.rb:687:警告:方法重新定义;丢弃旧的白色/opt/local/lib/ruby/gems/1。8/gems/cucumber-0.3.90/lib/cucumber/parser/feature.rb:813:警告:方法重新定义;丢弃旧的白色/opt/local/lib/ruby/gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/feature.rb:825:警告:方法重新定义;丢弃旧的白色/opt/local/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/blank.rb:49:警告:方法重新定义;丢弃旧的空白?

我正在运行 AUTOFEATURE=true autospec

有没有解决办法

干杯

0 投票
3 回答
815 浏览

bdd - 启动 BDD 资源?

对于在休闲游戏开发工作室开始学习和应用 BDD,您有什么建议?