Coding Dojo Floripa

Desenvolvimento Ágil

Métrica simples e útil? Use RCT

Posted by Ivan Sanchez em Sexta-feira, Maio 11, 2007

RCT, ou Relação Código-Teste (Code To Test Ratio) é uma métrica extremamente simples, que permite verificar como andam os testes durante o projeto:

RCT = Linhas de Teste / Linhas de Código

Normalmente o valor obtido varia entre 0, quando não existe nenhum teste, e 1,5, quando se escreve 50% de linhas de teste a mais do que linhas de código. Até hoje não vi muitos projetos passarem deste valor, mas já é bastante normal ver projetos nesta faixa. Veja alguns exemplos no Code to Test Ratio Showdown.

O interessante desta métrica é que ela pode servir para acompanhar a adoção de TDD e verificar se os testes não estão sendo deixados de lado. Por isso ela deve ser coletada periodicamente, e deve-se buscar um valor que varie muito pouco quando a utilização de testes estiver satisfatória.

Atualmente estou trabalhando num projeto onde a RCT é 1.3. Em projetos Ruby on Rails a RCT é facimente obtido via rake stats:

Code LOC: 549 Test LOC: 690 Code to Test Ratio: 1:1.3

O projeto ainda está no começo (pouco mais de 500 linhas de código), mas o meu objetivo é que minha RCT nunca baixe de 1.3, e se possível alcance 1.4 quando eu passar a fazer mais testes de integração🙂

E no seu projeto, quantas linhas de teste você gera para cada linha de código? Se você obter a RCT do seu projeto, divulgue-a nos comentários!

3 Respostas to “Métrica simples e útil? Use RCT”

  1. Marcos Silva Pereira said

    Conhece alguma ferramenta Java para verificar, de maneira tão rapida, o RCT?

  2. Cara, pra Java eu costumo usar o comando “wc -l” do Linux para contar as linhas dos meus arquivos .java. Não é muito amigável, mas funciona.

    Dentro de IDE só conheço o plugin Metrics do Eclipse. Ele permite verificar LOC (Lines of Code), mas desconheço se é possível distinguir LOC de LOT (Lines of Test).

    De qualquer forma a RCT é tão simples que escrever um programa para calculá-la deve levar pouquíssimo tempo.

    Quem sabe, se houver mais gente interessada em usar esta métrica, eu posso ajudar a criar um plugin do Eclipse para calculá-la….

  3. Rodrigo said

    Definição de rct e caracteristicas do mesmo

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s

 
%d bloggers like this: