是否可以将环境变量合并到Calabash的ruby脚本中?

时间:2014-09-03 15:07:03

标签: cucumber calabash calabash-ios

我正在测试应用中要求用户达到特定年龄的功能。只有当您第一次打开应用程序并退出应用程序时,才会看到询问您的年龄的提示。我不希望我的测试只是通过我的步骤登录然后注销才能看到此提示,但我也不想在测试之间手动重置数据。这不是我们编写脚本的原因吗?无论如何,在我启动测试之前,我使用环境变量RESET_BETWEEN_SCENARIOS = 1 cucumber features / my_feature.feature。有没有办法可以使用我的步骤定义中的变量INSIDE,以便在运行脚本后它自己重置数据?

1 个答案:

答案 0 :(得分:3)

我不熟悉葫芦,但似乎是在使用黄瓜。如果是这种情况,您可以在每个场景之前或之后运行的挂钩之前或之后处理操作。

在features / support文件夹中,添加文件hooks.rb

Before() do
  if ENV['RESET_BETWEEN_SCENARIOS'] == '1'
    #code to reset data
  end
end

这也可以在使用After() do的方案之后运行。同样的if / then也可以在场景步骤中使用。