如何使用simplecov包含目录和子目录

时间:2017-08-17 14:19:11

标签: ruby simplecov

如何将我的库的文件夹和子文件夹添加到simplecov生成覆盖范围?

我的SimpleCov配置

  SimpleCov.start do
    add_group 'Bot', 'app/bots'
    add_group 'Bot', 'lib/bot'
    add_group 'Controllers', 'app/controllers'
    add_group 'Models', 'app/models'
    add_group 'Helpers', 'app/helpers'
    add_group 'Libraries', 'lib'
  end

这是我的lib树

├── assets
├── bot
│   ├── base_bot_logic.rb
│   ├── bot_logic.rb
│   ├── core
│   │   ├── blacklist.rb
│   │   ├── bot_core.rb
│   │   ├── broadcast.rb
│   │   ├── emoji.rb
│   │   ├── profile.rb
│   │   ├── reply.rb
│   │   ├── setup.rb
│   │   ├── state_machine.rb
│   │   └── webview.rb
│   └── geoutils
│       └── geoutils.rb
├── estrutura.txt
├── solar
│   ├── api.rb
│   ├── assistido.rb
│   ├── atendimento.rb
│   └── validation
│       └── cpf.rb
├── solar.rb
└── tasks

7 directories, 18 files

SimpleCov只能识别两个文件。

simplevoc lib coverage

如何添加丢失的文件夹?

修改

我在SimpleCov.start中添加track_files '{app,lib}/**/*.rb'并识别mys文件,但不计算覆盖率。

enter image description here

1 个答案:

答案 0 :(得分:0)

虽然我错过了派对,但我会回答

Getting started包含您问题的答案:

  

如果SimpleCov在您的应用程序代码已经加载后启动(通过   要求),它将无法跟踪您的文件及其覆盖范围!该   必须在任何应用程序代码之前发出SimpleCov.start   需要!

通过这种方式,正确

  

要求'simplecov'

     

要求'yourapp'

不正确

  

要求'yourapp'

     

要求'simplecov'

track_files只包含此glob匹配的文件,无论是否明确要求它们。