Como alterar o formato do relatório LCOV executado pelo Karma?
Eu configurei o Karma para relatar a cobertura do meu código JavaScript. Aqui está a parte da configuração nokarma.conf.js
Arquivo:
coverageReporter: {
reporters: [
{
type: 'html',
dir: 'build/karma/coverage'
},
{
type: 'lcov',
dir: 'build/karma/coverage',
subdir: '.'
},
{
type: 'cobertura',
dir: 'build/karma/coverage'
}
]
},
Minhaslcov.info
O arquivo tem o seguinte formato:
TN:
SF:./app/scripts/app.js
FN:16,(anonymous_1)
FN:26,(anonymous_2)
FNF:2
FNH:1
FNDA:1,(anonymous_1)
FNDA:0,(anonymous_2)
DA:2,1
DA:20,1
DA:29,0
DA:34,0
LF:4
LH:2
BRF:0
BRH:0
end_of_record
Infelizmente,o plugin JavaScript do Sonarqube considera apenas as linhas que começam comSF:
, DA:
ouBRDA:
(cfLCOVParser)
Por esse motivo, o relatório HTML do LCOV (elaborado por Istambul) oferece uma cobertura de código mais alta que o Sonar nos mesmos dados.
Existe uma maneira de alterar o formato dolcov.info
gerado?
Se eu olharCódigo de Istambul, Posso imaginar o significado dos diferentes rótulos:
BRF
, BRH
, BRDA
são paragalhos.FN
, FNF
, FNH
, FNDA
são parafunções.LN
, LF
, LH
são paralinhas.*F
é o total, enquanto*H
é a informação coberta.A diferença entre a cobertura de Istambul e o Sonar parece dever-se ao fato de este último ignorar completamente a cobertura de Funções e Ramos.
Alguma idéia para resolver isso?