boolean text = driver.findElement(By.cssSelector(".sr_ctext>b")).isDisplayed();
System.out.println(text);
當過.sr_ctext>b
沒有找到,套房停止,當找到該元素,成功則返回true
假的。返回值從isDisplayed方法
我希望當元素沒有找到時,它應該返回false在文本變量不只是停止代碼。
boolean text = driver.findElement(By.cssSelector(".sr_ctext>b")).isDisplayed();
System.out.println(text);
當過.sr_ctext>b
沒有找到,套房停止,當找到該元素,成功則返回true
假的。返回值從isDisplayed方法
我希望當元素沒有找到時,它應該返回false在文本變量不只是停止代碼。
然後,您應該在第一步中獲取WebElement,並且只有在得到的結果不爲null時才檢查isDisplayed。另一種解決方案是將代碼放在try/catch塊中:
boolean text;
try
{
text = driver.findElement(By.cssSelector(".sr_ctext>b")).isDisplayed();
}
catch (NoSuchElementException e)
{
text = false;
}
System.out.println(text);
代碼在試圖找到不存在的元素時停止。因此,它是更好地看到該元素是否存在,
boolean isPresent = driver.findElements(By.cssSelector(".sr_ctext>b")).size() > 0;
if(isPresent==true){
boolean text = driver.findElement(By.cssSelector(".sr_ctext>b")).isDisplayed();
System.out.println(text);
}
else{
text=isPresent; //false, in your case
}
try
{
text = driver.findElement(By.cssSelector(".sr_ctext>b")).isDisplayed();
}
catch (Exception NoSuchElementException)
{
}
只需追加嘗試捕捉處理異常。