Как работать с динамическим webtable в среде робота без использования python - PullRequest
0 голосов
/ 27 сентября 2019

Я попытался использовать код, упомянутый в ответе на этот вопрос: -

Мне нужно установить все флажки в табличных данных, пожалуйста, дайте мне знать, если я смогу сделать это лучше.

html:

<div class="col-sm-12">
    <table id="grddesignation" class="table display table-bordered dataTable no-footer dtr-inline" role="grid" aria-describedby="grddesignation_info" style="width: 0px;">
    <thead>
        <tr style="text-align: center;" role="row">
        <th style="text-align: center; width: 0px;" class="hidden sorting_asc" tabindex="0" aria-controls="grddesignation" rowspan="1" colspan="1" aria-label="EmpId: activate to sort column descending" aria-sort="ascending">EmpId</th><th style="text-align: center; width: 0px;" class="sorting" tabindex="0" aria-controls="grddesignation" rowspan="1" colspan="1" aria-label="Employee Id: activate to sort column ascending">Employee Id</th>
        <th style="text-align: center; width: 0px;" class="sorting" tabindex="0" aria-controls="grddesignation" rowspan="1" colspan="1" aria-label="Employee Name: activate to sort column ascending">Employee Name</th>
        <th style="text-align: center; width: 0px;" class="sorting_disabled" rowspan="1" colspan="1" aria-label="Sunday">Sunday</th>
        <th style="text-align: center; width: 0px;" class="sorting_disabled" rowspan="1" colspan="1" aria-label="Monday">Monday</th><th style="text-align: center; width: 0px;" class="sorting_disabled" rowspan="1" colspan="1" aria-label="Tuesday">Tuesday</th>
        <th style="text-align: center; width: 0px;" class="sorting_disabled" rowspan="1" colspan="1" aria-label="Wednesday">Wednesday</th><th style="text-align: center; width: 0px;" class="sorting_disabled" rowspan="1" colspan="1" aria-label="Thursday">Thursday</th><th style="text-align: center; width: 0px;" class="sorting_disabled" rowspan="1" colspan="1" aria-label="Friday">Friday</th>
        <th style="text-align: center; width: 0px;" class="sorting_disabled" rowspan="1" colspan="1" aria-label="Saturday">Saturday</th></tr>
    </thead>
    <tbody>
        <tr role="row" class="odd">
            <td class="hidden sorting_1" tabindex="0">
                <input id="wEmployeeID" class="form-control EmpCode hidden" name="EmpCode" value="962">962
            </td>
            <td>000971</td><td>TESTING TWO</td>
            <td>
                <input id="wsun" class="form-control wsun" type="checkbox" value="0">
            </td>
            <td>
                <input id="wmon" class="form-control wmon" type="checkbox" value="1">
            </td>
            <td>
                <input id="wtue" class="form-control wtue" type="checkbox" value="2">
            </td>
            <td>
                <input id="wwed" class="form-control wwed" type="checkbox" value="3">
            </td>
            <td>
                <input id="wthu" class="form-control wthu" type="checkbox" value="4">
            </td>
            <td>
                <input id="wfri" class="form-control wfri" type="checkbox" value="5">
            </td>
            <td>
                <input id="wsat" class="form-control wsat" type="checkbox" value="6">
            </td>
        </tr>
    </tbody>
</table>
</div>

1 Ответ

0 голосов
/ 28 сентября 2019

Вам нужно иметь базовые знания Python, чтобы начать работу с фреймворком робота.

Об обработке динамической таблицы - я предполагаю, что поле заголовка Employee Id будет иметь уникальное значение, и я строю xpath, используя его - следующеелинии должны сделать работу за вас с небольшим изменением, вы можете изменить его согласно вашему требованию -

*****  Test Case *****  
Launch browser and select checkbox 
  open browser    file:///C:/Users/devsurya/Desktop/temp.html    Chrome 

#wait until page loads the element  
  Wait Until Page Contains Element    //th[text()='Employee Id']/ancestor::thead/following-sibling::tbody//td[text()='000971']

#select the checkbox of sunday for employee id 000971
  select checkbox    //th[text()='Employee Id']/ancestor::thead/following-sibling::tbody//td[text()='000971']/following-sibling::td[2]/input    

вывод -

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...