これが私のテーブル構造です:
<form id="tableSection" enctype="application/x-www-form-urlencoded" action="/c4i-web-ABCDE/secured/user/users.xhtml" method="post" name="tableSection">
<input type="hidden" value="tableSection" name="tableSection">
<div class="clearfix">
<div id="tableSection:dataTableWrapped" class="ui-datatable ui-widget has-3-cols c4i-ui-dataTable ui-datatable-resizable">
<table role="grid">
<thead>
<tfoot>
<tbody id="tableSection:dataTableWrapped_data" class="ui-datatable-data ui-widget-content">
<tr class="ui-widget-content ui-datatable-even" aria-selected="false" role="row" data-rk="7c6c1565-4e8a-456a-8d89-30e2c93be5c3" data-ri="0" style="cursor: pointer;">
<td class="ac" role="gridcell" style="width: 350px;">
<div class="ui-dt-c">happy</div>
次の両方の Xpath を試しました。
"//div[@id='tableSection:dataTableWrapped']/tr[td//text()[contains(., 'happy')]]"
"//form[@id='tableSection']/div[@class*='ui-datatable']//td[text()='happy']"
どちらも Selenium2 で Stale Element エラーを返します。
org.openqa.selenium.StaleElementReferenceException: Element not found in the cache - おそらくページが検索されてから変更されました
行を見つけたら、単純な .click() コマンドを開始して選択します。どんな助けでも大歓迎です!