1

Мы начали использовать драгоценный камень simplecov, чтобы рассчитать покрытие кода для приложения Ruby on Rails.Высокий коэффициент охвата кодом с несколькими тестами для приложения Rails с использованием простых кодов

SimpleCov.start 'rails' 

Хотя мы разработали только несколько тестовых примеров с использованием огурца, скорость, предоставляемая simplecov, достигает 40%.

Как сделать этот курс более точным?

+0

Я не думаю, что это подходящее место для этого вопроса. – MZaragoza

+0

Просмотрите, что покрыто, чтобы увидеть, если что-то не так с этим. Если есть ошибка, перейдите к simplecov (https://github.com/colszowka/simplecov/issues) и отправьте вопрос. –

ответ

1

Показанный показатель охвата, вероятно, является точным. Модули Ruby, определения классов и методов - это код, поэтому просто загрузка модулей и классов при запуске simplecov покрывает существенный процент кода. Один сценарий Cucumber, скорее всего, относится ко многим из ваших классов и поэтому вызывает этот эффект. Ссылки на ваш код в рейк-задачах и других местах также увеличат этот «фоновый» охват. Вы можете видеть, насколько это верно, глядя на ваш отчет о покрытии и наблюдая, что линии class и module и def покрыты, в то время как тела определений нет.

Не боритесь с ним; просто работайте с ним. Не пытайтесь запускать simplecov после загрузки кода, потому что simplecov по-прежнему будет включать определения класса, класса и метода в знаменателе цифры покрытия кода, что было бы еще более раздражающим.

Фактически, вы можете даже хотеть eager load all of your code so that simplecov shows you the lack of coverage in files that your tests wouldn't cause to be loaded otherwise. (simplecov - это не файлы инструментов, которые никогда не загружаются.) Это действительно даст вам точные измерения. Я должен был прекратить это делать в своем последнем проекте, потому что это мешало Coveralls таким образом, что я забыл, но это может быть не проблемой для вас.

 Смежные вопросы

  • Нет связанных вопросов^_^