由于各种原因,我发现每次从警卫重新加载文件时运行代码覆盖都是一个负担。但是,似乎没有办法有条件地阻止SimpleCov从规范助手开始。
有没有办法在守卫运行时禁用SimpleCov,但是在我使用rake spec
正常运行时却没有?
答案 0 :(得分:13)
我最终找到了这个解决方案:
在Guardfile
:
guard :rspec, env: { 'NO_COVERAGE' => 'true' }
从规范助手中检查:
SimpleCov.start :rails unless ENV["NO_COVERAGE"]
答案 1 :(得分:4)
在您的规范助手中:
unless ARGV.any? {|e| e =~ /guard-rspec/ }
SimpleCov.start
end
这里的想法是guard-rspec使用特殊的guard-rspec格式化器调用rspec。在给定的命令行中查找它会给你提示它是从Guard调用的,所以你可以跳过SimpleCov,如果它在那里。
答案 2 :(得分:0)
在VsCode中,我使用扩展名为const divEl = this.canvasElRef.nativeElement;
const scriptEl = this.renderer2.createElement('script');
scriptEl.type = 'text/javascript';
scriptEl.text = `
(function() {
console.log('console!')
}());
`;
this.renderer2.appendChild(divEl, scriptEl);
的Ruby Spec命令:NO_COVERAGE=true bin/rspec
也可以使用命令行:Rails Run Spec
或NO_COVERAGE=true bin/rspec spec/*_spec.rb