Minitest-cc: минималистский подход к покрытию кода с помощью Minitest
Это легкий и удобный подключаемый модуль для среды тестирования Minitest, который обеспечивает простую оценку покрытия кода вашими тестами.
Minitest-cc — это плагин для Minitest, который обеспечивает минимальную меру покрытия кода вашими тестами. Важно понимать, что эта информация является только справочной и не показывает, насколько эффективны ваши тесты.
Установить Minitest-cc очень просто. Вы можете добавить его в свой Gemfile, включив следующую строку:
gem 'minitest-cc'
После добавления драгоценного камня в ваш Gemfile вам нужно указать его в самом верху вспомогательного файла теста, а затем запустить его с помощью Minitest::Cc.start
. Вот пример:
require 'minitest/cc' Minitest::Cc.start
При запуске тестов вы увидите сводную информацию о покрытии кода, как показано ниже:
Running 8 tests in a single process (parallelization threshold is 50) Run options: --seed 26716 # Running: ........ # Coverage: Lines: 100.0% Branches: 50.0% Methods: 100.0% Average: 83.33% Finished in 0.823512s, 9.7145 runs/s, 10.9288 assertions/s. 8 runs, 9 assertions, 0 failures, 0 errors, 0 skips
По умолчанию Minitest-cc показывает общий процент покрытия кода для строк, ветвей и методов.
Однако вы можете настроить Minitest-cc для отслеживания файлов, отображения покрытия для каждого файла или изменения показателей по умолчанию. Вы можете сделать это, передав аргументы в Minitest::Cc.start
.
Вот пример, который показывает, как настроить Minitest-cc для отслеживания файлов и отображения покрытия для каждого файла:
Minitest::Cc.start(:lines, :branches, :methods) Minitest::Cc.tracked_files = [ './app/**/*.rb', './lib/**/*.rb' ] Minitest::Cc.cc_mode = :per_file
Вы можете настроить, какие показатели отслеживать и как отображать отчет о покрытии. Режим :per_file
покажет вам покрытие для каждого файла в отслеживаемых файлах.
В заключение, Minitest-cc — это простой и минималистичный плагин покрытия кода для Minitest, который может помочь вам получить представление о том, насколько хорошо ваши тесты покрывают ваш код. Хотя он не обеспечивает такой же уровень детализации, как более сложные инструменты, такие как SimpleCov, он может быть полезен в ситуациях, когда вам нужно быстро оценить покрытие тестами.