2017-12-05 9 views
0

우리는 원격에서 실행되도록 자동화를 설정하고 있으므로 빌드에 통합 할 수 있습니다 (전체 CI/CD 문제). 이것은 중요한 자동화 된 GUI 테스트 중 몇 가지로, 명백한 이유로 실행중인 활성 VM이 필요합니다. 이것들은 브라우저 테스트가 아니며 실제로는 Windows 애플리케이션을위한 자동화 된 테스트이므로 Selenium이 테이블로 가져 오는 지원은 우리를위한 것입니다.테스트 시작시 GUI 테스트를 실행하는 VM에 로그인

이제 도전 과제 - 원격 데스크톱 연결을 사용하여 VM에 로그인하지 않고도 테스트를 올바르게 실행할 수있게하려면 어떻게 VM을 가동시키고 실행할 수 있습니까? 현재 로컬 컴퓨터에서 해당 컴퓨터에 연결 한 다음 최소화해야합니다. 그런 다음 빌드를 시작할 수 있습니다. 그러나 나가면 마자 가상 컴퓨터가 다시 잠 깁니다.

VM이 내 컴퓨터와 완전히 독립적으로 작동하기를 원했기 때문에 여전히 내 컴퓨터에만 연결되어있는 것 같았 기 때문에 this 접근 방식에 회의적이었습니다. 회사의 거의 모든 사람이 자격 증명을 사용하여 컴퓨터에서 VM에 로그인 할 수 있습니다. 내가하고 싶은 것은 글로벌 TestStartup 동안 VM에 프로그래밍 방식으로 연결 한 다음 TearDown에서 연결을 끊는 것입니다. 가능한가요? 자동화 통합 프로세스를 통해 성공한 사람이 있었거나 비슷한 상황에 처해 있었습니까? LeanFT 및 NUnit이라는 도구를 테스트 러너로 사용합니다. .

+0

당신은 자동 로그인을 Sysinterrnals에서 보았습니까? https://docs.microsoft.com/en-us/sysinternals/downloads/autologon –

+0

@MoeGhafari 나는 그렇지 않습니다. 이것은 원격 컴퓨터에서 수행하는 일회성 설치와 같습니까? 아니면 로컬 컴퓨터에 설치 및 설정합니까? – Tree55Topz

+0

예, 원격 컴퓨터의 레지스트리에 한번 설정하면 컴퓨터가 부팅 될 때마다 자동으로 로그인됩니다. 매우 편리합니다 –

답변

1

테스트의 일부로 로그인하면 아이디어가 약간 깨지기 쉽고 불안정해질 수 있습니다. 여기

내가/절전/최대 절전 모드를 잠그지하려면 Windows

  • 사용하여 VM을 설정 한 모든 UI 자동화 도구 작동 설정 등
  • 피 RDC를 사용하여 (차례입니다 기능을 해제 할 수있는 경우에도 관리자 용)
  • VM 서버의 콘솔 뷰어 만 사용
  • VM 서버의 권한을 사용하여 해당 시스템에 대한 액세스를 제한하여 사용자와 팀이 상호 작용할 수 있도록합니다.

이것이 작동하는 이유입니다. RDP 연결을 끊으면 세션이 잠기고 자동화가 실패한다는 것을 이미 알게되었습니다. VM 콘솔 뷰어를 사용하면 기본적으로 시스템에 연결된 모니터를 켜고 끌 수 있습니다. 항상 잠자 지 않는 상태로 유지하면 테스트를 실행할 때 항상 사용할 수 있습니다.

우리는 LeanFT를 사용하고 있으며 테스트의 안정성을 높이기 위해 이전 실행에서 깨끗하게 닫히지 않은 길잃은 기울기 런타임을 제거하기 위해 실행중인 프로세스를 확인하는 설정 작업과 누락 된 응용 프로그램 테스트가 끝난 후 제대로 닫히지 않았습니다.

+0

하지만 좀 더해야 할 필요가 있다고 생각합니다. VM이 절대 잠금으로 설정되어 있더라도 연결이 끊어지면 GUI 제어권을 잃을 것입니다. – Tree55Topz

+1

VM 콘솔을 사용하면 '연결 끊기 '당신은 RDC와 마찬가지입니다. 실제로는 실제 화면을 켜거나 끄는 것과 같습니다. –

관련 문제