Selenium Java - 如何在没有 ID 的情况下单击元素? [英] Selenium Java - How to click on an element without having it ID?

查看:26
本文介绍了Selenium Java - 如何在没有 ID 的情况下单击元素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试通过 Xpath 或 Id 单击单选按钮.我使用 Google Developer Tool 检查了该元素,并获得了以下详细信息:

  1. 元素名称:

  2. Xpath:/html/body/div[9]/div/div/div[3]/div[3]/div[1]/div/ul/li[2]/span/label[1]

我想知道如何对代码说它必须点击那个单选按钮?

解决方案

避免使用绝对 xpath,因为 UI 中的一个小改动就会导致你的代码发生很多变化.对于您的问题,以下 xpath 将起作用.

driver.findElement(By.xpath("//label[text()='110V']")).click();driver.findElement(By.xpath("//label[contains(@class,'110v')]")).click();

I'm trying to click in a radio button by it's Xpath or Id. I inspected the element with Google Developer Tool and was able to get below details:

  1. Element Name: <label for="1346_Voltagem_0" class="dimension-Voltagem espec_0 skuespec_110v skuespec_Voltagem_opcao_110V skuespec_Voltagem_opcao_110v">110V</label>

  2. Xpath: /html/body/div[9]/div/div/div[3]/div[3]/div[1]/div/ul/li[2]/span/label[1]

I would like to know how to say to the code that it has to click on that radiobutton?

Click here for the page where I want to click the radioButton. Also, please refer the below screenshot for the exact element

解决方案

Avoid using absolute xpaths as a small change in the UI will cause a lot of changes to be made in your code. For your question, the following xpaths will work.

driver.findElement(By.xpath("//label[text()='110V']")).click();

driver.findElement(By.xpath("//label[contains(@class,'110v')]")).click();

这篇关于Selenium Java - 如何在没有 ID 的情况下单击元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆