sqlpackage.exe를 사용하여 단위 테스트를 실행하는 동적 데이터베이스를 만듭니다. 이 작업은 로컬에서 100 % 수행되지만 TFS에서는 수행되지 않습니다. 모든 유닛 테스트는 locahost \ sqlexpress에 통합 보안을 사용합니다. TFS는 임의로 sqlpackage.exe가 다음 오류를 반환하도록합니다.sqlpackage.exe "데이터베이스를 열 수 없습니다"임의로 발생합니다.
단위 테스트의 경우 here으로 설명한 패턴을 사용하고 있지만 nhibernate의 스키마 내보내기 기능과 반대되는 sqlpackage와 함께 dacpac을 사용하기 위해 일부 수정이 필요합니다.
sqlpackage error : *** Could not deploy package.
sqlpackage error : Cannot open database "MessagesRepositoryTests" requested by the login. The login failed.
sqlpackage error : Login failed for user 'DOMAIN\TFSService'.
기타 (임의의) 오류에는 대상 모델 가져 오기에 실패했음을 나타내는 다른 줄이 있습니다.
sqlpackage error : *** Could not deploy package.
sqlpackage error : Failed to import target model MessagesRepositoryTests. Detailed message Cannot open database "MessagesRepositoryTests" requested by the login. The login failed.
sqlpackage error : Login failed for user 'DOMAIN\TFSService'.
sqlpackage error : Cannot open database "MessagesRepositoryTests" requested by the login. The login failed.
sqlpackage error : Login failed for user 'DOMAIN\TFSService'.
"DOMAIN \ TFSService"에 모든 서버 역할 (sysadmin, public 등)이 부여되었습니다.
누구나 내 테스트를 통해 이것이 간헐적으로 나타나는 이유를 알 수 있습니까? 이것은 TFS 빌드 자동화 유닛 테스트에서만 발생합니다.