다음을 통해 공유


방법: 데이터베이스 개체 디버깅

데이터베이스 단위 테스트는 다음으로 구성되어 있습니다.

  • C# 또는 Visual Basic으로 작성된 하나 이상의 테스트 조건. 테스트 조건을 디버깅하려면 방법: 테스트 실행 도중 디버그에 설명된 대로 단위 테스트 디버깅 절차를 따르십시오.

  • 테스트 중인 데이터베이스의 개체에서 실행되는 하나 이상의 Transact-SQL 스크립트. 이러한 Transact-SQL 스크립트는 디버깅할 수 없습니다.

이 항목의 절차에서는 저장 프로시저, 함수, 트리거와 같은 특정 데이터베이스 개체를 디버깅하는 방법을 설명합니다. 데이터베이스 개체를 디버깅하려면 다음 순서대로 해당 절차를 수행하십시오.

  1. 테스트 프로젝트에서 SQL Server 디버깅을 사용하도록 설정합니다.

  2. Transact-SQL 스크립트에 중단점을 추가합니다.

  3. 데이터베이스 단위 테스트를 디버깅합니다. 이 절차에서는 테스트를 디버그 모드에서 실행합니다.

테스트 프로젝트에서 SQL 디버깅을 사용하려면

  1. 솔루션 탐색기를 엽니다.

  2. 솔루션 탐색기에서 테스트 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.

    테스트 프로젝트와 같은 이름의 속성 페이지가 열립니다.

  3. 속성 페이지에서 디버그를 클릭합니다.

  4. 디버거 사용에서 SQL Server 디버깅 사용을 클릭합니다.

  5. 변경 사항을 저장합니다.

테스트 프로젝트를 디버깅할 수 있도록 실행 컨텍스트 제한 시간을 설정하려면

  1. 파일 메뉴에서 열기를 가리킨 다음 파일을 클릭합니다.

  2. 테스트 프로젝트가 들어 있는 폴더로 이동하여 app.config 파일을 두 번 클릭합니다.

    app.config 파일이 편집기에서 열립니다.

  3. 다음 예제와 같이 ExecutionContext 노드를 수정하여 명령 제한 시간을 추가합니다.

    <ExecutionContext CommandTimeout ="300" Provider="System.Data.SqlClient" ConnectionString="Data Source=TargetServerName\TargetInstanceName;Initial Catalog=TargetDatabaseName;Integrated Security=True;Pooling=False" />
    
  4. 변경 사항을 저장합니다.

  5. 데이터베이스 단위 테스트 프로젝트를 다시 빌드합니다.

중요

프로젝트를 다시 빌드하지 않으면 데이터베이스 단위 테스트를 실행할 때 app.config에 대한 변경 내용이 적용되지 않고 디버깅에 실패하게 됩니다.

Transact-SQL 스크립트에 중단점을 추가하려면

  1. 보기 메뉴에서 서버 탐색기를 엽니다.

  2. 데이터 연결에서 테스트할 데이터베이스의 노드를 확장합니다.

  3. 데이터베이스의 아이콘 옆에 빨간색의 작은 'x'가 나타나는 경우에는 데이터베이스에 대한 연결이 닫힌 것입니다. 이 경우 데이터베이스를 마우스 오른쪽 단추로 클릭하고 새로 고침을 클릭합니다. 데이터베이스에 대한 연결을 열기 위해 자격 증명을 제공해야 할 수도 있습니다.

  4. , 저장 프로시저 또는 함수 노드를 확장하여 디버깅할 개체를 찾습니다.

  5. 디버깅할 개체를 두 번 클릭합니다.

  6. 회색 세로 막대를 클릭하여 중단점을 설정합니다.

데이터베이스 단위 테스트를 디버깅하려면

  1. 테스트 뷰 창을 엽니다.

  2. 중단점을 설정한 데이터베이스 개체를 실행하는 Transact-SQL 스크립트의 테스트를 클릭합니다.

  3. 테스트 뷰 창의 도구 모음에서 선택 항목 디버그를 클릭합니다.

    데이터베이스 개체의 중단점에 도달할 때까지 테스트가 디버그 모드에서 실행됩니다.

  4. (선택 사항) 다른 디버그 창을 열려면 디버그 메뉴를 열고 을 가리킨 다음 중단점, 출력 또는 직접 실행을 클릭합니다.

참고 항목

기타 리소스

Transact-SQL 디버깅