8

次の HTML では、Selenium Webdriver を使用してログイン値を取得する必要があります。

<div 
   roletitle="MD" 
   careteamrole="HOSPITALIST" 
   login="adamss" 
   isconsultctm="" 
   title="Adams Samuel" 
   style="" 
   class="assign_grid assign_grid_selected" 
   id="97">
</div>

私は次のことを試みましたが、失敗しました:-


WebElement getAssigneeLoginWebElement = ieDriver.findElement(By.cssSelector(".assign_grid assign_grid_selected"));

sAssignedCTMLoginId = getAssigneeLoginWebElement.getAttribute("login");


sAssignedCTMLoginId = ieDriver.findElement(By.className("assign_grid assign_grid_selected")).getAttribute("login");


sAssignedCTMLoginId = ieDriver.findElement(By.xpath("//*[@class='assign_grid assign_grid_selected']/@login[1]")).getText();

前もって感謝します

4

1 に答える 1

23
ieDriver.findElement(By.xpath("//div[@class='assign_grid assign_grid_selected']")).getAttribute("login");

また、使用しているロケーターがその 1 つの要素のみを戻していることも確認します。これを確認するには、同じことを使用して実行し、.findElements単一の結果のみが返されることを確認します。

HTML に非表示の要素が存在することはよくあることであり、ロケーターがそれらを検出している可能性があります。

于 2013-07-11T12:26:08.503 に答える