У меня есть тест на транспортир, где я создаю пользователя, а затем он добавляется в таблицу пользователей.Затем я хочу найти созданного пользователя и нажать кнопки редактирования / удаления.Пользователь может находиться в любой из строк, поэтому я не хочу жестко кодировать тест для конкретной строки, только если он не находится в указанной строке.
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,, он находит первую кнопку на странице, а не ту, которая находится внутри родительского элемента, кто-нибудь может помочь?