如Ruby Cucumber文档中所述,如何合并Cucumber.js中的步骤?

时间:2018-12-19 02:29:21

标签: javascript ruby cucumber cucumberjs

此处:https://relishapp.com/cucumber/cucumber/docs/defining-steps/nested-steps#use-#steps-to-call-several-steps-at-once

我没有我想要的代码示例,只是说我想在一个步骤中合并并执行多个步骤(请考虑:代码重用)。我不知道如何使用Cucumber.js完成此操作;文档有点粗略。 :-\

1 个答案:

答案 0 :(得分:0)

简而言之,您不能做,而且很可能永远无法直接在Cucumber-js中做到这一点。

马特·威恩(Matt Wynne)和阿斯拉克·赫勒索伊(Aslak Hellesoy)似乎对曾经在黄瓜红宝石中实施这一概念感到遗憾,并建议改用辅助方法。

  

aslakhellesoy在2012年10月16日发表了评论

     

从stepdefs调用步骤是我从未希望添加到Cucumber(-Ruby)中的那些功能之一,因为它为人们提供了很多与之相连的绳索。这是因为Ruby stepdefs使用匿名闭包,您无法从其他地方调用它(除非您遇到麻烦)。

     

使用JavaScript的情况有所不同;步骤定义使用一流的功能!


  

mattwynne于2014年8月27日发表评论

     

我建议您在World上使用辅助方法来实现这种重用。我们在Ruby Cucumber中实现了此功能(我们称其为“嵌套步骤”),并且很难维护,并且导致人们的测试代码中存在一些非常复杂的依赖项。

Julien Biezemans显然同意

  

jbpros于2014年8月13日发表评论

     

感谢@cono担任PR。但是,正如之前所讨论的,将不会在Cucumber.js中实现。

有关此主题的更多信息: