実現したいこと
JestでTypescriptのテストを実行したい
発生している問題・分からないこと
コード変更時の自動実行では正常にテストが検出され実行されるが、以下の手動の方法ではテストが発見されず、テストが実行されない。
J
コンテキストメニュ(右クリックメニュー)→ Jest: RunRetaled Tests (Ctrl + Alt +T)
エラーメッセージ
error
1> cross-env NODE_OPTIONS="--experimental-vm-modules" jest --testLocationInResults --json --useStderr --outputFile C:\Users\xxxx\2.json --no-coverage --reporters default --reporters c:\Users\xxxxxx\.vscode\extensions\orta.vscode-jest-6.2.2\out\reporter.js --colors --watchAll=false --testPathPattern c:\\Users\xxxxxxxxx\\file\.test\.ts 2 3No tests found, exiting with code 1 4Run with `--passWithNoTests` to exit with code 0 5In C:\Users\xxxxx\www 6 45 files checked. 7 testMatch: - 0 matches 8 testPathIgnorePatterns: \\node_modules\\ - 45 matches 9 testRegex: .+\?.(spec|test)\?.[tj]s?(x)?$ - 0 matches 10Pattern: c:\Users\xxxxxxx\file\.test\.ts - 0 matches
該当のソースコード
jest.config.ts
1/** 2 * For a detailed explanation regarding each configuration property, visit: 3 * https://jestjs.io/docs/configuration 4 */ 5 6import type { Config } from "jest"; 7 8const config: Config = { 9 maxWorkers: "10%", 10 moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json"], 11 12 testEnvironment: "jsdom", 13 14 transform: { 15 "^.+\.tsx?$": "ts-jest", 16 }, 17 testRegex: [".+\\?\.(spec|test)\\?\.[tj]s?(x)?$"], 18 19 moduleNameMapper: { 20 "\\.(css|scss)$": "<rootDir>/node_modules/jest-css-modules", 21 }, 22}; 23export default config;
launch.json
1{ 2 "version": "0.2.0", 3 "configurations": [ 4 { 5 "name": "Debug Jest Tests", 6 "type": "node", 7 "request": "launch", 8 "runtimeArgs": [ 9 "--inspect-brk", 10 "${workspaceRoot}/node_modules/jest/bin/jest.js", 11 "--runInBand" 12 ], 13 "console": "integratedTerminal", 14 "internalConsoleOptions": "neverOpen" 15 }, 16 { 17 "type": "chrome", 18 "request": "launch", 19 "name": "Launch development server", 20 "url": "http://localhost:9223", 21 "webRoot": "${workspaceFolder}/dist", 22 "preLaunchTask": "build for debug", 23 "skipFiles": ["<node_internals>/**"], 24 "resolveSourceMapLocations": ["!**/node_modules/**"], 25 "trace": true, 26 "sourceMaps": true, 27 "sourceMapPathOverrides": { 28 "webpack:///cheetah-express/*": "${workspaceFolder}/*" 29 } 30 } 31 ] 32} 33
tasks.json
1{ 2 "version": "2.0.0", 3 "tasks": [ 4 { 5 "label": "build for debug", 6 "type": "npm", 7 "script": "devReBuild", 8 } 9 ] 10} 11
pacage.json
1 2{ 3(中略) 4 "scripts": { 5(中略) 6 "clean": "rimraf dist", 7 "start": "npm run dev", 8 "test": "cross-env NODE_OPTIONS=\"--experimental-vm-modules\" jest " 9 }, 10 "author": "", 11 "license": "ISC", 12 "devDependencies": { 13 "@jest/globals": "^29.7.0", 14 "@types/dotenv-webpack": "^7.0.7", 15 "@types/encoding-japanese": "^2.0.5", 16 "@types/jest": "^29.5.12", 17 "@types/node": "^20.11.17", 18 "css-loader": "^6.10.0", 19 "html-webpack-plugin": "^5.6.0", 20 "jest": "^29.7.0", 21 "jest-css-modules": "^2.1.0", 22 "jest-environment-jsdom": "^29.7.0", 23 "mini-css-extract-plugin": "^2.8.0", 24 "style-loader": "^3.3.4", 25 "ts-loader": "^9.5.1", 26 "ts-node": "^10.9.2", 27 "typescript": "^5.3.3", 28 "webpack": "^5.90.1", 29 "webpack-cli": "^5.1.4", 30 "webpack-dev-server": "^5.0.0" 31 }, 32 "dependencies": { 33 "@popperjs/core": "^2.11.8", 34 "@types/bootstrap": "^5.2.10", 35 "bootstrap": "^5.3.2", 36 "cross-env": "^7.0.3", 37 "dotenv-webpack": "^8.0.1", 38 "encoding-japanese": "^2.0.0", 39 "graphemesplit": "^2.4.4", 40 "npm-run-all": "^4.1.5", 41 "rimraf": "^5.0.5", 42 "ts-jest": "^29.1.2" 43 } 44}
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
開発環境のファイルパス中に日本語などのマルチバイト文字や記号などが入っていると全くテストが動作しなかったが、これらを排除することによりコード変更時の自動テストは動作するようになった。
補足
特になし
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。