Skip to main content

테스트 추출

[연결] 테스트 디렉터리에 대한 데이터 세트를 빌드합니다.

누가 이 기능을 사용할 수 있나요?

CodeQL은(는) 다음 리포지토리 유형에 사용할 수 있습니다.

이 문서의 내용

이 콘텐츠는 CodeQL CLI의 최신 릴리스에 대해 설명합니다. 이 요소에 대한 자세한 내용은 https://github.com/github/codeql-cli-binaries/releases을(를) 참조하세요.

이전 릴리스에서 이 명령에 사용할 수 있는 옵션의 세부 정보를 보려면 터미널에서 옵션을 사용하여 --help 명령을 실행합니다.

개요

Shell
codeql test extract <options>... -- <testDir>

설명

[연결] 테스트 디렉터리에 대한 데이터 세트를 빌드합니다.

실제로 테스트 쿼리를 실행하지 않고 지정된 테스트 디렉터리에 대한 데이터베이스를 빌드합니다. 테스트 쿼리를 실행할 원시 QL 데이터 세트의 경로를 출력합니다.

옵션

기본 옵션

<testDir>

[필수] 테스트 디렉터리의 경로입니다.

--database=<dir>

생성되는 데이터베이스의 위치를 재정의합니다. 기본적으로 테스트 디렉터리 자체의 이름에 '.testproj'가 추가된 이름의 하위 디렉터리입니다.

--search-path=<dir>[:<dir>...]

추출기 팩을 찾을 수 있는 디렉터리 목록. 디렉터리는 추출기 팩 자체 또는 즉시 하위 디렉터리로 추출기를 포함 하는 디렉터리 수 있습니다.

경로에 여려 디렉터리 트리가 포함된 경우 해당 순서는 우선 순위를 정의합니다. 대상 이름이 디렉터리 트리 중 하나 이상에서 일치하는 경우 지정된 첫 번째 트리가 우선적으로 적용됩니다.

CodeQL 도구 체인 자체와 함께 번들로 제공되는 추출기는 항상 찾을 수 있지만 별도로 분산된 추출기를 사용해야 하는 경우, 이 옵션을 제공해야 합니다(아니면 사용자별 구성 파일에서 --search-path을(를) 설치하는 것이 더 좋습니다).

(참고: Windows에서는 경로 구분 기호가 ;입니다.)

--cleanup

테스트 데이터베이스를 만드는 대신 제거합니다.

--[no-]show-extractor-output

[고급] 테스트 데이터베이스를 만드는 추출기 스크립트의 출력을 표시합니다. 테스트 사례를 개발하거나 편집하는 동안 유용할 수 있습니다. 여러 스레드와 함께 사용하는 경우 중복되거나 잘못된 형식의 출력이 발생할 수 있으니 주의하세요!

--[no-]check-undefined-labels

[고급] 정의되지 않은 레이블에 대한 오류를 보고합니다.

--[no-]check-unused-labels

[고급] 사용하지 않는 레이블에 대한 오류를 보고합니다.

--[no-]check-repeated-labels

[고급] 반복되는 레이블에 대한 오류를 보고합니다.

--[no-]check-redefined-labels

[고급] 다시 정의된 레이블에 대한 오류를 보고합니다.

--[no-]check-use-before-definition

[고급] 정의하기 전에 사용된 레이블에 대한 오류를 보고합니다.

--[no-]fail-on-trap-errors

[고급] 트랩 가져오기 중에 오류가 발생하면 0이 아닌 값으로 종료합니다.

--[no-]include-location-in-star

[고급] 출처가 된 트랩 파일의 위치를 인코딩하는 엔터티 ID를 생성합니다. 트랩 생성기 디버깅에 유용할 수 있지만 데이터 세트에서 많은 공간을 차지합니다.

--[no-]linkage-aware-import

[고급] codeql 데이터 세트 가져오기가 연결 인식 (기본값) 인지 여부를 제어합니다. 데이터베이스 만들기의 이 부분이 너무 많은 메모리를 사용하는 프로젝트에서 이 옵션을 사용하지 않도록 설정하면 데이터베이스 완성도를 낮추는 대신 작업을 진행하는 데 도움이 될 수 있습니다.

v2.15.3부터 사용할 수 있습니다.

--format=<fmt>

출력 형식(text(기본값) 또는 json)을 선택합니다.

일반 옵션

-h, --help

이 도움말 텍스트를 표시합니다.

-J=<opt>

[고급] 명령을 실행하는 JVM에 옵션을 지정합니다.

(공백을 포함하는 옵션은 올바르게 처리되지 않을 수 있으니 주의하세요.)

-v, --verbose

출력되는 진행률 메시지 수를 점진적으로 늘립니다.

-q, --quiet

출력되는 진행률 메시지 수를 점진적으로 줄입니다.

--verbosity=<level>

[고급] 세부 정보 표시 수준을 오류, 경고, 진행률, 진행률+, 진행률++, 진행률+++ 중 하나로 명시적으로 설정합니다. -v-q를 재정의합니다.

--logdir=<dir>

[고급] 타임스탬프와 실행 중인 하위 명령의 이름을 포함하는 생성된 이름을 사용하여 지정된 디렉터리에 있는 하나 이상의 파일에 자세한 로그를 기록합니다.

(모든 권한을 가진 이름으로 로그 파일을 작성하려면 --log-to-stderr을(를) 지정하고 stderr를 원하는 대로 리디렉션합니다.)

--common-caches=<dir>

[고급] 다운로드한 QL 팩 및 컴파일된 쿼리 계획과 같이 여러 CLI 실행 간에 유지되는 디스크의 캐시된 데이터의 위치를 제어합니다. 명시적으로 설정하지 않은 경우 이 기본값은 사용자의 홈 디렉터리에 이름이 지정된 .codeql 디렉터리로 설정되며, 아직 없는 경우 만들어집니다.

v2.15.2부터 사용할 수 있습니다.