量角器.getAttribute('href')不起作用

时间:2016-07-27 04:01:22

标签: javascript protractor gulp-protractor

目标:测试我的'div'中第一个元素的'href'值等于'myLink'。

HTML

<div id="myId">
    <a href="myLink"/>
</div>

量角器代码

var elems = element.all(by.id('myId'));
elems.first().getAttribute('href').then(function(attr) {
    expect(attr).toEqual('myLink');
});

错误消息:“预期null等于'myLink'。”

问题:此代码有什么问题?

2 个答案:

答案 0 :(得分:1)

您正在尝试从div元素获取href属性。但div元素确实具有href属性,因此protractors会将null作为输出。请尝试以下代码。

var elems = element.all(by.css('#myId a'));
   elems.first().getAttribute('href').then(function(attr) {
       expect(attr).toEqual('myLink');
   });

答案 1 :(得分:0)

添加到现有答案。 您不必解决实现期望的承诺。修补expect()以了解承诺:

var elems = element.all(by.css('#myId a'));
expect(elems.first().getAttribute('href')).toEqual('myLink');