是否可以使用Java单击网页中的某个点?

时间:2017-04-24 11:38:31

标签: java selenium-webdriver

我正在导入以下方法:

import helper.webdriver.ExtraMethods;
import helper.webdriver.JavascriptMethods;
import org.junit.Test;
import org.openqa.selenium.By;

我需要在一个看起来比CTA本身更大的span元素上单击(或clickAndWait),不会有任何子元素(除了文本)。

所以,我想知道是否有办法让我的IDE点击网页上的某个点(比如输入坐标,它会点击相应的位置)。

或者,我想知道是否可以直接点击实际文本(因为文本包含在CTA中,命令将验证)。

提前谢谢!

稍后编辑:

我尝试此操作的网址是http://www.chevrolet.com/current-deals

我的问题是我想点击"索取报价"任何车辆的CTA(点击任何"优惠"按钮后出现)。我进入了iframe,但我尝试用xpath和css点击,但是包含这个CTA的范围似乎比实际的CTA大。

我使用了以下import语句:

import helper.webdriver.ExtraMethods;
import helper.webdriver.JavascriptMethods;
import org.junit.Test;
import org.openqa.selenium.By;

我的实际代码是:

clickAndWait(resolve("xpath=(//*[@class='CTA btn_prim'])[1]"));

我也尝试过使用" tabindex"属性,每个项目都有一个特定的索引。

1 个答案:

答案 0 :(得分:1)

Robot r=new Robot();
r.mouseMove(x, y);
r.mousePress(InputEvent.BUTTON1_DOWN_MASK);
r.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);

这会创建一个机器人,它将鼠标光标(实际光标。你不应该移动鼠标)移动到x / y位置并执行单击左键。

x和y从屏幕的左上角开始。

这可能不是解决这个特定问题的任何解决方案的最佳解决方案,因为它可能非常糟糕,但它的工作。如果你知道一个更好的人随时告诉我