Javascript 在AngularJS中使用茉莉花测试元素数量

Javascript 在AngularJS中使用茉莉花测试元素数量,javascript,jquery,angularjs,jasmine,protractor,Javascript,Jquery,Angularjs,Jasmine,Protractor,我正在用Jasmine为AngularJS编写一个端到端测试。我正在使用量角器进行测试。我有以下标记 <ul class="phone-thumbs"> <li ng-repeat="img in phone.images"> <img ng-src="{{img}}"> </li> </ul> 问题是,我得到了一个错误的说法 TypeError: Object #<Object> has no metho

我正在用Jasmine为AngularJS编写一个端到端测试。我正在使用量角器进行测试。我有以下标记

<ul class="phone-thumbs">
  <li ng-repeat="img in phone.images">
    <img ng-src="{{img}}">
  </li>
</ul>
问题是,我得到了一个错误的说法

TypeError: Object #<Object> has no method 'length'
TypeError:对象#没有方法“length”

我哪里做错了?

对于任何需要了解这一点的人。我是这样做的

it('should display four thumbnails on the nexus-s page', function() {
      var images = element.all(by.repeater('img in phone.images')).count();
      expect(images).toBe(4);
    });
这个问题是AngularJS教程中实验部分的一部分

下面是我如何解决它的。我采取了不同的方法来计算渲染的图像,而不是直接测试转发器/模型

it('should display four thumbnails of the nexus-s', function() {
  var imgsCount = element.all(by.css('.phone-thumbs li img')).count();
  expect(imgsCount).toBe(4);
});

只是想了解你的解决方案。
element
的值是多少?@alljamin,
element
是ElementHelper的量角器别名
it('should display four thumbnails of the nexus-s', function() {
  var imgsCount = element.all(by.css('.phone-thumbs li img')).count();
  expect(imgsCount).toBe(4);
});