草庐IT

go - 用 Go 练习 BDD

coder 2024-07-12 原文

我们即将开始使用 Go 作为 API 层的全新开发,并希望使用 Cucumber 或 Gherkin 等工具与非技术利益相关者一起开发规范。

我们在工具方面有哪些选择?

最佳答案

这个问题真的太宽泛了,可能会被关闭。

但是...您只需在谷歌上搜索一下即可:

https://golanglibs.com/top?q=bdd

免责声明:我的 BDD 包在该列表中排名第 9:

https://github.com/eduncan911/mspec

实现您自己的 BDD 工作流并不需要太多。

现在随着 Go 1.7(测试版)的出现,子测试进一步允许您封装 BDD 风格的上下文分组和编写,而无需“包”。

关于go - 用 Go 练习 BDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37615906/

有关go - 用 Go 练习 BDD的更多相关文章

  1. 牛客网专项练习30天Pytnon篇第02天 - 2

    1.在Python3中,下列关于数学运算结果正确的是:(B)a=10b=3print(a//b)print(a%b)print(a/b)A.3,3,3.3333...B.3,1,3.3333...C.3.3333...,3.3333...,3D.3.3333...,1,3.3333...解析:    在Python中,//表示地板除(向下取整),%表示取余,/表示除(Python2向下取整返回3)2.如下程序Python2会打印多少个数:(D)k=1000whilek>1:    print(k)k=k/2A.1000 B.10C.11D.9解析:    按照题意每次循环K/2,直到K值小于等

  2. ruby-on-rails - Textmate 'Go to symbol' 相当于 Vim - 2

    在Railcasts上,我注意到一个非常有趣的功能“转到符号”窗口。它像Command-T一样工作,但显示当前文件中可用的类和方法。如何在vim中获取它? 最佳答案 尝试:helptags有各种程序和脚本可以生成标记文件。此外,标记文件格式非常简单,因此很容易将sed(1)或类似的脚本组合在一起,无论您使用何种语言,它们都可以生成标记文件。轻松获取标记文件(除了下载生成器之外)的关键在于格式化样式而不是实际解析语法。 关于ruby-on-rails-Textmate'Gotosymbol

  3. ruby-on-rails - 用于 Ruby 的 vim 中的全局 "Go to definition"? - 2

    自97年以来我一直在使用vi/vim进行各种快速编辑和管理任务,但最近才考虑使用它来替换Netbeans作为我选择的ruby​​编辑器。我发现一件事在Netbeans和Eclipse中非常有用的是Ctrl+Click“转到定义”功能,您可以在其中按住Ctrl键并单击一个类或方法,然后它将带您了解定义。现在,我玩过丰富的ctags和rails.vim,而且很接近,但没有雪茄。这就是我想要的:默认情况下在Netbeans和Eclipse中,您可以在本地rails中按住ctrl并单击本地方法或类项目,但你也可以ctrl+click定义在gems或用Ruby编写的系统库。以Netbeans为例

  4. ruby-on-rails - Rails 上的 ruby : How to have multiple submit buttons going to different methods (maybe with with_action? ) - 2

    这个问题在这里已经有了答案:HowdoIcreatemultiplesubmitbuttonsforthesameforminRails?(7个答案)关闭9年前。所以..'save'%>'library'%>然后在我的Controller中:with_actiondo|a|a.savedoenda.librarydoendend问题是只有一个操作被调用...两个submit_tags调用相同的操作...知道为什么吗?或者我如何获得两个按钮以将表单提交给两种不同的方法?

  5. DiFi: A Go-as-You-Pay Wi-Fi Access System 精读笔记(三) - 2

    IV.SYSTEMIMPLEMENTATIONWeadoptmodulardesignfollowingtheintegrationofblockchain.Itbringsmoreflexibilitybyseparatingtheimplementationofdifferentfunctionalities,sowecouldleveragetheadvantagesoftheblockchain-basedsmartcontractwhilereducingoverhead.Figure3illustrateshowdifferentmodulesareinvolvedintheint

  6. go-templates - 如何根据表达式有条件地在 Go 模板中设置变量,如果不使用 if 语句包装可能会导致错误 - 2

    问题我该如何做这样的事情:{{$use_ssl:=(ne$.Env.CERT_NAME"")}}其中$.Env.CERT_NAME可能为零/未定义。如果它是零,它给出这个错误:at:errorcallingne:invalidtypeforcomparison注意:我无法控制传递给Go模板的对象,因此必须完全在模板本身内解决这个问题。我尝试过的我试图通过首先检查它是否为非空来变通:{{$use_ssl:=(($.Env.CERT_NAME)&&(ne$.Env.CERT_NAME""))}}但它给出了这个错误:unexpected"&"inoperand所以我切换到这个,这在语法上是允

  7. ruby-on-rails - Rails for Zombies Lab 4 > 练习 3 - 2

    我在第三个练习中停留在第四个RailsforZombies实验室。这是我的任务:创建将创建新僵尸的操作,然后重定向到创建的僵尸的显示页面。我有以下参数数组:params={:zombie=>{:name=>"Greg",:graveyard=>"TBA"}}我写了下面的代码作为解决方案:defcreate@zombie=Zombie.create@zombie.name=params[:zombie[:name]]@zombie.graveyard=params[:zombie[:graveyard]]@zombie.saveredirect_to(create_zombie_path

  8. ruby-on-rails - 菠菜与 cucumber 在 Rails 中的 BDD - 2

    我开始使用BDD。想知道从cucumber或菠菜开始哪个更好。我的印象是菠菜是现成的新菜。看here我应该从哪一个开始。标准是-全面支持。使用灵活第三方工具和API集成。对于新手来说,这可能又是一个无知的问题:capybara在图片中的位置。 最佳答案 在某些情况下,我一直是Cucumber的长期用户,但从第一天起就一直希望它是Spinach。尽管Spinach有缺点,但我正在将我所有的项目切换到Spinach,因为它使用了新的、现成的PORO技术(PlainOldRubyObjects;)。现在我可以随心所欲地扩展我的步骤,因为它

  9. Go time与string的相爱相杀 - 2

    time包与string包可以说是在Go语言的开发中常用的两个包实际开发过程中(例如web开发)经常会遇到time类型与string类型的交互,计算比较等场景首先来了解GO语言里非常浪漫的一个点,即2006-01-0215:04:05,GO语言诞生的时间,通常用来做时间的格式化time转stringt:=time.Now()//当前时间timeLayoutStr:="2006-01-0215:04:05"t.Format(timeLayoutStr)//返回值为string,可以用一个值来接收它上述例子中,将time类型t转换为string类型,并格式化为年-月-日时-分-秒,这里的格式化是可

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

    我想在RubyOnRails上开始BDD我应该学什么?我对BDD、RSpec或Cucumber一无所知。最好的学习方法是什么?教程?涵盖诸如“我应该测试什么行为?”之类的内容等谢谢! 最佳答案 特定于RSpec;我保留这些链接以供引用(对于初学者来说可能是提前的)。但就是想和你分享。(其中一些可能已经过时,但我认为仍然值得一读)RspecLinkFest-linkstootherreferencesController中的RSpec:TestingyourApplicationControllerwithrSpecTestingCo

随机推荐