私は小さなプラグインに取り組んでおり、simplecov が含まれています。
私の宝石ファイルには次の行があります:
gem 'simplecov', :require => false, :group => :test
私のテストファイルrequire "projectname/devuntil/rspec/spec_helper"
では、ファイルの一番上に行を入れました。
私の spec_helper.rb ファイルでは、ファイルの先頭に simplecov を追加します
if ENV['COVERAGE']
require 'simplecov'
require 'coveralls'
puts "require simplecov and coveralls"
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
SimpleCov::Formatter::HTMLFormatter,
Coveralls::SimpleCov::Formatter
]
SimpleCov.start do
add_filter 'spec/'
add_filter 'vendor/'
puts "Start simple coverage"
end
end
コマンドでテストを実行しようとすると、次のCOVERAGE=true bundle exec rspec
ように表示されます。
[root@node1 logstash-input-imap]# COVERAGE=true bundle exec rspec
Coverage may be inaccurate; set the "--debug" command line option, or do JRUBY_OPTS="--debug" or set the "debug.fullTrace=true" option in your .jrubyrc
require simplecov and coveralls
/usr/local/rvm/gems/jruby-9.1.7.0/gems/logstash-devutils-1.3.3-java/lib/logstash/devutils/rspec/spec_helper.rb:6:in `<main>': [DEPRECATION] ::[] is deprecated. Use ::new instead.
Start simple coverage
/usr/local/rvm/gems/jruby-9.1.7.0/gems/simplecov-0.15.0/lib/simplecov.rb:48: warning: tracing (e.g. set_trace_func) will not capture all events without --debug flag
--- jar coordinate com.fasterxml.jackson.core:jackson-databind already loaded with version 2.7.4 - omit version 2.7.3
--- jar coordinate com.fasterxml.jackson.core:jackson-annotations already loaded with version 2.7.0 - omit version 2.7.3
--- jar coordinate com.fasterxml.jackson.module:jackson-module-afterburner already loaded with version 2.7.4 - omit version 2.7.3
--- jar coordinate com.fasterxml.jackson.core:jackson-core already loaded with version 2.7.4 - omit version 2.7.3
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.
Sending Logstash's logs to which is now configured via log4j2.properties
Run options: exclude {:redis=>true, :socket=>true, :performance=>true, :couchdb=>true, :elasticsearch=>true, :elasticsearch_secure=>true, :export_cypher=>true, :integration=>true, :windows=>true}
Randomized with seed 6877
.function called
.function called
.function called
.function called
.function called
.function called
.
Finished in 4.04 seconds (files took 16.56 seconds to load)
7 examples, 0 failures
Randomized with seed 6877
Coverage report generated for RSpec to /root/Downloads/logstash-input-imap/coverage. 0 / 88 LOC (0.0%) covered.
[Coveralls] Outside the Travis environment, not sending data.
私の関数は呼び出されましたが、それでも 0.0% がカバーされていることが示されました。
ここで何が問題であり、それを修正する方法は何ですか? ありがとう