2017-09-15 7 views
0

Visual Studio 팀 서비스 (VSTS)를 사용하여 자동 배포 한 후 작업 할 셀레늄 종단 간 테스트를받는 데 문제가 있습니다.Visual Studio 팀 서비스에서 배포 한 후 Selenium 테스트를 실행하는 방법

빌드 아티팩트를 생성하는 빌드 작업이 있습니다. 이것은 VSTS에서 트리거되지만 온 프레미스 빌드 서버에서 실행됩니다. 온 프레미스 개발 웹 서버에 배포하는 배포 작업이 있습니다. 이 모든 것은 빌드 후에 실행되는 단위 테스트를 포함하여 작동합니다.

배포 후에 문제가 발생하면 테스트를 추가하려고합니다. 테스트는 빌드 서버에서 실행되고 dev 서버 웹 사이트를 가리 킵니다. 배포에는 두 단계가 있습니다. 배포 및 다음 빌드 서버에서 빌드 에이전트를 사용하여 테스트 어셈블리 작업을 실행하는 에이전트 단계. 문제는 테스트 dll이 빌드 아티팩트에 포함되지 않아 테스트 프로세스가 실행될 때 절대로 발견되지 않는 것 같습니다. 다음과 같이 setup us를 배포하십시오.

Deployment with test assemblies open

나는 적절한 장소에있는 파일을 복사하는 것 같다 빌드 정의에 게시 유물 전에 복사 파일을 가지고 있지만 그들은 zip 파일 가공품에 포함되지 않습니다. 나는 여기에 여러 웹 사이트와 게시물을 보았습니다. 그러나 나는 아직도이 일을 할 수있는 중요한 지식이 빠져있는 것처럼 보입니다. 그 감사 있도록 권장 로그의

Build def with copy open

+0

OneDrive에서 세부 빌드 및 로그 파일을 공유 할 수 있습니까? (system.debug 변수를 true로 설정하고 정의를 해제하려면 system.debug 변수를 추가 한 다음 빌드를 대기열에 넣고 릴리스를 시작하고 로그를 공유하십시오) –

+0

테스트 어셈블리 이름은 무엇입니까? 파일 복사 태스크의 컨텐츠는'* Selenium * .dll'이지만 Visual Studio Test 태스크의 테스트 어셈블리는'* test * .dll '입니다. 반면에 Release의 BuildConfiguration 변수 값은 무엇입니까? (기본적으로 BuildConfiguration 변수는 없습니다.) –

+0

테스트 용 DLL은 seleniumtests.dll로 지정되므로 두 가지 검색 패턴 모두에서 선택됩니다. 그 이유는 셀레늄이고 다른 하나는 그 파일을 복사하고 싶지만 나중에는 다른 파일을 복사 할 수 있기 때문이 아닙니다. 모든 곳에서 문자열 테스트가있을 것입니다. 빌드 구성 변수가 미리 정의되어 있습니다. https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/variables?tabs=batch –

답변

0

를 사용하여 도움을했다.

나는이 작업을 할 수있었습니다. 셀레늄 테스트를 별도의 솔루션으로 분리하고이를 자체적으로 빌드 아티팩트로 별도로 만들었습니다. 그런 다음이를 배포의 에이전트 작업에 추가했습니다. 이것은 효과가 있었다. 지금 정렬해야하는 유일한 방법은 테스트 DLL을 찾기위한 올바른 검색 경로입니다. 그 순간에 내가 좋아할만큼 동적 인 것은 아닙니다. 나는 그것을 바로 잡을 때까지 그것에 대한 곡을 연주 할 수있다.

본인은 원래의 문제를 해결하기보다는 해결해야한다고 생각하지만 필요와 시간이 필요합니다. 나는 주된 솔루션에서 끝까지 UI 테스트를 끝내는 것이 어쨌든 의미가 있지만 의심 할 여지없이 다른 사람들이 다르게 생각할 수도 있다고 생각한다.

모두에게 감사드립니다.