检测rspec或黄瓜是否正在运行的简便方法?

我正在检查某些地方是否正在测试模式下执行代码

Rails.env.test? 

我想更进一步,检查是否是Cucumber或Rspec执行代码,以便微调i18n的一些方法(我确实希望在Cucumber上下文中运行不同,但不在Rspec上下文中)

有没有办法做到这一点?

你可以设置RAILS_ENV=cucumber ,然后问 :

 Rails.env.cucumber? 

我正在使用cucumber-railsgem,至少你可以defined?(Cucumber) 。 如果你正在运行一个规则,如果你正在运行规范,那将返回"constant"