我對Geb相當陌生,並且試圖點擊特定的表格列/行。我怎樣才能點擊特定的表格行使用Geb
例如我想找到並點擊名爲「刪除」的鏈接名爲foo的行。當然,沒有表格編號類別或名稱可供選擇,以增加這一難度。任何幫助表示讚賞
爲表== HTML
<div class="k-grid-header-wrap">
<table role="grid">
<colgroup>
<thead role="rowgroup">
<tr role="row">
<th id="564a14e5-657d-4dd4-babe-0d13d56fb7d1" class="k-header ng-scope" data-index="0" data-title="Criteria Name" rowspan="1" data-field="name" role="columnheader" data-role="columnsorter">
<a class="k-link">Criteria Name</a>
</th>
<th id="4f9e5c37-ac63-4e2b-a4ba-a8c5d3673179" class="k-header ng-scope" data-index="1" data-title="Start Date" rowspan="1" data-field="startDateTime" role="columnheader" data-role="columnsorter">
<th id="25ef77e5-6d6e-4376-9bf2-fea1becfabe9" class="k-header ng-scope" data-index="2" data-title="End Date" rowspan="1" data-field="endDateTime" role="columnheader" data-role="columnsorter">
<th id="41725a3a-d62e-43e2-ac81-5008da54ca74" class="k-header ng-scope" data-index="3" data-title="Location Name(s)" rowspan="1" data-field="locationNames" role="columnheader" data-role="columnsorter">
<th id="7c719826-0c9a-4751-bf64-344e0885e237" class="k-header ng-scope" data-index="4" data-title="Classification(s)" rowspan="1" data-field="classifNames" role="columnheader" data-role="columnsorter">
<th id="d7abbc0a-ea63-4b2f-8c79-44ca133d2e85" class="k-header ng-scope" data-index="5" data-title="Employee Name(s)" rowspan="1" data-field="empNames" role="columnheader" data-role="columnsorter">
<th id="17a9317e-30f5-4a30-8822-ff3b302e0071" class="k-header ng-scope" data-index="6" rowspan="1" role="columnheader"></th>
<th id="c2f499a2-fffa-4994-98f4-833e4d844cfc" class="k-header ng-scope" data-index="7" rowspan="1" role="columnheader"></th>
</tr>
</thead>
</table>
</div>
<div class="k-grid-content">
<table role="grid">
<colgroup>
<tbody role="rowgroup">
<tr class="ng-scope" role="row" data-uid="dc5a6a0e-7fec-45d7-9978-25e9af65bbd7">
<tr class="k-alt ng-scope" role="row" data-uid="aee1377f-0c41-4e6e-9054-25cbb564cb00">
<td role="gridcell">
<span class="ng-binding" ng-bind="dataItem.name">Crit_12_30_17</span>
</td>
<td role="gridcell">12/4/2017 12:00 AM</td>
<td role="gridcell">12/29/2017 11:59 PM</td>
<td role="gridcell">
<td role="gridcell">
<td role="gridcell">
<td role="gridcell">
<span>
<a ng-click="selectCriteria($event)" style="cursor: pointer;">Select Criteria</a>
</span>
</td>
<td role="gridcell">
<span>
<a ng-click="deleteCriteria(683)" style="cursor: pointer;">Delete</a>
</span>
</td>
</tr>
<tr class="ng-scope" role="row" data-uid="309c009d-08a8-4a7c-bb2c-fef5a295e72d">
<td role="gridcell">
<span class="ng-binding" ng-bind="dataItem.name">my_saved_criteria</span>
</td>
<td role="gridcell">7/18/2017 6:32 AM</td>
<td role="gridcell">7/21/2017 6:32 AM</td>
<td role="gridcell">
<td role="gridcell">
<td role="gridcell">
<td role="gridcell">
<span>
<a ng-click="selectCriteria($event)" style="cursor: pointer;">Select Criteria</a>
</span>
</td>
<td role="gridcell">
<span>
<a ng-click="deleteCriteria(729)" style="cursor: pointer;">Delete</a>
</span>
</td>
</tr>
<tr class="k-alt ng-scope" role="row" data-uid="fabed2df-b5c6-45dd-8595-e411e70c6594">
<td role="gridcell">
<span class="ng-binding" ng-bind="dataItem.name">foo</span>
</td>
<td role="gridcell">7/18/2017 12:00 AM</td>
<td role="gridcell">7/19/2017 11:59 PM</td>
<td role="gridcell">
<td role="gridcell">
<td role="gridcell">
<td role="gridcell">
<span>
<a ng-click="selectCriteria($event)" style="cursor: pointer;">Select Criteria</a>
</span>
</td>
<td role="gridcell">
<span>
<a ng-click="deleteCriteria(730)" style="cursor: pointer;">Delete</a>
</span>
</td>
</tr>
</tbody>
</table>
感謝您的詳細解釋。我看到,如果我能得到這個工作。 –
@DennisFerguson對,沒問題。如果您還沒有這樣做,請查看[Navigator API](http://gebish.org/manual/current/api/geb/navigator/Navigator.html),您可以將返回Navigators的方法鏈接到一起遍歷HTML。請記住,多元素導航器也是可迭代的。嘗試利用HTML – switch201
中的父/子關係謝謝你們倆:) –