2017-05-11 10 views
1

데이터 기반 테스트 (vstest)에서 사용할 UTF-8 인코딩과 함께 csv 파일을 자동으로 생성합니다 (SourceText 클래스를 통해). 열 'IsProductCreated' 테이블에 속하지 않는 다음 TestContext는 데이터 기반 테스트를 위해 csv 파일의 첫 번째 열을 읽을 수 없습니다. Visual Studio 2017

는 System.ArgumentException, 항상 예외가 발생, 첫 번째 열 머리글을 찾을 수 찾을 수 없습니다.

수동으로 각 행의 시작 부분에 더미 열을 추가하면 테스트가 작동합니다.

TestContext 설정 :

[TestMethod] 
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "9C118DF7_AssignMaterialsToProductionOrderWhenNotReleased.csv", "9C118DF7_AssignMaterialsToProductionOrderWhenNotReleased#csv", DataAccessMethod.Sequential), 
DeploymentItem("..\\..\\MaterialAndContainer\\MaterialManagementTest\\_TestData\\9C118DF7_AssignMaterialsToProductionOrderWhenNotReleased.csv")] 

사용 예 : 내가 잘못 뭐하는 거지

productionOrderScenario.IsProductCreated = (DataDrivenReader.ReadBool(TestContext.DataRow["IsProductCreated"])); 

?

답변

0

내 SourceText 인스턴스의 인코딩을 명시 적으로 Encoding.Default로 변경했습니다. 그게 효과가있었습니다. 제 의견으로는 Encoding.Default가 기본값이 아닙니다. 인코딩이 없기 때문에 다른 인코딩을 시도하게 만들었지 만 UTF8이 올바른 것처럼 보였지만 그렇지 않았습니다.