跳到主要内容
版本:25.x.

入门

使用安装jest︰

添加 --dev Jest.

NPM.

NPM. 安装 --save-dev Jest

注:jest的文件统一击用命令,不合适用NPM.也是可行的。你可以在纱的说明文明里看到NPM.之间的。

让我们从写一个两数数量的次数开。首先,创建一串um.js.文件︰

功能 一种 B. {
返回 一种 + B. ;
}
模块 出口 = ;

然后,创建一个名为sum.test.js.的文章。这这将我们的实际测试︰

const = 要求 '。/和' ;
测试 '增加1 + 2到等于3' => {
预计 1 2 成为 3. ;
} ;

将下载的配置配置分 - 你的package.json.里克:

{
“脚本” {
“测试” “笑话”
}
}

最后,运行纱线测试NPM运行测试,jest将打印下载这个消息:

通过。/ sum.test.js.
✓补充说 1 + 2 相等 3. 5ms.

你是成功地写了又一次笑话!

此此使用预计成为来测试两个值完全相同。若要了解jest关键词测试面多的能力,请参阅使用匹配器

在命令行行走

你可以是通讯命令行直接运行jest(前提jest已经已经你的环境送小路中,例如通过纱线全球加入jestnpm安装jest - global安全的jest),并为其指定各种有用的配置配置。

这里演示了如何对能匹配到我的测试的文章运行jest,使用config.json.作者:王莹,王莹,郧阳师傅

Jest My-test --notify --config = config.json.

如果你愿意了解更多关键词命令行行笑话的内容,请继续阅读jest cli选项页面。

更多配置

生成一个基因配置文件

基本您的项目,jest将将向您提出几个个,并将创建一个基本的配置文件,每个选项都有一个简单的说明:

jest --init.

使

如果如果使用禁止禁忌,可以是通话来安安装所需的依赖。

添加 --dev babel-jest @ babel / core @ babel / preset-eng

可以在工程的根根下一六babel.config.js.文件用作配置配置你当前节点版本兼容的禁止的禁止的禁止

// babel.config.js.
模块 出口 = {
预设 [ [ 'Babel / Preset-Env' { 目标 { 节点 '当前的' } } ] ]
} ;

Babel的配置取决于具体的项目使用场景,可以查阅Babel官方文章来回更多的信息。

**让宝贝配置jest-aware **

jest将设置process.env.node_env.'测试'如果它没有设置为其他东西。您可以在配置中使用它只设置只有Jes​​t所需的编译,例如,您可以在配置中使用它只设置只有Jes​​t所需的编译,例如,

// babel.config.js.
模块 出口 = API. => {
const istest. = API. env. '测试' ;
//您可以使用ISTEST来确定要使用的预设和插件。
返回 {
// ......
} ;
} ;
返回 {
// ......
} ;
} ;

注意:当你安装jest时,Babel-Jest.ICEENS of自动安置的,并且如果你的项目在下面进入了一只孩儿个文章时,它将会自动对相关文章进进行。如果如果要避免行为,你可以显式变形配置项:

// jest.config.js.
模块 出口 = {
变形 { }
} ;
** babel 6支持**

JEST 24对Babel的支持6.我们强烈建议您升级到Babel 7,积极维护。JEST 24对Babel的支持6.我们强烈建议您升级到Babel 7,积极维护。但是,如果您无法升级到Babel 7,无论是使用JEST 23还是升级到JEST 24Babel-Jest.锁定在版本23中,如下图所示:

“依赖性”:{
“Babel-Core”:“^ 6.26.3”,
“Babel-Jest”:“^ 23.6.0”,
“babel-preset-env”:“^ 1.7.0”,
“jest”:“^ 24.0.0”
}

虽然我们通常建议使用每个Jest包的相同版本,但此解决方法将允许您使用Babel 6继续使用最新版本的Jest。

使用网克

jest可驾驶于使用网客来代理资源,样式和编译的项目中。webpack与其他工具更多了一般仪器的挑战。参考WebPack河南来开始。

使用包裹

jest可以在使用的项目中使用包裹捆绑管理资产,样式和编译类似于WebPack。宗地需要零配置。参考官员yabo2013开始。宗地需要零配置。参考官员yabo2013开始。

使用典型标准

Jest通过Babel支持Cypescript。首先,确保您按照说明进行操作使用Babel.以上。接下来,安装@ Babel / Preset-TypeScript通过

添加 --dev @ babel / preset-typescript

然后加@ Babel / Preset-TypeScript到您的预设列表babel.config.js.

// babel.config.js.
module.exports = {
预设:[
['@babel / preset-env',{targets:{node:'current'}}],
+ '@babel / preset-typescript',
],
};

Jest通过Babel支持Cypescript。首先,确保您按照说明进行操作使用Babel.以上。接下来,安装@ Babel / Preset-TypeScript通过:因为BABEL中的TypeScript支持纯粹是rantpilation,Jest将不会键入 - 在运行时检查您的测试。您可能还想安装@类型/ jest您正在使用的Jest版本的模块。使用TypeScri亚搏取款pt写入测试时,这将有助于提供完整的键入。

不再,在整合使types与babel时,仍然有一般注意事项。因为Babel中的TypeScript支持纯粹是频道,但Jest将不会键入 - 在运行时检查您的测试。如果你想要,你可以使用TS-JEST.相反,或只是运行TypeScript编译器TSC.单独(或作为构建过程的一部分)。

为了@类型/ *模块建议尝试匹配关联模块的版本。为了@类型/ *模块建议尝试匹配关联模块的版本。例如,如果您正在使用26.4.0笑话然后使用26.4.x.@类型/ jest是理想的。一般来说,尝试匹配主要(26.)和未成年人(4.)版本尽可能接近。一般来说,尝试匹配主要(26.)和未成年人(4.)版本尽可能接近。

添加 --dev @ types / jest