【发布时间】:2020-11-21 05:27:12
【问题描述】:
在我的项目文件夹中,我有很多子文件夹,其中包含 js 代码和 test.js 文件。我希望能够测试特定的文件。例如,假设在我们的项目文件夹中,我们有 'fib' 文件夹:
C:.
└───exercises
└───fib
fib-test.js
index.js
现在,我从练习文件夹中执行 jest 命令:
jest fib\fib-test.js
我得到:
No tests found, exiting with code 1
Run with `--passWithNoTests` to exit with code 0
In C:\exercises
62 files checked.
testMatch: **/__tests__/**/*.[jt]s?(x), **/?(*.)+(spec|test).[tj]s?(x) - 26 matches
testPathIgnorePatterns: \\node_modules\\ - 62 matches
testRegex: - 0 matches
Pattern: fib\fib-test.js - 0 matches
如果我只是开玩笑,我会运行所有测试。如果我将 fib 文件夹移出练习文件夹,它会按预期工作。以下是所有文件的代码:
index.js:
function fib(n) {}
module.exports = fib;
test.js:
const fib = require('./index');
test('Fib function is defined', () => {
expect(typeof fib).toEqual('function');
});
test('calculates correct fib value for 1', () => {
expect(fib(1)).toEqual(1);
});
test('calculates correct fib value for 2', () => {
expect(fib(2)).toEqual(1);
});
test('calculates correct fib value for 3', () => {
expect(fib(3)).toEqual(2);
});
test('calculates correct fib value for 4', () => {
expect(fib(4)).toEqual(3);
});
test('calculates correct fib value for 15', () => {
expect(fib(39)).toEqual(63245986);
});
package.json:
{
"name": "dev",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"jest": {
"testEnvironment": "node"
},
"author": "",
"license": "ISC"
}
我已经尝试了所有这些解决方案,但都没有成功:
- Run single test of a specific test suite in Jest
- How do I run a single test using Jest?
- How do I test a single file using Jest?
但是能够通过 --watch 标志运行 jest 命令并在正则表达式菜单中输入 fib\test.js 的相对路径来实现所需的结果。问题是不进入手表菜单怎么办?
【问题讨论】:
标签: javascript testing jestjs