Use*_*ser 6 rspec ruby-on-rails
我注意到有几个规格间歇性地失败,具体取决于它们的运行顺序.
为了隔离它们,我正在寻找一个命令,我可以在其中输入种子编号,并查看按种子编号确定的顺序列出的所有规格.这可能吗?使用--format = documentation没有提供所需的信息.
从那里我将注意到每次发生间歇性故障之前运行的测试列表,并最终缩小到我的罪魁祸首.
inf*_*sed 10
RSpec的JSON格式化程序按照它们运行的顺序输出文件名和行号:
rspec --seed 1 -f json > out.json
Run Code Online (Sandbox Code Playgroud)
要从结果out.json文件中获取包含行号的文件名列表:
require 'json'
data = JSON.parse(File.read('out.json'))
examples = data['examples'].map do |example|
"#{example['file_path']}:#{example['line_number']}"
end
Run Code Online (Sandbox Code Playgroud)
现在examples将包含一组文件路径,如:
["./spec/models/user_spec.rb:19", "spec/models/user_spec.rb:29"]
Run Code Online (Sandbox Code Playgroud)