这是我的黄瓜命令
cucumber features/xxx.feature -l 409 ENVIRONMENT=LOCAL BROWSER=true
当我执行puts ENV['ENVIRONMENT']
时,值为LOCAL:409
。它与ENV['BROWSER']
相同。
因此,我的脚本失败了,因为不期望这个追加。
答案 0 :(得分:0)
问题在于解析CLI参数。自original implementation of the lines option以来,这似乎是这样的。您可以在Cucumber::Cli::Options
on Line 142-144中看到以下内容:
@args.map! { |a| "#{a}:#{@options[:lines]}" } if @options[:lines]
extract_environment_variables
此map!
语句将行号添加到其余每个参数中,其中包括:
features/xxx.feature
(好) extract_environment_variables
需要在map!
之前,以便在映射时@args
中不包含环境变量。
除了等待我在Issue 1064中打开的Cucumber中修复错误之外,您唯一的选择似乎是使用FILE:LINE
语法而不是-l
选项:< / p>
cucumber features/xxx.feature:409 ENVIRONMENT=LOCAL BROWSER=true