这个角度教程中的"转发器"是茉莉花概念吗?

Pet*_*_ch 7 javascript testing jasmine angularjs

通过角度js 教程,我不明白转发器(功能?)来自茉莉花测试.这是茉莉花还是棱角分明的构造?

页面在<li>元素中确实有一个ng-repeat属性- 但是我没看到它如何转换为测试中对'repeater'的引用

  it('should be possible to control phone order via the drop down select box',
    function() {
    //let's narrow the dataset to make the test assertions shorter
    input('query').enter('tablet');

    //where does  'repeater' below come from?
    expect(repeater('.phones li', 'Phone List').column('phone.name')).
    toEqual(["Motorola XOOM\u2122 with Wi-Fi",
    "MOTOROLA XOOM\u2122"]);

    select('orderProp').option('Alphabetical');


    expect(repeater('.phones li', 'Phone List').column('phone.name')).
    toEqual(["MOTOROLA XOOM\u2122",
    "Motorola XOOM\u2122 with Wi-Fi"]);
    });
Run Code Online (Sandbox Code Playgroud)

pko*_*rce 7

repeater不是茉莉花结构,它是AngularJS E2E方案测试的概念.

repeater功能是由AngularJS E2E方案运动员使用的DSL定义,它的定义在这里可以看到:https://github.com/angular/angular.js/blob/master/src/ngScenario/dsl.js#L249 的相应的文档位于:http://docs.angularjs.org/guide/dev_guide.e2e-testing

应该注意的是,即使AngularJS使用Jasmine语法进行端到端测试,那些e2e测试也不是 Jasmine测试,它们碰巧使用非常相似的语法.AngularJS运行器的目的ngScenario是在浏览器中执行端到端测试,并且使用匹配器对浏览器环境(DOM,位置等)非常紧密.Jasmine更专注于单元测试并且具有JavaScript对象的匹配器.

上面提到repeater的只是一种在给定jQuery选择器的情况下计算DOM对象的方法,并且通常用于计算ngRepeat指令生成的DOM元素.