使用ID和Curly Braces查找Webelement

时间:2014-05-06 09:18:38

标签: selenium-webdriver

我正在尝试使用Selenium WebDriver查找具有ID的表但无法执行此操作,收到错误如下:

无法找到元素

有人可以建议,我做错了什么?

<table id="{EB2E32F8-B236-42CD-9425-49BB4EA9DB01}-{A85091D3-69F3-419D-98EE-0FEBD1C3CC65}" class="ms-listviewtable" cellspacing="0" cellpadding="1" border="0"  onmouseover="EnsureSelectionHandler(event,this,11)" dir="none" o:webquerysourcehref="&XMLDATA=1&RowLimit=0&View=%7BA85091D3%2D69F3%2D419D%2D98EE%2D0FEBD1C3CC65%7D" xmlns:o="urn:schemas-microsoft-com:office:office" summary="CloneConfiguration" onmousedown="return OnTableMouseDown(event);" handledeleteinit="true">

我正在尝试使用ID

找到该表
driver.findElement(By.id("{EB2E32F8-B236-42CD-9425-49BB4EA9DB01}-{A85091D3-69F3-419D-98EE-0FEBD1C3CC65}"));

任何想法?

2 个答案:

答案 0 :(得分:0)

似乎id不是静态的。你可以尝试通过classname获取它。即

driver.findElement(By.className(&#34; MS-listviewtable&#34));

答案 1 :(得分:0)

您可以尝试xpath使用下面的代码片段找到元素:

代码段1:

driver.findElement(By.xpath("//table[@class='ms-listviewtable']"));

代码段2:

driver.findElement(By.xpath("//table[@summary='CloneConfiguration']"));

代码段3:

driver.findElement(By.xpath("//table[@onmousedown='return OnTableMouseDown(event);']"));

代码段4:

driver.findElement(By.xpath("//table[@onmouseover='EnsureSelectionHandler(event,this,11)']"));