Javascript 伊斯坦布尔覆盖率报告的忽略对象方法

Javascript 伊斯坦布尔覆盖率报告的忽略对象方法,javascript,unit-testing,istanbul,Javascript,Unit Testing,Istanbul,我有一组使用Mocha和jsdom运行的web应用程序单元测试。为了让我的mocha单元测试尽可能快地运行,我使用jsdom而不是真正的浏览器,我们将进行集成测试,运行selenium,测试更多真正的浏览器内容。我还使用伊斯坦布尔生成代码覆盖率报告,但是有些代码不能用Mocha/jsdom进行测试。以这段代码为例: var myObject = { //... /* istanbul ignore next */ _resizeEvent: function() {

我有一组使用Mocha和jsdom运行的web应用程序单元测试。为了让我的mocha单元测试尽可能快地运行,我使用jsdom而不是真正的浏览器,我们将进行集成测试,运行selenium,测试更多真正的浏览器内容。我还使用伊斯坦布尔生成代码覆盖率报告,但是有些代码不能用Mocha/jsdom进行测试。以这段代码为例:

var myObject = {
    //...

    /* istanbul ignore next */
    _resizeEvent: function() {
        if(this.props.isActive) {
            //.9 match the scss max-height: 90%, this value needs to be kept in sync with the sass code
            this.getDOMNode().querySelector('.modal__content').style.maxHeight = Math.floor(window.innerHeight * .9) + 'px';
            this.getDOMNode().querySelector('.modal__content').style.maxWidth = Math.floor(window.innerWidth * .9) + 'px';
            this._centerPosition();
        }
    },

    //...
}
由于没有真正的浏览器,因此无法使用jsdom测试此方法。我遇到的问题是,即使在对象方法之前有
/*istanbul ignore next*/
,它仍然告诉我方法中的代码没有被覆盖(而不是仅仅告诉我它被忽略)


有没有一种简单的方法可以完全忽略对象方法及其所有内容,而不必在方法中的每个语句之前添加
/*istanbul ignore next*/

var myObject = {
//...
};

/* istanbul ignore next */
myObject._resizeEvent = function () {
//...
};

我也面临着这个问题,幸运的是没有必要使用myObject。您只需要确保ignorenext位于函数名的旁边

以下工作:

var myObject = {
    _resizeEvent /* istanbul ignore next */: function() {

    },
}

害怕这个答案,希望找到一个解决方案,同时保持用原始对象定义定义对象属性的能力。如果我需要能够忽略这些对象方法,我想这是最糟糕的情况。