O relatório de cobertura do teste de Istambul é incrível. A boa notícia é que vem enlatado com o Karma Test runner. Se você estiver usando um gerador angular para yeoman, ele não vem pré-configurado. Mas ativá-lo é fácil.
Primeiro você precisa habilitar o repórter em karma.conf.js
Substitua a linha abaixo
reporters = ['progress'];
com isso
reporters = ['progress','coverage'];
//coverage reporter type
coverageReporter = {
type : 'html'
}
Isso adiciona o repórter da cobertura. Mas precisamos saber quais arquivos ele precisa cobrir.
Para fazer isso, adicione as linhas abaixo em qualquer lugar do seu arquivo karma.conf.js
//initiate istanbul code coverage report
preprocessors = {
'app/scripts/**/*.js': 'coverage'
};
É isso aí. Cada vez que você executa uma tarefa de teste, o relatório de cobertura deve ser gerado na pasta raiz.