Há muitas ferramentas de cobertura de código disponíveis para diferentes linguagens de programação, estruturas e plataformas. Você deve escolher a ferramenta que melhor se adapta às suas necessidades, preferências e orçamento. Considere os recursos, usabilidade, compatibilidade e suporte da ferramenta. Os recursos comuns das ferramentas de cobertura de código incluem a capacidade de medir diferentes tipos de cobertura (por exemplo, declaração, ramificação, condição, função ou cobertura de linha), gerar relatórios em diversos formatos (por exemplo, HTML, XML, JSON ou CSV), visualize os resultados da cobertura de diferentes maneiras (por exemplo, gráficos, tabelas, gráficos ou mapas de calor), filtrar/classificar/agrupar/comparar os resultados da cobertura por diferentes critérios (por exemplo, arquivo, classe, método, caso de teste ou ramificação)e integre-se com outras ferramentas (por exemplo, editores de código, executores de teste, analisadores de código ou repositórios de código). O nível de cobertura que você almeja depende de vários fatores, como o tipo/tamanho/complexidade/criticidade do seu software e o tempo/recursos disponíveis para teste. De um modo geral, níveis mais altos de cobertura são mais desejáveis para softwares mais complexos ou críticos; Por outro lado, níveis mais baixos de cobertura podem ser aceitáveis para softwares menos complexos ou críticos. O nível de cobertura também deve ser consistente e realista em todo o seu software e conjunto de testes, bem como alinhado com suas metas de teste e padrões de qualidade.