[英]Jest not finding all tests
Jest 沒有找到我所有的測試文件。 它忽略了一個目錄。 當我運行 npm 運行 jest:watch 我在 ./server 中的測試及其子目錄已經過測試但在./client中沒有找到測試
我嘗試創建一個通用測試文件並移動它。 我發現它可以在以下情況下工作。 我也嘗試過使用文件的直接路徑 - 這沒有用。
我認為這可能與我擁有的不尋常的目錄結構有關
./client
./server
與
./server.js
./other server files..
./client/...client files
或者嘗試從 node.js 應用程序運行 jest 並讓它查看客戶端目錄中的文件(其中包含一個用 React 編寫的應用程序),我可能會死 - 我不關心在反應組件上運行測試(僅模塊)。 或者,它可能與客戶端目錄中的玩笑有關。
文件名 | ./服務器/中間件 | ./ | 。/客戶 |
---|---|---|---|
刪除.test.js | 被笑話發現 | 被笑話發現 | 未找到 |
我的文件夾結構看起來像這樣
./
./client (react client app)
./client/package.json
./client/node_modules
package.json
node.modules
./server (node.js api app)
./server/package.json
我的笑話是從 ./package.json 文件運行的。
我嘗試對我的文件使用直接路徑,下面的代碼有效
"testMatch": ["<rootDir>/server/delete.test.js"],
但是這段代碼(在我想要的文件夾中)沒有
"testMatch": ["<rootDir>/client/delete.test.js"],
{
"name": "Infoshot",
"version": "0.0.4",
"description": "Research Tool",
"main": "cd ./server && server.js",
"scripts": {
"start": "cd ./server && node server.js",
"server": "cd ./server && nodemon server.js",
"client": "npm start --prefix ./client/",
"clientinstall": "npm install --prefix client",
"dev": "concurrently \"npm run server\" \"npm run client\"",
"heroku-postbuild": "cd ./client && NPM_CONFIG_PRODUCTION=false npm install && CI= npm run build",
"compile-saas": "node-sass ./client/src/scss/a_main.scss ./server/nodeClient/public/css/main.css -w",
"test": "jest",
"test:watch": "npm run test -- --watch"
},
"jest": {
"testEnvironment": "node",
"testPathIgnorePatterns": [
"./node_modules"
]
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"axios": "^0.21.0",
"bcryptjs": "^2.4.3",
"config": "^3.2.2",
"dotenv": "^8.2.0",
"ejs": "^3.1.5",
"enzyme": "^3.11.0",
"express": "^4.17.1",
"express-validator": "^6.2.0",
"ijavascript": "^5.2.0",
"jest": "^26.6.3",
"jsonwebtoken": "^8.5.1",
"mongoose": "^5.7.0",
"nodemailer": "^6.4.14",
"nodemailer-sendgrid": "^1.0.3"
},
"devDependencies": {
"concurrently": "^4.1.2",
"node-sass": "^5.0.0",
"nodemon": "^1.19.2"
}
}
describe.only('DELETE TEST: getDocument', () => {
test('Say Hi', async () => {
const bum = 'bum';
expect(bum).toBe(bum);
});
});
正如我之前所說,我不認為這是相關的,因為它沒有運行,因為我正在運行 jest from./server with npm run jest:watch
{
"name": "client",
"version": "0.1.0",
"private": true,
"dependencies": {
"axios": "^0.19.0",
"config": "^3.3.2",
"dotenv": "^8.2.0",
"enzyme-adapter-react-16": "^1.15.3",
"node-sass": "^4.14.1",
"react": "^16.9.0",
"react-beautiful-dnd": "^13.0.0",
"react-dom": "^16.9.0",
"react-router-dom": "^5.0.1",
"react-scripts": "^3.4.4",
"react-transition-group": "^4.3.0",
"serve": "^11.3.2",
"styled-components": "^5.1.1",
"uuid": "^3.3.3"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject",
"previewProd": "react-scripts build && serve"
},
"jest": {
"collectCoverageFrom": [
"src/components/documentEditor/*.js",
"<rootDir>/server/",
"!<rootDir>/node_modules/",
"!<rootDir>/src/index.js",
"!<rootDir>/src/registerServiceWorker.js"
]
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"proxy": "http://localhost:5000",
"devDependencies": {
"@testing-library/react": "^10.4.9"
}
}
我發現如果我刪除了 ./client/package.json 中所有提到的玩笑,並將 ./package.json 替換為
"collectCoverageFrom": [
"**/*.{js,jsx}",
"!**/node_modules/**"
]
有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.