2013-10-16 5 views
0

TestNG에서 Maven Surefire를 통해 실행되는 테스트를 작성했습니다. 테스트에는 많은 데이터베이스 업데이트와 삽입이 있으며 유효하지 않은 데이터로 인해 삽입 또는 업데이트를 수행 할 수없는 보고서를 만들고 싶습니다. 이를 위해 ID와 예외 메시지를 추적 할 CSV 파일을 만들고 싶습니다. 이 파일을 내 프로젝트 (및 모든 하위 프로젝트)의 대상 디렉토리에 생성하고 싶습니다. 어떻게해야 maven으로부터 설정을 얻을 수 있고, 모든 것을 함께 가질 수 있도록 디렉토리를 사용할 수 있습니까? 파일 경로를 하드 코딩하고 싶지 않습니다. Maven의 테스트에서 사용자 정의 파일을 만드는 방법

당신은 주위에 다른 방법을 생각해야 필립

+0

이해가 안됩니다. INSERT 또는 UPDATE를 실행하는 TestNG 테스트를 실행하면됩니다. 따라서 이러한 작업 중 하나가 실패하면 테스트가 실패해야합니다. 그런 경우에 슈어 파이어 (Surefire) 테스트 보고서에 직접 실패가보고됩니다. 또는 테스트 실패와 효과적인 운영 실패 사이의 연관성에 문제가 있습니까? – Riduidel

+0

문제는이 프로젝트에서 전 개발자가 단위 테스트를 사용하여 DB 마이그레이션을 구현했기 때문입니다 (이유는 모르겠지만 변경할 수 있다면 입력 할 수 없기 때문입니다). 따라서 아마도 50 개의 테스트가 있으며 각각은 실제로 테스트하지 않고 다른 API로부터 데이터를 받아 DB에 저장합니다. 그러나 때로는 데이터가 잘못되어 "테스트"에 실패한 예외가 발생합니다. 이 데이터에 대한 일종의 로거를 구현하고 테스트를 계속하고 싶습니다. 그렇지 않으면 테스트 실행 -> 데이터 오류보고 -> 다시 실행으로 수년간 붙어 있습니다. –

답변

0

, 감사 : 어떤 정보해야하는 메이븐 푸시/내 테스트 (대신 : 내가 메이븐에서 정보를 끌어 방법)에 대한. 하나의 옵션 : test.propertiessrc/test/resources 아래에 만들고 outputDirectory = ${project.build.testOutputDirectory}을이 파일에 추가하십시오. 당신의 pom.xml에서 는

<build><testResources> 
    <testResource> 
    <directory>src/test/resources</directory> 
    <filtering>true</filtering> 
    <testResource> 
...etc 

는 이제 클래스 경로에서이 파일을 읽고 테스트에서 사용할 수 있습니다 지정합니다.

관련 문제