Транспортир находит элемент внутри родителя - PullRequest
0 голосов
/ 25 мая 2018

У меня есть тест на транспортир, где я создаю пользователя, а затем он добавляется в таблицу пользователей.Затем я хочу найти созданного пользователя и нажать кнопки редактирования / удаления.Пользователь может находиться в любой из строк, поэтому я не хочу жестко кодировать тест для конкретной строки, только если он не находится в указанной строке.

html

<tr ng-repeat="user in users | orderBy:sortType:sortReverse | filter:query track by $index">
    <td class="text-center" title="{{$index + 1}}"><span class="section-index" id="index">{{$index + 1}}</span></td>
    <td title="{{user.username}}">{{user.username}}</td>
    <td title="{{user.email}}">{{user.email}}</td>
    <td title="Role">
        <span class="label" ng-class="{'admin': user.role.name == 'ROLE_ADMIN',
                                        'user': user.role.name == 'ROLE_USER', 'trainer': user.role.name == 'ROLE_TRAINER',
                                        'reviewer': user.role.name == 'ROLE_REVIEWER'}">
                                        {{user.role.name | roleFilter: true}}
        </span>
    </td>
    <td title="Created">{{user.creationDate | date:"dd MMM yyyy"}}</td>
    <td class="text-center" title="Edit">
        <span class="btn-details standard pull-right" ng-click="editUserClicked(user.id)">Edit</span>
    </td>
    <td title="Delete">
        <span class="btn-details warning pull-right" ng-click="deleteUserClicked(user)">Delete</span>
    </td>
</tr>

user-spec.js

var editedUserCell = element(by.css('td[title="' + EDITED_EMAIL + '"]')).getWebElement();
var deleteButton = editedUserCell.getDriver().findElement(by.css('[ng-click="deleteUserClicked(user)"]'));

Используя пример из http://www.protractortest.org/#/api?view=webdriver.WebElement.prototype.getDriver,, он находит первую кнопку на странице, а не ту, которая находится внутри родительского элемента, кто-нибудь может помочь?

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