2

데이터 기반 테스트의 입력으로 사용해야하는 Excel에서 만든 XML 스프레드 시트 파일이 있습니다. Oledb 공급자와 파일을 구문 분석하는 불일치 때문에 내 테스트 메서드에서 DataSource 특성을 사용할 수 없습니다. DataSource 속성과 같은 방법으로 중첩 된 테스트 결과를 얻는 방법이 있는지 궁금합니다.사용자 지정 데이터 기반 MSTest

필자는 MSTest가 실패한 어설 션 예외를 포착하고 실패 컬렉션을 유지하는 것과 반대로 반복되는 각 행의 분석을 표시하는 것을 선호합니다. 나는 물론 테스트가 모든 행에 대해 실행되고 첫 번째 실패한 어설 션에서 실행을 종료하지 않기를 원합니다.

DataSource 속성을 통해 데이터를로드하려고하는 답변을 찾고 있지 않습니다. 덕분에

답변

3
  1. 각 테스트가 필요로하는 XML 스프레드 시트 파일을 배포 할 TestMethods의 각에 DeploymentItem를 사용합니다. 회의장에 배치 될 것입니다.

  2. TestInitilize 방법에서는 파일을 사용자의 DataSource (입력 데이터의 개체 목록 일 가능성이 있음)으로 구문 분석하는 데 Assemby의 경로를 사용합니다.

  3. TestMethod 님의 코드 캐치를 try/catch 블록에 넣으십시오. 예외가 발생하면 TestContext.WriteLine 메서드를 사용하여 오류를보고하거나 사용자 정의 결과 파일에 오류를 추가하십시오 (this과 같은 것).

  4. 클래스 수준 카운터를 사용하고 각 TestMethod의 끝에 카운터가 사용자 지정 데이터 원본 길이와 같은지 확인하십시오. 그렇지 않은 경우 하나씩 늘리고 테스트를 다시 실행하십시오.

+0

@ryan 더 많은 도움이 필요하면 몇 가지 코드를 제공 할 수 있습니다. – Schaliasos

관련 문제