删除NG重复量angular器中的logging

所以我正在做量angular器和angular度的e2etesting,
我的第一个testing是在列表中添加一个元素,
现在我正试图删除它,而且我也遇到了麻烦

所以这是我需要做的:

  1. find我要删除的logging的名称
  2. 点击同一行的垃圾桶图标并将其删除
  3. 在出现的popup窗口上按确定
  4. 尽可能地避免使用By.css,并且更喜欢与angular度有关的所有东西(byBinding,model等)。 这是因为这部分应用程序最终会改变,因此我将不得不重做所有这些情况。

HTML:

<div class="list-group-item ng-scope" ng-repeat="item in teamList"> <span class="glyphicon glyphicon-user"></span> <span ng-bind="item.name" class="memberName ng-binding">nuevo Team</span> <a ng-click="editTeam(item._id)" class="hand-cursor"> <span class="glyphicon glyphicon-edit memberRemoveBotton"></span> </a> <a ng-confirm-click="Would you like to delete this item?" confirmed-click="deleteTeam(item._id)" class="hand-cursor"> <span class="glyphicon glyphicon-trash memberRemoveBotton"></span> </a> </div> 

JS:

 describe('Testing delete Item',function() { it('Should delete the Item that just got Inserted',function() { element(by.css('a[href="#!/item-create"]')).click(); //Opens up the Item dashBoard element.all(by.repeater('item in itemList')).then(function(table) { table.element(by.binding('item.name')).each(function(names) { console.log('the names',names.getText());//I'm trying to find the name of the item that just got inserted // is there like a nested chaining of elements in here ?? }); }); }); }); 

任何暗示如何解决这个问题的赞赏

 describe('Testing delete Item',function() { it('Should delete the Item that just got Inserted',function() { // Assume you know the name of the item you want to delete. var nameToDelete = 'some name'; // Get the row that has the name by using filter. element.all(by.repeater('item in itemList')).filter(function(row){ return row.element(by.css('.memberName')).getText().then(function(name){ return name === nameToDelete; }); }) // Now you should have one row. .get(0) // Get the row and click find the remove button. .element(by.css('.memberRemoveBotton')) .click(); // Make sure it was deleted. var names = $$('.list-group-item .memberName').getText(); expect(names).not.toContain(nameToDelete); }); }); 

让我知道如果它的作品。

感谢Andres,你的回答帮我解决了一些疑惑。

无论如何,这是答案,其中最麻烦的部分之一是popup窗口 ,让我们希望它不会后来刹车

 it('Should delete the Team that just got Inserted',function() { element(by.css('a[href="#!/team-create"]')).click(); //Opens up the Team dashBoard element.all(by.repeater('item in teamList')).filter(function(row) { return row.element(by.css('.memberName')).getText().then(function(name) { return name === teamName; }); }).first().element(by.css('.glyphicon-trash')).click(); testHelper.popUpHandler(ptor); element.all(by.css('.list-group-item .memberName')).each(function(list) { expect(list.getText()).not.toContain(teamName); }); });