宝石如何提供Cucumber功能和步骤定义?

时间:2012-07-26 17:53:14

标签: ruby-on-rails ruby testing cucumber bdd

我有两个Rails项目(A和B),其中包括以下宝石:

#project A
gem "green_theme", :path => "~/dev/themes/green_theme"
gem "devel_tasks", :path => "~/dev/themes/devel_tasks"

#project B
gem "red_theme", :path => "~/dev/themes/red_theme"
gem "devel_tasks", :path => "~/dev/themes/devel_tasks"

A和B两个项目都有功能和步骤的功能目录。 红色和绿色这两个主题都应具有相同的功能 登录/注销按钮,html元标记等。

我需要做的是放置与常见主题相关的功能和步骤 在devel_tasks gem里面。这样我就可以分享测试和使用 它们用于检查给定模板是否符合标准。

测试我需要做的一个简单方法是创建一个新的Rails项目 使用样本黄瓜功能,然后尝试运行“黄瓜 实例/ I18N / EN /功能”。

1 个答案:

答案 0 :(得分:0)

如果可能的话,我会将两个项目中的常用功能提取到一个gem中并在那里进行测试。

如果出于某种原因,这两个项目必须分别实现相同的功能:

您可以在gem中提供步骤定义,只需将它们放在一个文件中,并指示用户在其env.rb中require该文件。

我不知道如何在gem中提供可以简单运行的功能,因此您必须提供将功能复制到功能目录的生成器。如果你要生成这些功能,那么用户生成步骤定义可能更简单。