2009-04-08 3 views
13

여기에 문제가 있습니다 :
1. Visual Studio 솔루션에서 TestProject를 만듭니다.
2. .testrunconfig 파일을 열고 '배포'메뉴 항목에서 '배포 사용'확인란을 선택하십시오.
3. 이제 '디렉토리 추가'버튼을 클릭하고 파일이 들어있는 폴더를 추가하십시오.
4. 테스트 프로젝트를 실행합니다 (더미 테스트 사용).Visual Studio 테스트 프로젝트 - 배포시 폴더를 복사하지 않습니다.

이제 TestResults 폴더를 확인하십시오. 모든 파일이 최상위 수준으로 직접 복사 된 것을 볼 수 있습니다. 폴더 자체는 파일 아래에 복사됩니다. 이것은 시험하는 동안 내 길을 망쳐 놓는다. 아무도 아래의 파일 대신 폴더를 복사하는 방법을 말할 수 있습니까?

감사합니다.

+0

방금 ​​전에 말씀 드린대로 테스트 설정에서 '배포 활성화'를 선택 취소하여 새 디렉토리를 만드는 것을 중지하고 기존 bin \ Debug 디렉토리를 대신 사용하십시오. 훨씬 더 좋고 덜 버그가 있습니다! –

답변

17

[DeploymentItem] 속성을 사용하는 테스트 클래스에서 사용하십시오. 당신은 디렉토리를 지정할 수 있습니다

[TestClass] 
[DeploymentItem("blahblah\\myDirectory", "myDirectory")] 
public class MyTest 
{ 

} 

참고 : 테스트를 시작할 때

  • DeploymentItem가 매우 느립니다. 그것은 초당 2 파일을 복사하는 것 같습니다.
  • 테스트 기본 클래스에 특성을 지정할 수 있습니다. 그러나 하나 이상의 테스트 프로젝트가있는 경우에는 항상 작동하지 않습니다.
  • 아마도 [AssemblyInitialize]으로 표시된 방법이있는 TestClass에 지정할 수 있습니다. 그런 다음 한 번만 제공하면됩니다. 확실하지 않습니다. 시도해야합니다.
  • 원본 디렉터리는 솔루션 위치에 대한 상대 경로입니다. 이것은 거의 문서화되지 않았습니다.
+2

흠. 이를 위해서는 .testrunconfig 파일보다는 테스트 픽스처 클래스 내에서 하드 코딩이 필요합니다. 'Enable Deployment'를 선택하지 않고 모든 데이터 파일을 'Copy Always'로 설정 한 bin \ Debug 폴더 내의 모든 작업을 수행하려고합니다. 그 일을 맡아. 정보를 제공해 주셔서 감사합니다! – DeeStackOverflow

+2

"배포"를 해제하는 것이 간단합니다. 그러나 bin \ debug에있는 파일이 이전 빌드에서 가져 오는 위험을 고려해야합니다. 테스트는 컴퓨터에서만 실행/실패 할 수 있습니다. 그래서 지금 검사를 실행하기 전에 bin \ debug를 정리하십시오. –

+0

이 게시물은 나를 구해 줬습니다. 감사! – Jeremiah

0

다른 옵션은 원본 폴더 아래에 다른 폴더를 만들고 그 폴더가 out 디렉터리에 배포됩니다.

TestFolder/

TestFolder/TestDeployment/

그리고 다음 testrunconfig에 여전히 TestFolder 폴더와 TestDeployment 폴더가 아웃 디렉토리에 배포됩니다 선택

: 예를 들어, 당신은이 구조를 가질 수있다.

10

메모장에서 .testsettings 파일을 엽니 다. 지금, 당신은 모든 폴더가

내가 너무 오늘이 문제를 가지고
<DeploymentItem filename="FolderName\" outputDirectory="FolderName\" /> 
+1

이것이 내가 필요한 것입니다. 감사합니다. Visual Studio를 다시 시작해야 효과가 나타납니다. – Ciaran

+0

위의 답변에 대한 변형입니다. 파일 이름 = "폴더 이름 \"outputDirectory = "하위 폴더 이름 \"으로 올바르게 변환하려면 filename = "FolderName \ SubfolderName \"으로 변환해야했습니다. –

+0

감사합니다. VS2013에서도 동일한 해킹이 필요합니다. 왜 텍스트 편집기를 사용하여 outputDirectory를 지정해야하는지 궁금합니다. Microsoft는 testsettings 수정 대화 상자를 수정해야합니다. 받아 들여진 대답이 마음에 들지 않았습니다.이 사람은 더 깨끗합니다. –

0

<DeploymentItem filename="FolderName\" /> 

변경이 복사하는 것을 볼 수 있습니다. 나는 "deployment_files"라는 폴더를 필요한 폴더가 포함 된 프로젝트에 추가하여이 문제를 해결했습니다. 그런 다음 필요한 폴더를 "deployment_files"폴더에 넣습니다. 그런 다음 솔루션 탐색기의 "솔루션 항목"폴더 아래에 LocalTestRun.testrunconfig 파일을 열었습니다. testrunconfig 속성 창의 "배포"패널로 이동했습니다. "deployment_files"디렉토리를 배포 및 보일에 추가했습니다. 그 폴더가 테스트 결과 Out 폴더에 복사되었습니다.

관련 문제