如何获得的代码开玩笑的发现零件

问题描述 投票:2回答:1

我写了一个简单的减速机:

const simpleCounterReducer = (state = 0, action) => {
    switch (action.type) {
        case 'INCREMENT_COUNT':
            return state + 1;
        case 'DECREMENT_COUNT':
            return state - 1;
        default:
            return state;
    }
};

export default simpleCounterReducer;

然后几个简单的测试,以涵盖所有可能的选项。

import simpleCounterReducer from '../src/reducers/simple-counter.js';

describe('counter works and', () => {
    test('can handle increments', () => {
        expect(
            simpleCounterReducer(0, {
                type: 'INCREMENT_COUNT'
            })
        ).toBe(1);
    });

    test('can handle decrements', () => {
        expect(
            simpleCounterReducer(1, {
                type: 'DECREMENT_COUNT'
            })
        ).toBe(0);
    });

    test('can handle invalid actions', () => {
        expect(
            simpleCounterReducer(4, {
                type: 'SOME_RANDOM_ACTION'
            })
        ).toBe(4);
    });
});

然后,我跑到这个命令:npx jest --colors --coverage

不过,即使我已覆盖代码的所有部分,我得到的裸露线。它说的是错的玩笑还是我失去了一些东西。 ,是有办法找出开玩笑,没有覆盖的代码部分。

Image for jest test coverage output

javascript jestjs code-coverage
1个回答
6
投票

如果你想看到未涉及您可以在浏览器中打开生成的报告线。

默认情况下,该报告是在这里./coverage/lcov-report/index.html

但你也是在控制台中看到未覆盖线的线数(它不是未覆盖线,但该行号的数量,并在你的情况下,它是第一行)。

此外,如果需要一些配置的范围:https://jestjs.io/docs/en/configuration#collectcoverage-boolean

另请注意,使用伊斯坦布尔幕后:https://github.com/gotwarlost/istanbul

© www.soinside.com 2019 - 2024. All rights reserved.