2016-05-31 8 views
0

sikuli를 처음 사용했습니다. 내 Java Spring 독립 실행 형 응용 프로그램의 기능 테스트 자동화에 사용하고 있습니다. 화면의 여러 위치에서 동일한 이미지 세트 (로고)를 사용하고 있습니다. 응용 프로그램 데이터에 따라 동적으로 생성됩니다. 이 경우 어떻게하면 UI의 특정 버튼/요소를 찾아서 클릭 할 수 있습니까? 예 : 좋아요, 공유, 댓글 텍스트/이미지가 여러 번 페이스 북 페이지에 있습니다. 특정 단추를 클릭하는 방법입니다. (페이스 북은 단지 예일뿐입니다) 제 응용 프로그램과 비슷한 솔루션을 원합니다.sikulix를 사용하여 동일한 로고, UI 요소를 찾는 방법

+0

달성하려는 목표와 문제점은 명확하지 않습니다. 노력하고있는 것이 있습니까? 작동하지 않습니다. 자세한 내용을 입력하십시오. –

답변

0

동일한 이미지 또는 UI 요소가 같은 페이지에 여러 번 나타나는 경우를 생각해 봅니다. 한 요소에서 다른 요소를 제외하고 한 요소에서 요소를 지정하려면 어떻게해야합니까?

이 작업을 수행하는 빠르고 쉬운 방법은 가능한 한 많은 창을 캡처하고 클릭 한 후 괄호 안에있는 이미지를 클릭하는 것입니다. 파일 읽기, 일치하는 미리보기 및 대상 오프셋이있는 창이 열립니다. 타겟 오프셋을 클릭하고, 마우스 휠을 사용하여 확대하고, 클릭하려는 그림의 정확한 점을 클릭하십시오.

다른 click() 명령을 사용하면 캡처 한 이미지의 여러 위치를 클릭 할 수 있으며 새 사진이 필요하지 않은 상태에서 각 click() 명령에 대한 타겟 오프셋을 설정할 수 있습니다.

이 이미지를 사용하면 64 개의 click() 명령에 대한 오프셋을 설정할 시간이 주어진다면 보드의 모든 사각형을 클릭 할 수 있습니다. http://files.chesscomfiles.com/images_users/tiny_mce/cigoL/Chessboard.png

더 어려운 해결책은 영역을 설정하고 일치하는 사진을 찾기 위해 영역을 검색하는 것이지만, 지역에 대한 자세한 내용과 아래의 확인 링크를 설정하는 것이 좋습니다. 건배! 당신이 (뉴스 피드에 전체 게시물을 커버하는 사각형을 상상) 페이지의 상단 게시물에 초점을 setROI()를 사용할 수 있습니다 귀하의 FB의 예를 바탕으로

http://sikulix-2014.readthedocs.io/en/latest/index.html

0

거기에서 나는 루프 것 :

if exists(profile pic): 
     click(like button) 
    elif exists(profile pic 2): # If you are testing more than one user 
     click(like button) 
    else : type(Key.DOWN) #repeat as needed 

ROI에 다음 게시물을 가져 오는 것은 까다로운 일일 수 있지만 WHEEL_DOWN을 사용하면 시스템에서 각 휠을 클릭하여 이동 한 행을 조정할 수 있습니다.