我有一个图像在一定的宽度尺寸后变得不可见。我不确定如何使用硒进行测试。
<img id="removeimg" class="col-md-5" src="images/abc-image.png" alt="abc">
以下是我的css。
@media only screen and (max-width: 991px) {
#removeimg {
display: none;
}
我有以下测试java。但我不确定这是否正确。
@BeforeClass
public static void setUp() throws Exception {
driver = new RemoteWebDriver(new URL(System.getProperty("webDriverUrl")), DesiredCapabilities.firefox());
driver.manage().window().setSize(new Dimension(991, 1100));
baseUrl = System.getProperty("baseUrl");
driver.get(baseUrl + "/");
}
@Test
public void testImageNotPresent(){
driver.findElements(By.id("removeimg");
}
更新
我已经在测试java中添加了更新。
@Test
public void testImageNotPresent(){
driver.findElement(By.id("removeimg")).isDisplayed();
assertFalse(isElementPresent(By.id("removeimg")));
}
但跑步时失败了。如果图像没有显示在页面上,我希望它通过测试,但如果显示则会失败。
答案 0 :(得分:0)
只需组合setSize()
和isDisplayed()
:
WebElement img = driver.findElement(By.id("removeimg"));
driver.manage().window().setSize(new Dimension(991, 1100));
System.out.println(img.isDisplayed());
driver.manage().window().setSize(new Dimension(800, 600));
System.out.println(img.isDisplayed());
如果您对selenium webdriver如何确定可见性感兴趣,请访问此规范:
答案 1 :(得分:0)
管理以使其正常工作。
@Test
public void testImageNotPresent(){
WebElement img = driver.findElement(By.id("removeimg"));
assertEquals("none", img.getCssValue("display"));
}