Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在selenium webdriver中检查div下的项目_Javascript_Html_Selenium - Fatal编程技术网

Javascript 如何在selenium webdriver中检查div下的项目

Javascript 如何在selenium webdriver中检查div下的项目,javascript,html,selenium,Javascript,Html,Selenium,我需要检查div中具有以下xpath的项 项目的xpath类似于 项目1:-/*[@id='huc-last-upsell-rows']/div[1]/div[2]/div[1]/div/div/a/img 第2项:-/*[@id='huc-last-upsell-rows']/div[1]/div[2]/div[2]/div/div/a/img 第3项:-/*[@id='huc-last-upsell-rows']/div[1]/div[2]/div[3]/div/div/a/img 第4项:

我需要检查div中具有以下xpath的项

项目的xpath类似于

项目1:-
/*[@id='huc-last-upsell-rows']/div[1]/div[2]/div[1]/div/div/a/img

第2项:-
/*[@id='huc-last-upsell-rows']/div[1]/div[2]/div[2]/div/div/a/img

第3项:-
/*[@id='huc-last-upsell-rows']/div[1]/div[2]/div[3]/div/div/a/img

第4项:-
/*[@id='huc-last-upsell-rows']/div[1]/div[2]/div[4]/div/div/a/img

我怎么检查?有人能帮我吗?

你可以用

for(int i = 1; i<=4; i++){
    String expression = "//*[@id='huc-last-upsell-rows']/div[1]/div[2]/div["+ i+"]/div/div/a/img";
    Boolean isPresent = driver.findElements(By.xpath(expression)).size() > 0;
    if(isPresent){
       // click or do other action
    }
}
for(inti=1;i0;
如果(显示){
//单击或执行其他操作
}
}

check(检查)是什么意思?你想知道它们是否存在?你想从dom中检索这些元素,或者你想以某种方式标记它们?是的,我想检查项目是否存在,如果是,那么我想单击它。然后对其余项目进行相同的循环。请提供htmlor示例,使用WebEle已经存在的方法类似于
isDisplayed()
isPresent()
@karna的注释:我需要知道如何在div[]中循环更改xpath的元素.@Dude
isDisplayed
检查元素是否显示,它不检查元素是否存在。元素可能存在,但可以隐藏。现在知道Java webdrive api中的
isPresent
方法,您可以添加一些内容吗?@Karna很抱歉我弄糊涂了,它不是WebElement api中的正式元素。我自己实现了这个函数如果它看起来像你的:D@Dude我也做了类似的实现,想知道新版本是否有。