加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 转发器数组中WebElement的量角器getText

发布时间:2020-12-17 06:55:22 所属栏目:安全 来源:网络整理
导读:在一个html页面中,我有: ul class="phones" li ng-repeat="phone in phones | filter:query | orderBy: orderProp" {{phone.name}} - {{phone.age}} p{{phone.snippet}}/p /li /ul 在e2e测试中我有(返回数组中的两个元素): var result= ptor.findElements(
在一个html页面中,我有:

<ul class="phones">
              <li ng-repeat="phone in phones | filter:query | orderBy: orderProp">
                {{phone.name}} - {{phone.age}}
                <p>{{phone.snippet}}</p>
              </li>
            </ul>

在e2e测试中我有(返回数组中的两个元素):

var result= ptor.findElements(protractor.By.repeater('phone in phones').column('phone.name'));

            result.then(function(arr) {
                arr[0].getText().then(function(text) {
                    console.log("*** 1: "+ text);
                });

                arr[1].getText().then(function(text) {
                    console.log("*** 2: "+ text);
                })
            });

控制台正在打印所有三列,phone.name,phone.age和phone.snippet.
为什么选择器不仅仅是返回phone.name?

它实际上返回列表“li”,纯文本或绑定中的任何内容.

解决方法

该示例尝试使用以下策略定位元素(列部分根据注释固定):

protractor.By.repeater('phone in phones').column('name')

Repeater部分匹配li元素,然后使用phone.name绑定查找元素.它的包装元素恰好与li相同.

将列部件更改为.column(‘snippet’)会返回p元素,因为在其中找到了phone.snippet绑定.

相关文档/示例:https://github.com/angular/protractor/blob/master/docs/getting-started.md#writing-tests

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读