{"meta":{"title":"쿼리 참조 파일","intro":"쿼리 참조 파일을 사용하여 테스트에서 실행하려는 쿼리의 위치를 정의할 수 있습니다.","product":"보안 및 코드 품질","breadcrumbs":[{"href":"/ko/enterprise-cloud@latest/code-security","title":"보안 및 코드 품질"},{"href":"/ko/enterprise-cloud@latest/code-security/concepts","title":"Concepts"},{"href":"/ko/enterprise-cloud@latest/code-security/concepts/code-scanning","title":"코드 검사"},{"href":"/ko/enterprise-cloud@latest/code-security/concepts/code-scanning/codeql","title":"CodeQL"},{"href":"/ko/enterprise-cloud@latest/code-security/concepts/code-scanning/codeql/query-reference-files","title":"쿼리 참조 파일"}],"documentType":"article"},"body":"# 쿼리 참조 파일\n\n쿼리 참조 파일을 사용하여 테스트에서 실행하려는 쿼리의 위치를 정의할 수 있습니다.\n\n## 쿼리 참조 파일 알아보기\n\n쿼리 참조 파일은 테스트할 쿼리 한 개의 위치를 정의하는 텍스트 파일입니다.\n\n```\n          `test run` 하위 명령에 테스트 디렉터리에 속하지 않는 쿼리를 실행하도록 지시하려는 경우 쿼리 참조 파일을 사용합니다.\n```\n\n테스트로 실행하려는 쿼리를 지정하는 방법에는 두 가지가 있습니다.\n\n1. 쿼리 참조 파일을 사용하여 테스트할 쿼리의 위치를 지정합니다.\n   이는 실제 코드베이스에서 문제를 식별하기 위한 경고 및 경로 쿼리에 대한 테스트를 만들 때 유용합니다. 테스트 코드의 여러 디렉터리를 만들 수 있습니다. 각 디렉터리는 쿼리의 다양한 측면에 초점을 맞춥니다. 그런 다음 테스트 코드의 각 디렉터리에 쿼리 참조 파일을 추가하여 테스트할 쿼리를 지정합니다.\n2. 테스트 디렉터리에 직접 쿼리를 추가합니다.\n   이는 일반적으로 QL 라이브러리의 동작을 테스트하기 위해 쿼리를 명시적으로 작성할 때 유용합니다. 이러한 쿼리에는 라이브러리 조건자 호출이 몇 개만 포함되어 출력을 테스트할 수 있도록 `select` 문에 래핑하는 경우가 많습니다.\n\n## 쿼리 참조 파일 정의\n\n각 쿼리 참조 파일(`.qlref`)은 해당 쿼리를 찾을 위치를 정의하는 한 줄을 포함합니다. 위치는 쿼리가 포함된 CodeQL 팩의 루트를 기준으로 정의해야 합니다.\n이는 일반적으로 `.qlref`을(를) 포함하는 CodeQL 팩, 테스트 팩의 `dependencies` 블록에 지정된 CodeQL 팩, 또는 CodeQL 팩의 전이적 종속성입니다.\n\n다양한 시스템 환경에서도 문제없이 작동하도록 모든 운영 체제에서 경로 구분자를 슬래시(/)로 통일하여 사용하시기 바랍니다.\n\n### 예시\n\nJavaScript 경고 쿼리를 테스트하는 쿼리 참조 파일: [DeadAngularJSEventListener.qlref](https://github.com/github/codeql/blob/main/javascript/ql/test/query-tests/AngularJS/DeadAngularJSEventListener/DeadAngularJSEventListener.qlref)\n\n```\n          `qlpack.yml`에 있는 CodeQL 팩의 https://github.com/github/codeql/blob/main/javascript/ql/test/qlpack.yml 파일(`javascript/ql/test`)은 `codeql/javascript-queries`을(를) 종속성으로 정의합니다. 따라서 쿼리 참조 파일은 `codeql/javascript-queries` CodeQL 팩을 기준으로 쿼리의 위치를 정의합니다.\n```\n\n```shell\nAngularJS/DeadAngularJSEventListener.ql\n```\n\n또 다른 예는 [사용자 지정 쿼리 테스트](/ko/enterprise-cloud@latest/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/testing-custom-queries)을(를) 참조하세요."}