Skip to main content

test extract

Quem pode usar esse recurso?

O CodeQL está disponível para os seguintes tipos de repositórios:

Observação

Este conteúdo descreve a versão mais recente do CodeQL CLI. Para obter mais informações sobre essa versão, confira https://.com//codeql-cli-binaries/releases.

Para ver os detalhes das opções disponíveis para esse comando em uma versão anterior, execute o comando com a opção --help no terminal.

Shell
codeql test extract [--source-root=<dir>] <options>... -- <testDirectory>

[Conexão] Crie um conjunto de dados para um diretório de teste.

Crie um banco de dados para um diretório de teste especificado, sem realmente executar nenhuma consulta de teste. Gera o caminho para o conjunto de dados QL bruto no qual as consultas de teste serão executadas.

[Obrigatório] O caminho para o diretório de teste.

Substitua o local do banco de dados que está sendo criado. Por padrão, ele será um subdiretório cujo nome é derivado do nome do próprio diretório de teste com '.testproj' acrescentado.

[Avançado] O diretório de código-fonte raiz, se for diferente do diretório de teste.

Uma lista de diretórios nos quais os pacotes de extratores podem ser encontrados. Os diretórios podem ser os próprios pacotes extratores ou diretórios que contenham extratores como subdiretórios imediatos.

Se o caminho contiver várias árvores de diretório, a ordem delas definirá a precedência entre elas: se for encontrada uma correspondência da linguagem de destino em mais de uma das árvores de diretório, a primeira fornecida vencerá.

Os extratores empacotados com a própria cadeia de ferramentas CodeQL sempre serão encontrados, mas se você precisar usar extratores distribuídos separadamente, forneça essa opção (ou, melhor ainda, configure --search-path em um arquivo de configuração por usuário).

(Observação: no Windows, o separador de caminho é ;).

Remova o banco de dados de teste em vez de criá-lo.

[Avançado] Mostre a saída de scripts de extratores que criam bancos de dados de teste. Isso pode ser útil ao desenvolver ou editar casos de teste. Use-a com cautela, pois ela pode causar uma saída duplicada ou malformada caso seja usada com vários threads.

[Avançado] Relate os erros de rótulos indefinidos.

[Avançado] Relate os erros de rótulos não utilizados.

[Avançado] Relate os erros de rótulos repetidos.

[Avançado] Relate os erros de rótulos redefinidos.

[Avançado] Relate os erros de rótulos usados antes de serem definidos.

[Avançado] Gere uma saída diferente de zero se ocorrer um erro durante a importação do TRAP.

[Avançado] Construa IDs de entidade que codificam o local no arquivo TRAP de origem. Pode ser útil para a depuração de geradores TRAP, mas ocupa muito espaço no conjunto de dados.

[Avançado] Controla se a importação do conjunto de dados codeql é compatível com vinculação (padrão) ou não. Em projetos em que essa parte da criação de banco de dados consome muita memória, desabilitar essa opção pode ajudá-los a progredir às custas da integridade do banco de dados.

Disponível desde v2.15.3.

Selecione o formato de saída: text (padrão) ou json.

Mostre este texto de ajuda.

[Avançado] Forneça a opção para a JVM que executa o comando.

(Use-a com cautela, pois as opções que contêm espaços não serão tratadas corretamente.)

Aumente incrementalmente o número de mensagens de progresso impressas.

Diminua incrementalmente o número de mensagens de progresso impressas.

[Avançado] Defina explicitamente o nível de detalhamento como erros, avisos, progresso, progresso+, progresso++ ou progresso+++. Substitui -v e -q.

[Avançado] Escreva logs detalhados em um ou mais arquivos no diretório fornecido, com nomes gerados que incluem carimbos de data/hora e o nome do subcomando em execução.

(Para gravar um arquivo de log com um nome sobre o qual você tem controle completo, forneça --log-to-stderr e redirecione stderr conforme desejado.)

[Avançado] Controle a localização dos dados armazenados em cache no disco que persistirão entre várias execuções da CLI, como pacotes QL baixados e planos de consulta compilada. Se não for definido explicitamente, o padrão corresponde a um diretório intitulado .codeql no diretório inicial do usuário; que será criado se ainda não existir.

Disponível desde v2.15.2.