当我使用 Capybara 和 Selenium Webdriver 进行一些自动化测试时,我遇到了使用 :not 属性选择没有类的元素的问题。
这是我们的元素示例“div”:
<div class="intro__card__container">
<div class="ic--card off" id="pic1"><img alt="Image1" src="/images/landing/intro/image1.jpg" class="ic--image"></div>
<div class="ic--card off" id="pic2"><img alt="Image2" src="/images/landing/intro/image2.jpg" class="ic--image"></div>
<div class="ic--card off" id="pic3"><img alt="Image3" src="/images/landing/intro/image3.jpg" class="ic--image"></div>
<div class="ic--card" id="pic4"><img alt="Image4" src="/images/landing/intro/image4.jpg" class="ic--image"></div>
<div class="ic--card off" id="pic5"><img alt="Image5" src="/images/landing/intro/image5.jpg" class="ic--image"></div>
<div class="ic--card off" id="pic6"><img alt="Image6" src="/images/landing/intro/image6.jpg" class="ic--image"></div>
<div class="ic--card" id="pic7"><img alt="Image7" src="/images/landing/intro/image7.jpg" class="ic--image"></div>
<div class="ic--card off" id="pic8"><img alt="Image8" src="/images/landing/intro/image8.jpg" class="ic--image"></div>
<div class="ic--card off" id="pic9"><img alt="Image9" src="/images/landing/intro/image9.jpg" class="ic--image"></div>
<div class="ic--card off" id="pic10"><img alt="Image10" src="/images/landing/intro/image10.jpg" class="ic--image"></div>
</div>
我使用这个选择器“.ic--card:not('.off')”来选择没有'off'类的元素。它适用于 jQuery,但在 Selenium 测试中无效。那么如何选择没有 '.off' 类的元素?
最佳答案
好的 - 再看一遍 ".ic--card:not('.off')".off 周围的 's 不是有效的 css 选择器,因为 .off 不会被引用为类选择器。使用
find(".ic--card:not(.off)")
应该工作正常
关于selenium - 如何通过不使用 :not()? 选择没有类的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35281087/