我有以下测试代码(简化示例):
e = element(by.id('element-id'));
it('description', function(){
e.all(by.tagName('my-directive')).then(function(items){
expect(items.count()).toEqual(3); //error
expect(items.length).toEqual(3); //ok
expect(items.get(0).getAttribute('my-attr')).toEqual('1'); //error
});
});
这是HTML:
<div id="element-id">
<my-directive my-attr="1"></my-directive>
<my-directive my-attr="0"></my-directive>
<my-directive my-attr="0"></my-directive>
</div>
当我运行此测试时,我收到以下错误:
TypeError:undefined不是函数
我将其剥离,发现错误来自get()函数和count()函数。我已经阅读了Protractor API中的函数,并使用它们与网站上的示例相同,所以我不明白为什么它对我不起作用。
有谁知道我做错了什么?
我也试过这个(包含'元素'):
e.element.all(by.tagName('my-directive')).then(function(items){...})
但是没有get()函数就会产生错误事件。