2017-09-12 17 views
0

각도기를 사용하여 페이지 매김의 다른 페이지를 탐색하는 방법을 안내해 드리겠습니다.이 블로그를 따라갔습니다 : http://seleniumhome.blogspot.com/2013/07/how-can-we-automate-pagination-using.html, 불행히도 코드가 작동하지 않습니다. 여기 내 응용 프로그램에서 코드입니다 :각도기를 사용하여 페이지 매김 기능을 테스트하는 방법

<div class="vertical-align"> 
<ul class="pagination no-margins"> 
<li class="arrow unavailable" ng-class="{unavailable: currentPage === 0 || pagedRowsTotal.length == 0}"> 
<a class="ng-binding" ng-click="loadPage(0)" ng-bind-html="rsPaginatorText.first">First</a> 
</li> 
<li class="arrow unavailable" ng-class="{unavailable: currentGroup === 1 || pagedRowsTotal.length == 0}"> 
<li class="arrow unavailable" ng-class="{unavailable: currentPage === 0 || pagedRowsTotal.length == 0}"> 
<a class="ng-binding" ng-click="loadPage(currentPage - 1)" ng-bind-html="rsPaginatorText.previous">Previous</a> 
</li> 
<!-- ngRepeat: page in groupArray track by $index --> 
<li class="ng-scope current" ng-class="{current: page === (currentPage + 1)}" ng-repeat="page in groupArray track by $index"> 
<a class="ng-binding" ng-click="loadPage(page-1)">1</a> 
</li> 
<!-- end ngRepeat: page in groupArray track by $index --> 
<li class="ng-scope" ng-class="{current: page === (currentPage + 1)}" ng-repeat="page in groupArray track by $index"> 
<a class="ng-binding" ng-click="loadPage(page-1)">2</a> 
</li> 
<!-- end ngRepeat: page in groupArray track by $index --> 
<li class="ng-scope" ng-class="{current: page === (currentPage + 1)}" ng-repeat="page in groupArray track by $index"> 
<a class="ng-binding" ng-click="loadPage(page-1)">3</a> 
</li> 
<!-- end ngRepeat: page in groupArray track by $index --> 
<li class="ng-scope" ng-class="{current: page === (currentPage + 1)}" ng-repeat="page in groupArray track by $index"> 
<a class="ng-binding" ng-click="loadPage(page-1)">4</a> 
</li> 
<!-- end ngRepeat: page in groupArray track by $index --> 
<li class="ng-scope" ng-class="{current: page === (currentPage + 1)}" ng-repeat="page in groupArray track by $index"> 
<a class="ng-binding" ng-click="loadPage(page-1)">5</a> 
</li> 
<!-- end ngRepeat: page in groupArray track by $index --> 
<li class="arrow" ng-class="{unavailable: currentPage === pagedRowsTotal.length -1}"> 
<a class="ng-binding" ng-click="loadPage(currentPage + 1)" ng-bind-html="rsPaginatorText.next">Next</a> 
</li> 
<li class="arrow" ng-class="{unavailable: currentGroup === groupsTotal}"> 
<li class="arrow" ng-class="{unavailable: currentPage === pagedRowsTotal.length -1}"> 
<a class="ng-binding" ng-click="loadPage(pagedRowsTotal.length - 1)" ng-bind-html="rsPaginatorText.last">Last</a> 
</li> 
</ul> 

이 내가 뭘하려하지만, 오류를 수신 :

this.getPaginationsize = element.all(by.repeater('page in groupArray track by $index')); 

summaryPage.getPaginationsize.getSize().then(function (pagination) { 
      if (pagination > 0) { 

       for (var i = 0; i < pagination; i++) { 
        summaryPage.getPaginationsize.get(i).click(); 
       } 
      } else { 
       console.log('Pagination not exists'); 
      } 
     }); 

Failed: Cannot convert object to primitive value 

답변

1

summaryPage.getPaginationsize.getSize() 방법은 webelement의 높이와 폭을 가진 객체를 반환합니다. 대신 pageSize의 총 수를 얻으려면 summaryPage.getPaginationsize.count()을 사용해야합니다.

참조 :

getSize() : http://www.protractortest.org/#/api?view=webdriver.WebElement.prototype.getSize count() : http://www.protractortest.org/#/api?view=ElementArrayFinder.prototype.count

+0

Sudharsan의 날 매김 클릭 수() 메소드, 이제 webdriver가 다른 페이지로 이동됩니다를 사용하도록 알려 주셔서 감사합니다,하지만이 도달 할 때 요소가 보이지 않는다는 오류를받은 마지막 페이지 – Smitha