小编Den*_*nis的帖子

用茉莉花测试角度"控制器"

我在角应用程序中使用"控制器为"语法.现在是测试的时候了,但所有的例子都是注入$ scope的控制器.我如何调用"this.addItem"方法并检查它是否在Jasmine测试中向"this.items"添加了一个项目?

(function () {
"use strict";
    angular.module('myModule', ['factoryModule'])
    .controller('MyController', function (myFactory) {
        this.items = [];

        this.selectedItem = null;

        this.addItem = function (itemType) {
            var item = myFactory.create(itemType);
            this.items.push(trigger);
            this.selectedItem = item;
        };

        this.removeItem = function (item) {
            this.items.splice(this.items.indexOf(item), 1);
        };
    });
})();
Run Code Online (Sandbox Code Playgroud)

testing bdd jasmine angularjs

11
推荐指数
1
解决办法
2189
查看次数

关闭重复输出到karma中的console.log()

使用phantomjs运行测试时,我将控制台消息记录两次,如:

PhantomJS 1.9.7(Windows 8)日志:'myNavigation loading ...'

日志:'myNavigation loading ...'

但是当在chrome中运行时,我的输出就像:

Chrome 37.0.2062(Windows 8.1)日志:'myNavigation loading ...'.

(这里没有重复记录)

我猜第二个日志来自点记者,所以是否有机会轻松关闭第二个控制台输出,以便只有浏览器可以记录?

这是我的业力配置的一部分:

reporters: ['trx', 'dots'],
browsers: ['PhantomJS', 'Chrome'],
Run Code Online (Sandbox Code Playgroud)

automated-tests phantomjs karma-runner

5
推荐指数
0
解决办法
702
查看次数