X Y使用Selenium的Point and Dimension类在移动屏幕上进行WebElement的坐标是错误的

时间:2016-12-05 09:11:57

标签: java selenium-webdriver appium

当我使用Selenium webdriver的Point and Dimension Classes在移动屏幕上找到Web元素的x,y坐标时。它使坐标值不同。

例如:下面是WebElement的XPath和代码片段

WebElement plusYouXp = driver.findElement(By.xpath(“.//*[@id='p_p_id_QuoteHomeBTemplate_WAR_PeDevportlet_']/div/div/div[2]/form/ul/li[2]/div/div/ul/li[1]/h1/span"));

System.out.println("plusUxpath: "+plusYouXp.getText()); 

Point p = plusYouXp.getLocation();
Dimension size = plusYouXp.getSize();
int xAxis = p.x + (size.width/2);
int yAxis = p.y + (size.height/2);
System.out.println(xAxis+" -- “+yAxis);

changeContextToNativeAppView();
Thread.sleep(2000);

driver.tap(1, xAxis, yAxis, 1);

在这里,它没有点击正确的x,y值作为X&这里计算Java代码后的Y值是180& 495

另一方面,当我使用开发者选项中的指针位置

找出坐标时

如下图所示:

enter image description here

在图2中(如上所示):它给出了正确的坐标,如下面突出显示的部分所示

enter image description here

这个坐标适用于此命令

driver.tap(1,554,1067,200);

我想知道,如何使用Appium或Selenium的Java代码找出确切的坐标。

0 个答案:

没有答案