我编写的大多数代码都是在Ruby中,每隔一段时间,我会做一些错字,只会在一段时间后被捕获.当我的脚本运行很长的任务时,这很烦人,并返回发现我有一个错字.
是否有一个积极开发的Ruby工具lint工具可以帮助我克服这个问题?是否可以在一个使用大量源文件的系统中使用它,其中一些是动态加载的?
以此片段为例:
a = 20
b = 30
puts c
Run Code Online (Sandbox Code Playgroud)
要获得赏金,请告诉我一个工具,它将检测c变量为未创建/未定义.
rubocop是Ruby的代码样式检查器.一个类似于rubocop的工具,Cane,可以与Rake集成.我更喜欢rubocop到Cane,因为rubocop根据Ruby Style Guide进行检查,它似乎发现了更多的问题.为了自动化样式检查过程,我想将rubocop与Rake集成,以便在缺少代码质量时构建失败.
Gem已经支持通过Rake向包添加测试.我想对样式检查做同样的事情,以便样式检查与测试一起运行.我怎样才能做到这一点?
如果它有助于从Rakefile开始这里是一个:
# -*- coding: utf-8; mode: ruby -*-
require 'bundler/gem_tasks'
require 'rake/testtask'
Rake::TestTask.new do |t|
t.libs << 'test'
t.test_files = FileList['test/unit/test*.rb']
end
desc 'Run tests'
task default: :test
Run Code Online (Sandbox Code Playgroud)