CLI
1. Versionamento
Versão | Data | Descrição | Autor(es) |
---|---|---|---|
0.1 | 29/01/2023 | Criação do documento | João Pedro |
1.0 | 29/01/2023 | Adição do manual de uso da CLI v1.0.0 | João Pedro |
1.1 | 29/01/2023 | Adição dos comandos existentes na CLI | João Pedro |
1.2 | 29/01/2023 | Adição de vídeo demonstrativo da CLI | João Pedro |
2. Manual de Uso da CLI
2.1 O que é o microsserviço CLI
Esse microsserviço dentro do produto MeasureSoftGram se trata da interface de linha de comandos, que utiliza o pacote de cálculos da Core por trás dos panos, para gerar análises de qualidade dos repositórios. Se trata de um pacote Pypi totalmente independente, que tem como foco a utilização local (sem necessidade de internet).
2.2 Como executar a CLI
Para iniciar a utilização da CLI, baixe o pacote do repositório Pypi.
pip install msgram
Agora todas as funcionalidades disponíveis da CLI do MeasureSoftGram estão disponíveis pelo seguinte comando: msgram
msgram -h
2.3 Comandos existentes na CLI
Como demonstrado na foto anterior, a CLI do MeasureSoftGram possui três comandos:
2.3.1 msgram init
Responsável por inicializar os arquivos e pastas de configuração que são utilizados nos comandos seguintes. O arquivo msgram.json de configuração das entidades é criado nessa etapa.
msgram init -h
Exemplo de configuração de qualidade gerado pelo init:
{
"characteristics": [
{
"key": "reliability",
"weight": 50,
"subcharacteristics": [
{
"key": "testing_status",
"weight": 100,
"measures": [
{
"key": "passed_tests",
"weight": 33
},
{
"key": "test_builds",
"weight": 33
},
{
"key": "test_coverage",
"weight": 34
}
]
}
]
},
{
"key": "maintainability",
"weight": 50,
"subcharacteristics": [
{
"key": "modifiability",
"weight": 100,
"measures": [
{
"key": "non_complex_file_density",
"weight": 33
},
{
"key": "commented_file_density",
"weight": 33
},
{
"key": "duplication_absense",
"weight": 34
}
]
}
]
}
]
}
2.3.2 msgram extract
Responsável por extrair os dados advindos dos análisadores de código (parsers). Até a versão 1.0.0, o MeasureSoftGram suporta as seguintes entidades:
Características disponíveis
- Reliability
- Maintainability
Subcaracterísticas disponíveis
- testing_status
- modifiability
Medidas disponíveis
- passed_tests
- tests_build
- test_coverage
- non_complex_file_density
- commented_file_density
- duplication_absense
Métricas disponíveis
- tests [sonarqube]
- tests_failures [sonarqube]
- test_errors [sonarqube]
- test_execution_time [sonarqube]
- coverage [sonarqube]
- functions [sonarqube]
- complexity [sonarqube]
- comment_lines_density [sonarqube]
- duplicated_lines_density [sonarqube]
msgram extract -h
2.3.3 msgram calculate
Responsável por calcular, através do msgram-core (versão empacotada dos cálculos), a qualidade dos arquivos extraidos. Também, por esse comando o MeasureSoftGram extrai os dados (CSV ou JSON) calculados.
msgram calculate -h
3. Demonstração de uso da CLI
O seguinte vídeo, demonstra a utilização da CLI para cálculo da qualidade do produto MeasureSoftGram: