gpt4 book ai didi

java - 如何使用java selenium中的循环从项目网格中查找相同的元素?

转载 作者:太空宇宙 更新时间:2023-11-04 13:49:37 25 4
gpt4 key购买 nike

我试图通过以下代码查找“添加到购物车”按钮是否存在或未使用来自所有项目框的循环

<div class="page-body">
<div class="product-selectors">
<div class="product-filters-wrapper">
<div class="product-grid">
<div class="item-box">
<div class="item-box">
<div class="item-box">
<div class="item-box">
</div>

在每个项目框中添加以下代码

<div class="item-box">
<div class="product-item" data-productid="20">
<div class="picture">
<div class="details">
<h2 class="product-title">
<div class="product-rating-box" title="1 review(s)">
<div class="description"> 12x optical zoom; SuperRange Optical Image Stabilizer </div>
<div class="add-info">
<div class="prices">
<div class="buttons">
<input class="button-2 product-box-add-to-cart-button" type="button" onclick="AjaxCart.addproducttocart_catalog('/addproducttocart/catalog/20/1/1 ');return false;" value="Add to cart">
</div>
</div>
</div>
</div>
</div>

我需要发现所有项目框都存在“添加到购物车”按钮或不使用循环。如果有人可以帮忙,请

最佳答案

如果没有必要,我建议避免循环。除非明确需要这样做,否则您不需要执行循环来找出答案。您可以找到添加到购物车按钮的数量并与已知值进行比较

By byCss = By.cssSelector(".item-box>div input[value='Add to cart']");
int cartCount = driver.findElements(byCss).size();

if (cartCount != 4){
//fail the test
}

如果您恰好需要循环并检查输入按钮是否存在。

By itemBoxes = By.className("item-box");
By button = By.cssSelector("[type='button'][value='Add to cart']");

List<WebElement> webElementList = driver.findElements(itemBoxes);
for (WebElement element: webElementList){
//simply taking size if exist it will return 1
if (element.findElements(button).size() != 1){
//fail
}
}

关于java - 如何使用java selenium中的循环从项目网格中查找相同的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30446991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com