量角器在父级内找到元素

时间:2018-05-25 08:13:18

标签: angularjs protractor

我有一个量角器测试,我在其中创建一个用户,然后将其添加到用户表中。然后我想找到创建的用户并单击编辑/删除按钮。用户可以在任何行中,因此我不想将测试硬编码到特定行,以防它不在指定行中。

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>

用户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中的示例,它会找到页面上的第一个按钮,而不是父级内的那个按钮,任何人都可以帮忙吗?

0 个答案:

没有答案