2016-10-12 6 views
0

Image Compare 용 SikuliLibrary로 RobotFramework를 기반으로 자동화 테스트를 수행했습니다. Jenkins를 사용하여 외부 서버 (VM)에서 테스트를 실행합니다. VM - 이미지 비교 스크립트를 열면 작동합니다. 스크린 샷이 생성됩니다.VM (RDC)에서 젠킨스로 Sikuli 라이브러리로 RobotFramework 테스트 실행

VM 세션을 닫고 테스트를 실행하면 문제가 발생합니다. 다음은 키워드의 로그는 "경기 점수를 얻을"

INFO Could not find C:\Images\image.png INFO ${scoreFromImage} = 0.0

은 VM 세션이 활성화되지 않은 경우 (개방), "경기는 점수하기"를 비교하는 브라우저에서 스냅 샷을받을 수 없어, 같이가요 .

문제를 해결하는 방법이 있습니까?

강령 :

Compare Process Diagram Image [Arguments] ${ImageName} ${ImageScore} ${scoreFromImage} = Get Match Score ${ImagesDirectory}${ImageName}.png ${scoreToString} = Convert To String ${scoreFromImage} ${scoreNumberPrecision} = Get Substring ${scoreToString} 0 6 Run Keyword If ${scoreNumberPrecision} == ${ImageScore} Log Successful ELSE Log Fail

+0

흥미로운 부분은 RF와 Get Match Score가 아니라 스냅 샷을 생성하는 코드라고 생각합니다. selenium2library와 함께 RF를 사용하고 Jenkins 작업에서 Xvfb를 사용하려고 했습니까? –

+0

예, 저는 selenium2library와 스냅 샷을 만드는 키워드를'SikuliLibrary.Get Match Score'와 함께 사용하고 있습니다. Jenkins와 Xvfb에 대해서 - 아니, 나는 시도하지 않았다. – Rumen

+0

그럼 나는 시도해 보겠다. https://wiki.jenkins-ci.org/display/JENKINS/Xvfb+Plugin 화면이없는 스크린 샷은 없다. –

답변

0

:

VM이 "X"버튼에 의해 폐쇄되지해야

. 올바른 방법 : https://support.microsoft.com/en-us/kb/302801 실행 후 tscon.exe %SESSIONNAME% /dest:console이 포함 된 .bat 파일이 있는데 VM이 올바르게 닫혔습니다. 또한 "Jenkins slave jar"가 실행 중이어야합니다.

0

VM에 Sikuli 테스트 실행은 가능하지만 공개 세션을 유지해야합니다. 잠긴 PC에서 Sikuli 스크립트를 실행할 수 없습니다. VM을 닫으면 잠기고 테스트가 실행되지 않습니다. Sikuli는 비교 및 ​​클릭을위한 이미지가 필요합니다. 세션이 잠겨 있으면 이미지가 없어서 테스트를 실행할 수 없습니다. 이렇게 우리가 어떻게 극복 했습니까? : https://support.smartbear.com/viewarticle/85926/

이 URL은 설정을 참조하십시오. 이것을 적용하여 VM의 최소화 된 창으로 sikuli Test를 실행할 수 있습니다. (정지 할 수 있습니다 닫지 WM 창) 해결

+0

흠, 좋은 지적이지만, 그렇습니다. VM을 닫았을 때 여전히 테스트를 사용할 수 없습니다. – Rumen

+0

해결책을 찾았습니다. 대답은 아래에 있습니다 :) – Rumen