【问题标题】:Protractor Locating elements by by.repeater contained within a specific div量角器通过包含在特定 div 中的 by.repeater 定位元素
【发布时间】:2017-04-23 07:13:41
【问题描述】:

在量角器中,我试图访问 ID 为“CreateRFQID”的特定 div 中重复的按钮。这些按钮被定义为指令“gps-button-bar”。我正在尝试通过.repeater 访问它们。因为这些按钮也出现在页面的其他位置,所以我不能只通过
element(by.repeater('aBtn in buttonBarController.config.buttonConfigs track by $index')).

但我试图获取那些 ID 为“CreateRFQID”的 div 子元素的按钮,但没有成功。

我正在尝试的量角器代码:

var parent = element(by.css('#CreateRFQID'));
        var first= parent.element(by.repeater('aBtn in buttonBarController.config.buttonConfigs track by $index')).row(0);
        first.getText().then(function (text) {
            console.log(text);
        });

任何帮助如何获得它? 谢谢。

查看/html片段

<div ng-controller="CreateRFQController as createRFQCntrl" id="CreateRFQID" class="ng-scope">

    <gps-button-bar config="createRFQCntrl.buttonBarConfig" class="ng-isolate-scope"><div class="container-fluid">
    <div class="row row-buttonBar">
       <label><h1 class="panel-title ng-binding">RFQ Create </h1></label>
           <span class="pull-right">

           <span ng-repeat="aBtn in buttonBarController.config.buttonConfigs track by $index" style="padding-right: 2px" class="ng-scope">
               <button class="btn btn-default btn-xs ng-binding" id="&quot;myButton&quot;+$index" ng-click="buttonBarController.clickHandler($index);" data-toggle="tooltip" data-placement="top" title="Create" ng-show="buttonBarController.gpsShownButtons[$index]" ng-disabled="buttonBarController.gpsDisabledButtons[$index]">
                    <span class="fa fa-floppy-o"></span> Create
               </button>
           </span><!-- end ngRepeat: aBtn in buttonBarController.config.buttonConfigs track by $index -->
    </span>
</div>

【问题讨论】:

    标签: angularjs angularjs-directive jasmine protractor


    【解决方案1】:

    你的选择器有问题,你不是在element的结果上做.row,而是在by上做by

    var parent = element(by.id('CreateRFQID'));
    var first = parent.element(by.repeater('aBtn in buttonBarController.config.buttonConfigs track by $index').row(0));
    first.getText().then(function (text) {
        console.log(text);
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-01
      • 1970-01-01
      • 2019-07-15
      • 2015-11-08
      相关资源
      最近更新 更多