【发布时间】:2018-07-24 23:13:48
【问题描述】:
我是 selenium java 的新手。
我正在测试的对话框中有一个颜色选择器。目标是为文本选择颜色:
<input id="EditorColorPicker1" type="color" style="width: 100%;">
我需要单击此对话框上的一种颜色,然后将其关闭:
提前致谢。 罗什尼
【问题讨论】:
我是 selenium java 的新手。
我正在测试的对话框中有一个颜色选择器。目标是为文本选择颜色:
<input id="EditorColorPicker1" type="color" style="width: 100%;">
我需要单击此对话框上的一种颜色,然后将其关闭:
提前致谢。 罗什尼
【问题讨论】:
它是一个 Windows 颜色选择器对话框,您可以使用 javascript 更改颜色,如下所示。这里无需点击颜色选择器输入框。
JavascriptExecutor jse=(JavascriptExecutor)driver;
jse.executeScript("document.getElementByid('EditorColorPicker1').value='#FFEEXX'");
【讨论】:
对于网页颜色选择器,您可以尝试以下代码:
WebElement img = dr.findElement(By.xpath("//img[@src='img_colormap.gif']"));
WebElement banner = img.findElement(By.xpath("//*[@id=\"colormap\"]"));
WebElement area = banner.findElement(By.xpath("//area[@alt='#003366']"));
JavascriptExecutor executor = (JavascriptExecutor)dr;
executor.executeScript("arguments[0].click();", area);
【讨论】:
您不能直接点击任何颜色,因为这是一个基于窗口的弹出窗口,为此,我建议使用任何窗口自动化工具,如 AutoIT。我会推荐使用 Sikuli,因为如果你有更多类似的场景,它会让你的任务更容易。 同时,我同意@Murthi,这是完成任务的完美方式。
【讨论】: