Как получить статистику покрытия кода для моего приложения Sinatra? - PullRequest
6 голосов
/ 31 октября 2011

Я написал приложение Sinatra (веб-сайт) и хотел бы собрать информацию о покрытии кода для кода сайта.Я новичок в Ruby, но Google говорит мне, что rcov - хороший инструмент для покрытия кода.К сожалению, вся информация, которую я могу найти в Интернете, показывает только то, как получить информацию о покрытии кода для тестовых случаев - мне нужна информация о покрытии кода для самого моего сайта.

Конкретные файлы сайта, которые я хочу профилировать, находятся в "sdk"Каталоги "и" sdk / vendor ", поэтому, где я обычно запускаю свой сайт с" ruby ​​site.rb ", я вместо этого пробовал следующее:

rcov -Isdk -Isdk/vendor site.rb

В нем отображался текст запуска Sinatra, но затемнемедленно завершить работу вместо ожидания веб-запросов, как обычно делало бы мое приложение Sinatra.

Может кто-нибудь подсказать мне хитрость запуска моего сайта с включенным покрытием кода?Я хочу запустить сайт, выполнить серию запросов и затем остановить сайт;после чего я хочу посмотреть статистику покрытия кода из всей серии запросов.

В настоящее время я использую Ruby 1.8.7.

Ответы [ 2 ]

4 голосов
/ 02 ноября 2011

SimpleCov идеально подходит для этого.Если вы используете RSpec и Bundler, настройка очень проста

в вашем файле gem

gem 'simplecov'

, тогда

$ bundle install

В spec / spec_helper.rb (прежде всего)

require 'simplecov'
SimpleCov.start

затем: $ rspec spec

Simplecov создает действительно хороший отчет о покрытии по адресуоляция / index.html

1 голос
/ 31 октября 2011

Может быть, вы могли бы взглянуть на SimpleCov , который рекламирует его простое использование для любого вида анализа покрытия.

...