npm 观察并重新运行Jest JS测试

0yg35tkg  于 2023-04-21  发布在  Jest
关注(0)|答案(9)|浏览(148)

Jest文档建议使用npm test执行测试。
是否有一种方法可以监视源代码和测试,以便在相关文件发生更改时自动重新运行Jest测试?

ogq8wdun

ogq8wdun1#

感谢Erin Stanfill指出,Jest已经支持自动重新运行。

{
  "scripts": {
    "test": "jest"
  }
}

要打开监视模式,只需使用

$ npm run test -- --watch

或者

$ yarn run test --watch
imzjd6km

imzjd6km2#

如果您配置了npm test,则可以运行npm test -- --watch

myzjeezk

myzjeezk3#

作为补充建议,您可以像这样将“--watchAll”添加到package.json文件中:

"scripts": {       
  "test": "jest --watchAll"
},

每次运行npm test时,默认情况下会启用watch模式。
更多信息npm CLI docs

siotufzp

siotufzp4#

在监视模式下启动测试。

jest --watch fileName.test.js

根据文件
运行与此规范名称匹配的测试(基本上与describetest中的名称匹配)。

jest -t name-of-spec
// or in watch mode
jest --watch -t="TestName"
u4dcyp6a

u4dcyp6a5#

This example展示了如何使用gulp来使用jest-cli运行Jest测试,以及如何使用tdd gulp任务来监视文件并在文件更改时重新运行Jest测试:

var gulp = require('gulp');
var jest = require('jest-cli');

var jestConfig = {
    rootDir: 'source'
};

gulp.task('test', function(done) {
    jest.runCLI({ config : jestConfig }, ".", function() {
        done();
    });
});

gulp.task('tdd', function(done) {
    gulp.watch([ jestConfig.rootDir + "/**/*.js" ], [ 'test' ]);
});

gulp.task('default', function() {
    // place code for your default task here
});
vx6bjr1n

vx6bjr1n6#

1.安装几个Grunt包:

npm install grunt-contrib-watch grunt-exec --save-dev

1.使用以下命令创建一个Gruntfile.js

module.exports = function(grunt) {
    grunt.initConfig({
        exec: {
            jest: 'node node_modules/jest-cli/bin/jest'
        },
        watch: {
            files: ['**/*.js'],
            tasks: ['exec:jest']
        }
    });
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-exec');
}

1.然后简单地运行:

grunt watch
z9ju0rcb

z9ju0rcb7#

如果您想在监视模式下运行单个文件

yarn run test --watch FileName.test.jsx
gpnt7bae

gpnt7bae8#

我个人使用npm包jest-watch-typeahead
你需要做三个步骤:
1.安装npm包:
npm install --save-dev jest jest-watch-typeahead
1.在jest.config.js中添加以下代码:

module.exports = {
  watchPlugins: [
    'jest-watch-typeahead/filename',
    'jest-watch-typeahead/testname',
  ],
};

1.在监视模式下运行Jest
Yarn笑话--看

wwodge7n

wwodge7n9#

您可以添加以下脚本来监视所有js文件的更改
{
  "scripts": {
    "test": "jest",
    "watch": "jest --watch .js"
  }
}
  • #####你可以运行npm test来运行你的测试,你可以运行npm run watch来运行你的测试,每次你对你的测试文件进行更改并保存它们

相关问题