Pergunta

Temos uma enorme base de código, onde métodos com muitas variáveis locais só retorna 226 métodos.Eu não quero que isso mesa grande de ser despejado em xml de saída para a confusão, e eu gostaria de top 10, se possível, mas o que eu realmente quero é a contagem para que possamos fazer tendências e sumários executivos.Há um clean/eficiente/escalonável não hacky maneira de fazer isso?

Eu imagino que eu poderia usar um executável tarefa, em vez de o ndepend de tarefas (para que a série não é automático) e a desordem não fique mesclada.Em seguida, operar manualmente esses arquivos para obter um resumo, mas eu gostaria de saber se existe um caminho mais curto?

Foi útil?

Solução

O que sobre a definição de uma linha de base para apenas tomar conta de novas falhas?

o que eu realmente quero é a contagem para que possamos fazer tendências e sumários executivos

As tendências podem ser facilmente alcançados com o código consultas e regras sobre LINQ (CQLinq) como: Evitar a tomada do complexo métodos ainda mais complexo (Fonte CC)

// <Name>Avoid making complex methods even more complex (Source CC)</Name>
// To visualize changes in code, right-click a matched method and select:
//  - Compare older and newer versions of source file
//  - Compare older and newer versions disassembled with Reflector

warnif count > 0 
from m in JustMyCode.Methods where
 !m.IsAbstract &&
  m.IsPresentInBothBuilds() &&
  m.CodeWasChanged()

let oldCC = m.OlderVersion().CyclomaticComplexity
where oldCC > 6 && m.CyclomaticComplexity > oldCC 

select new { m,
    oldCC ,
    newCC = m.CyclomaticComplexity ,
    oldLoc = m.OlderVersion().NbLinesOfCode,
    newLoc = m.NbLinesOfCode,
}

ou Evitar a transformação de um tipo imutável em um mutáveis um.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top