java - if/else 语句失败

标签 java selenium selenium-webdriver junit

我使用如下的 if/else 语句,但脚本在 Selenium WebDriver 中失败。在这里,对于一个测试用例,if 语句有效,但对于另一个测试用例,else 则不起作用。

if (driver.findElement(By.cssSelector("div.Tooltip__body.Tooltip__body--top")).isDisplayed()){
        driver.findElement(By.cssSelector("div.Tooltip__body.Tooltip__body--top")).click();
    }
    else
    {
        driver.findElement(By.cssSelector("div.Tooltip__body.Tooltip__body--bottom")).click();
    }

最佳答案

我不擅长Java,所以我把步骤放出来。尝试一下。 1.首先单独查找元素。 2. 现在检查 'top' 是否不为空,然后检查是否显示并可以继续下一步。下面的伪代码

IWebElement top= driver.findelement( put you locator top here )
 IWebElement bottom = driver.findelement( put you bottom here)
 if(top!=null)
 {
  if(top.IsDisplayed)
  {
   top.click()
  }
}
else
{
  if(bottom!=null)
  {
    bottom.click()
  }
}

关于java - if/else 语句失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34770182/

相关文章:

java - 为什么我不能在循环中打印用户提供的变量?

java - 如何获取特定元素 Selenium 的行号?

java - 通过Appium在Android操作系统上运行Selenium测试

javascript - Selenium 单击不会触发网站上的事件(python)

java - 如何使用 Selenium 中字段集中的图例定位单选按钮

java - OSGi 服务 : java. lang.UnsatisfiedLinkError 调用 DLL - 当 DLL 作为单元测试调用时没有错误

java - While(matcher.find()) - 错误 - 不起作用

Java:如何使用表达式语言方法聚合(min、max、avg)集合元素属性?

java - Webdriver/Selenium 2.0 API 不适用于 Firefox 4

javascript - 在 Firefox 中通过 Selenium 访问 ShadowRoot 返回 JavascriptException : Cyclic object value