Cobertura
O runner de navegador do WebdriverIO suporta relatórios de cobertura de código usando istanbul
. O testrunner irá automaticamente instrumentar seu código e capturar a cobertura de código para você.
Configuração
Para habilitar relatórios de cobertura de código, ative-o através da configuração do WebdriverIO browser runner, por exemplo:
export const config = {
// ...
runner: ['browser', {
preset: process.env.WDIO_PRESET,
coverage: {
enabled: true
}
}],
// ...
}
Confira todas as opções de cobertura, para aprender como configurá-las adequadamente.
Ignorando Código
Pode haver algumas seções do seu código-base que você deseja propositadamente excluir do rastreamento de cobertura. Para fazer isso, você pode usar as seguintes dicas de análise:
/* istanbul ignore if */
: ignore a próxima instrução if./* istanbul ignore else */
: ignore a parte else de uma instrução if./* istanbul ignore next */
: ignore a próxima coisa no código-fonte (funções, instruções if, classes, o que você quiser)./* istanbul ignore file */
: ignore um arquivo de origem inteiro (isso deve ser colocado no topo do arquivo).
É recomendável excluir seus arquivos de teste dos relatórios de cobertura, pois isso pode causar erros, por exemplo, ao chamar comandos execute
ou executeAsync
. Se você quiser mantê-los em seu relatório, certifique-se de excluir a instrumentação deles via:
await browser.execute(/* istanbul ignore next */() => {
// ...
})