2014-01-04 3 views
1

Покрытие Karma, похоже, генерирует покрытия в подпапках с таким именем, как: PhantomJS 1.9.2 (Mac OS X), так или иначе, чтобы сказать, чтобы открыть эту подпапку при использовании в сочетании с Grunt?Получить отчет о карме Открыть отчет с помощью Grunt

В настоящее время нужно было бы перейти в каталог, скопировать имя каталога и вставить его после открытия localhost:5555, чтобы загрузить его.

Это не может быть большой проблемой, но я пытаюсь отрезать этот шаг копирования и вставки.

P.S. Я уже использую текстовый тип для вывода непосредственно в командной строке для легкого доступа, но мне бы хотелось, чтобы он открыл отчет о охвате HTML, когда мне это нужно.

connect: { 
    coverage: { 
    options: { 
     open: true, 
     base: 'coverage/<<NEED TO GET THE DYNAMIC F>>', 
     port: 5555, 
     keepalive: true 
    } 
    } 
} 

unit_coverage: { 
    configFile: 'karma.conf.js', 
    autoWatch: false, 
    singleRun: true, 
    reporters: ['progress', 'coverage'], 
    preprocessors: { 
    'app/scripts/{,*/}*.js': ['coverage'] 
    }, 
    coverageReporter: { 
    reporters: [ 
     {type : 'text'}, 
     {type: 'html', dir: '/coverage'} 
    ] 
    } 
}, 

grunt.registerTask('coverage', [ 
    'karma:html_coverage', 
    'connect:coverage' 
]); 

ответ

1

Я хотел, чтобы иметь возможность открыть последнюю версию отчета охвате карму для Chrome (я проверить два браузера, но столкнулись с ошибка, которая упоминается Эмма Гоу). Это было быстрое и грязное решение, основанное на расширении файла grunt, возвращающее отсортированный массив совпадающих файлов. Можно было бы добавить явный вид.

open: { 
    server: { 
    path: 'http://localhost:<%= connect.options.port %>' 
    }, 
    coverage: { 
    path: function() { 
     var reports = grunt.file.expand('coverage/Chrome*/index.html'); 
     return reports[reports.length - 1].toString(); 
    } 
    } 
}, 
0

Согласно карма-бегуна документации можно указать реж к coverageReporter и будет использоваться для хранения сгенерированных отчетов.

+0

Укажите, пожалуйста, код, подтверждающий ваш ответ. – carlodurso

+0

@carlodurso coverageReporter = { типа: 'HTML', реж: 'покрытие /' } тип Возможные значения: HTML (по умолчанию) lcov (lcov и HTML) lcovonly текст текста резюме cobertura (формат xml, поддерживаемый Jenkins) Если вы задаете тип текста или сводки текста, вы можете установить параметр файла, например. coverageReporter = { тип: 'текст', реж: 'покрытие /', файл: 'coverage.txt' } Если имя файла не задано, то будет записывать вывод на консоль. dir Тип: Строка Результат для отчетов о покрытии. Когда вы устанавливаете относительный путь, каталог разрешается против basePath. – RancidVess

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