티스토리 뷰

본문 내용은 Appium + JUnit 기반에서 진행된 내용입니다.

이전 포스트에 이어서 React-Native로 개발 된 앱 프로젝트에서 일부 Component가 XPath로 제어되지 않아 터치로 해결했었다.

그 중 드래그가 필요한 Picker UI에서 좌표로 드래그 동작을 구현한 방법이다.

 

int startX = 510; // 드래그 시작 지점의 X 좌표
int startY = 1065; // 드래그 시작 지점의 Y 좌표
int endY = 616; // 드래그 종료 지점의 Y 좌표

TouchAction dragAction = new TouchAction(driver);
dragAction.longPress(PointOption.point(startX, startY))
	.moveTo(PointOption.point(startX, endY))
    .release()
    .perform();

 

이전 포스트에서는 TouchAction의 press 메서드를 사용했었는데, 이번엔 길게 터치하고 드래그를 해야하니 longPress 메서드가 사용되었다.

그리고 시작 지점에서 이동 할 종료 지점을 moveTo 메서드로 지정하였다.

나는 세로로 드래그해야하기에 X 좌표는 그대로 사용했지만 드래그 할 방향에 따라 좌표를 달리 적용하면 된다.

 

728x90