使用 selenium 驱动程序在鼠标悬停时测试工具提示
test tooltip on mouse over with selenium driver
我是使用 Selenium 进行测试的新手,我遇到了下一个问题。我想从饼图中测试工具提示。
我有下一个代码:
<g class="p0_tooltips">
<g id="p0_tooltip0" class="p0_tooltip" style="opacity: 0;" transform="translate(1960,1500)">
<rect rx="2" ry="2" x="-4" opacity="0.5" style="fill: rgb(0, 0, 0);" width="778" height="27" y="-20">
<text fill="#efefef" style="font-family: arial;">Tooltip</text>
当我将鼠标悬停在该选项上时,它会将 "text" 中的值显示为工具提示。我想证明的是,一旦我用鼠标导航,"opacity" 和 "transform" 的 de 值就会发生变化,但我无法做到这一点。我想证明一下,测试工具提示的内容不是空的。
我有下一个代码:
tooltip = svg.findElement(By.cssSelector(".p0_tooltips"));
tooltips = tooltip.findElements(By.cssSelector(".p0_tooltip"));
for(int i=0; i<tooltips.size(); i++){
hover = new Actions(driver);
tooltipTransform = tooltips.get(i).getAttribute("style");
System.out.println("OPACITY BEFORE: "+tooltipTransform);
coordinates = tooltips.get(i).getLocation();
hover.moveToElement(tooltips.get(i), coordinates.getX() - 10, coordinates.getY() + 10);
hover.build();
hover.perform();
Thread.sleep(2000);
System.out.println("OPACITY AFTER: "+tooltipTransform);
}
有人可以帮助我吗?
谢谢
执行悬停操作后,您需要再次调用 getAttribute()
:
hover.perform();
Thread.sleep(2000);
tooltipTransform = tooltips.get(i).getAttribute("style");
System.out.println("OPACITY AFTER: " + tooltipTransform);
我是使用 Selenium 进行测试的新手,我遇到了下一个问题。我想从饼图中测试工具提示。
我有下一个代码:
<g class="p0_tooltips">
<g id="p0_tooltip0" class="p0_tooltip" style="opacity: 0;" transform="translate(1960,1500)">
<rect rx="2" ry="2" x="-4" opacity="0.5" style="fill: rgb(0, 0, 0);" width="778" height="27" y="-20">
<text fill="#efefef" style="font-family: arial;">Tooltip</text>
当我将鼠标悬停在该选项上时,它会将 "text" 中的值显示为工具提示。我想证明的是,一旦我用鼠标导航,"opacity" 和 "transform" 的 de 值就会发生变化,但我无法做到这一点。我想证明一下,测试工具提示的内容不是空的。
我有下一个代码:
tooltip = svg.findElement(By.cssSelector(".p0_tooltips"));
tooltips = tooltip.findElements(By.cssSelector(".p0_tooltip"));
for(int i=0; i<tooltips.size(); i++){
hover = new Actions(driver);
tooltipTransform = tooltips.get(i).getAttribute("style");
System.out.println("OPACITY BEFORE: "+tooltipTransform);
coordinates = tooltips.get(i).getLocation();
hover.moveToElement(tooltips.get(i), coordinates.getX() - 10, coordinates.getY() + 10);
hover.build();
hover.perform();
Thread.sleep(2000);
System.out.println("OPACITY AFTER: "+tooltipTransform);
}
有人可以帮助我吗? 谢谢
执行悬停操作后,您需要再次调用 getAttribute()
:
hover.perform();
Thread.sleep(2000);
tooltipTransform = tooltips.get(i).getAttribute("style");
System.out.println("OPACITY AFTER: " + tooltipTransform);