我无法让selenium webdriver识别淡入模态的元素

时间:2013-05-07 14:44:20

标签: selenium webdriver

我正在测试一张表格。当我点击一个模态时,会出现一个div模态,背景淡出,这个新的模态淡入,允许您输入信息。由于某种原因,硒不会识别此模态中的元素。它没有被列为iframe所以我不确定我是否想要使用这个开关。

模态

<div id="addressModal-20f95ac4-8a83-4c02-862d-a42d60a74b04" class="modal hide fade in" 
style="display: block;" aria-hidden="false">

文字是模态的

<textarea rows="2"name="viewModel.MortgageForm.BorrowerInformationSection.Borrowers[0].Dependents.modalTextArea-addressModal-20f95ac4-8a83-4c02-862d-a42d60a74b04" id="modalTextArea-addressModal-20f95ac4-8a83-4c02-862d-a42d60a74b04" cols="20" class="span valid"></textarea>

1 个答案:

答案 0 :(得分:1)

可能有多个元素具有相同的DOM签名,而webdriver则选择了不属于当前用户视图的上下文。

解决方案:由于它不是iframe,因此您必须在模态框容器的上下文中找到该元素。您可以尝试以下方法找到textarea webelement:

  1. JQuery:

    $("div[id^='addressModal']:visible").find("textarea")
    
  2. WebDriver(Java):

    driver.findElement(By.cssSelector,"div[id^=addressModal] textarea")