我如何检查下拉字段禁用使用硒?

  • 本文关键字:字段 何检查 selenium xpath
  • 更新时间 :
  • 英文 :


我试图在selenium中编写一个函数来检查原因下拉框是否显示为禁用,但不能完全获得xpath正确。下拉菜单的代码是在pic中,我正在处理的函数是第二个(InputDisabled),基于它的工作第一个(SearchDisabled):

' public By SearchDisabled(string searchId) =>By.XPath("美元//div [@ id = ' {searchId} ']//div[包含(@class v-input——是禁用的)]");

public By InputDisabled(string inputId) =>By.XPath("美元//div [@ id = ' {inputId} ']//div[包含(@class v-input——是禁用的)]");">

输入tid为"ai-confirm-allergy- mode -reason"。我试过输入包含…' and '包含(@disabled, 'disabled'…)等等,但是我的xpath知识还不够丰富!

下拉代码

使用下面的代码

String value = driver.findElement(By.XPath("//input[contains(@id, 'ai-confirm-allergy')]").getAttribute("disabled");
Assert.AssertEquals(value, "disabled");

我不太明白你的问题。如果你想用xpath来定位一个元素,你可以用id;假设它是唯一的。so:

driver.findElement(By.xpath("//input[contains(@id, 'ai-confirm-allergy')]")

应该定位web元素。但是,您的SearchDisabled的xpath是定位一个div包含类'v-input——is-disabled'与另一个div的id为'{searchId}';同样的逻辑也适用于下一个。您的xpath正在尝试查找包含类"v-input——is-disabled"的div,该div位于使用输入id定位的另一个div中。我认为这个组合不能找到图片中高亮显示的元素。

最新更新