Share via


방법: 데이터 기반 단위 테스트 만들기

테스트 메서드에 값을 입력하는 대신 데이터 소스에서 값을 검색할 수 있도록 단위 테스트를 설정할 수 있습니다. 단위 테스트는 데이터 소스의 각 행에 대해 연속적으로 실행됩니다. 단위 테스트를 사용하면 한 번의 테스트 실행으로 다양한 입력을 쉽게 테스트할 수 있습니다.

데이터 소스에서 값을 검색하도록 단위 테스트를 설정하는 과정은 두 단계로 이루어집니다. 첫 번째 단계에서는 단위 테스트의 속성을 사용하여 단위 테스트 메서드와 데이터 소스 간의 연결을 만듭니다. 두 번째 단계에서는 메서드의 변수를 할당하여 데이터 소스의 적절한 열에서 값을 검색합니다. 이 작업은 테스트 메서드 자체의 논리에서 수행합니다.

데이터 기반 단위 테스트 예제

다음 그림에서는 두 개의 단위 테스트를 보여 줍니다. 첫 번째 단위 테스트는 두 개의 숫자를 추가하고 두 번째 단위 테스트는 이름과 성을 연결합니다. 이러한 단위 테스트는 데이터베이스에서 테스트를 위한 값을 검색하도록 설정되어 있습니다.

데이터 기반 단위 테스트

데이터 기반 단위 테스트 예제

  1. 이 줄에서는 DataSource 특성과 연결 문자열을 제공합니다. 연결 문자열의 정확한 정보는 사용 중인 데이터 소스의 종류에 따라 달라집니다. 이 예제에서는 Access 데이터베이스를 사용했습니다.

  2. 값을 데이터베이스 테이블에서 가져온 경우 적절한 형식으로 변환해야 합니다. 이 예제에서 첫 번째 단위 테스트는 데이터베이스의 값을 문자열로 변환하고 두 번째 단위 테스트는 이를 정수로 변환했습니다.

  3. TestContext.DataRow 속성은 데이터를 검색할 행을 단위 테스트에 알려 줍니다. 이 경우 첫 번째 행에서부터 데이터를 검색한 다음 테이블의 마지막 행에 도달할 때까지 순차적으로 검색합니다. 이 속성에 대한 자세한 내용은 TestContext를 참조하십시오.

  4. 열 이름은 데이터를 검색할 열을 단위 테스트에 알려 줍니다.

테스트 결과 창에서 테스트를 두 번 클릭하면 테스트에 사용된 각 데이터 행에 대한 자세한 결과를 볼 수 있습니다.

데이터 기반 단위 테스트의 세부 결과

데이터 기반 단위 테스트의 세부 결과

단위 테스트와 데이터 소스 간의 연결 만들기

이 단계는 데이터 소스를 사용하도록 단위 테스트를 설정하는 첫 번째 단계입니다. 이 단계에서는 단위 테스트 메서드와 데이터 소스 간의 연결을 만듭니다.

이 절차에서는 단위 테스트의 속성을 사용하여 연결을 만드는 방법을 보여 줍니다. 그러나 app.config 파일을 만들고 이 파일에 연결 정보를 추가하여 연결을 만들 수도 있습니다. app.config 파일을 사용하면 단위 테스트 자체를 변경하지 않고도 데이터베이스의 위치를 변경할 수 있다는 이점이 있습니다. app.config 파일을 만들고 사용하는 방법에 대한 자세한 내용은 연습: 구성 파일을 통한 데이터 소스 정의를 참조하십시오.

참고

데이터 연결 문자열에 익숙한 사용자는 속성 창을 사용하는 대신 [TestMethod()] 요소의 첫 번째 대괄호 다음에 데이터 연결 문자열을 입력할 수 있습니다.

[DataSource(여기에 데이터 연결 문자열 입력), TestMethod()]

데이터 소스에 단위 테스트를 연결하려면

  1. 데이터 소스를 사용할 테스트 메서드가 포함된 솔루션을 엽니다.

  2. 테스트 메뉴에서 을 가리킨 다음 테스트 뷰를 클릭합니다.

  3. 테스트 뷰 창에서 데이터 소스를 사용할 단위 테스트를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

  4. 속성 창에서 데이터 연결 문자열을 클릭한 다음 줄임표(…)를 클릭합니다.

  5. 새 테스트 데이터 소스 마법사의 지침에 따라 데이터 연결을 만듭니다.

    단위 테스트에서 [TestMethod()] 요소의 첫 번째 대괄호 뒤에 연결 문자열이 추가됩니다.

변수를 할당하여 데이터 소스에서 해당 값 가져오기

이 단계는 데이터 소스를 사용하도록 단위 테스트를 설정하는 두 번째 단계입니다. 이 단계에서는 메서드의 변수를 할당하여 데이터 소스의 적절한 열에서 값을 검색합니다.

변수에 데이터 소스의 값을 할당하려면

  1. 데이터 소스를 사용할 테스트 메서드가 들어 있는 단위 테스트 파일을 열고 테스트 메서드에서 변수를 찾습니다.

  2. 데이터 소스에서 가져오려는 각 변수에 대해 TestContext.DataRow["NameOfColumn"] 구문을 사용합니다.

참고

이전 예제에서 설명한 대로 데이터 소스의 데이터 형식을 테스트 코드 프로젝트의 데이터 형식으로 변환해야 할 수 있습니다.

단위 테스트 실행 및 결과 확인

다른 단위 테스트와 마찬가지 방법으로 데이터 기반 단위 테스트를 실행합니다. 테스트 결과 창에서 테스트를 두 번 클릭하면 테스트에 사용된 각 데이터 행에 대한 자세한 결과를 볼 수 있습니다.

데이터 기반 단위 테스트를 실행하고 결과를 보려면

  1. 단위 테스트의 아무 곳이나 마우스 오른쪽 단추로 클릭한 다음 테스트 실행을 클릭합니다.

  2. 테스트가 실행된 후 테스트 결과 창의 테스트를 두 번 클릭하여 각 테스트 반복의 결과를 데이터 기반 테스트 결과 창에 표시합니다.

참고 항목

참조

TestContext

개념

단위 테스트 분석

방법: 단위 테스트 만들기 및 실행