jest가 vue 파일의 적용 범위를 수집하지 않는 문제를 해결합니다.

2260 단어 Vue.jsJest

개요



최근에 되어 Codecov 있었습니다.
(아마도 v25와 같은 특정 버전으로 인한 문제)

2020 년 2 월 현재의 이야기에서 최근 업데이트로 개선 될 것으로 보이지만
메모해 둡니다.


그림 : 커버리지에 js 파일이 표시 되더라도 vue 파일이 계산되지 않음

TL;DR



vue-jest의 Issue # 217의 코멘트을 참조하여 다음을 수행하여 yarn test를 다시 실행하여 커버리지를 수집했는지 확인했습니다.

(1). 패키지 설치
yarn add -D @vue/cli-plugin-unit-jest @vue/cli-service

(2). package.json(scripts 섹션) 편집
(내 프로젝트는 Laravel이 생성 한 package.json이며 VueCLI를 사용하지 않았기 때문에)
# 変更前
"test": "jest",

# 変更後
"test": "vue-cli-service test:unit",

(3). yarn test를 다시 실행하여 확인
이번에는 vue 파일의 적용 범위가 있는지 확인할 수 있습니다.



참고 정보



다양한 버전



jest: 25.1.0
vue-jest: 3.0.5

이 이벤트 발생시 Jest 설정


    "jest": {
        "globals": {
            "Vue": true
        },
        "moduleFileExtensions": [
            "js",
            "json",
            "vue"
        ],
        "collectCoverage": true,
        "collectCoverageFrom": [
            "<rootDir>/resources/js/**/*.{js,vue}",
            "!**/node_modules/**",
            "!**/vendor/**"
        ],
        "setupFiles": [
            "./tests/js/setup.js"
        ],
        "transform": {
            "^.+\\.js$": "babel-jest",
            "^.+\\.vue$": "vue-jest"
        },
        "moduleNameMapper": {
            "^@/(.*)$": "<rootDir>/resources/js/$1"
        }
    }

좋은 웹페이지 즐겨찾기