Перейти к основной части
版本:27.0

Началоработы

Установите Jest с помощью

添加 - - - dev开玩笑

Илиnpm

npm 安装 ——save-dev开玩笑

Примечание: документация Jest использует команды,ноnpmтакжебудетработать。Вы можете сравнить командыиnpmвдокументации纱,здесь

Дляначаланапишемтестдляфункци,икотораяскладываетдвачисла。Во——первыхсоздайтефайлsum.js

函数 总和 一个 b
返回 一个 + b
模块 出口 总和

Затем создайте файл с именемsum.test.js.Он будет содержать сам тест:

常量 总和 需要 ”。/总和
测试 加1 + 2等于3 =>
预计 总和 1 2 托比 3.

Добавьте следующий раздел вpackage.json

“脚本”
“测试” “开玩笑”

Наконец,запустите纱线测试илиnpm运行测试и Jest выведет это сообщение:

通过。/ sum.test.js
✓补充道 1 + 2 等于 3. 5女士

Вытолькочтоуспешнонаписалипервыйтестсиспользованием开玩笑!

Данныйтестиспользует预计и托比для проверки идентичности двух данных значений。Чтобыузнатьобостальныхвещах,которыеможнопротестироватьсиспользованием开玩笑,смотритеиспользованиесопоставлений

Запуск из командной строки

ВыможетезапуститьJestпрямоизкоманднойстроки(еслионглобальнодоступенв路径,например纱线全球加笑话илиNPM安装jest—global) с множеством полезных опций。

ВоттакможнозапуститьJestдляпроверкифайловсовпадающихс我的测试,используяjsonвкачествефайлаконфигурацииидляотображениянативногоуведомленияОСпослезавершения:

Jest my-test——notify——config json

Если вы хотите узнать больше о работе с开玩笑в командной строке, обратите внимание на страницупараметров командной строки笑话

Дополнительнаяконфигурация

Создание базового файла конфигурации

Исходяизвашихнужд,Jestзадаствамнескольковопросовисоздастбазовыйфайлконфигурациискраткимописаниемдлякаждойопции:

笑话——初始化

Сиспользованием巴别塔

Дляиспользования巴别塔网址:установите необходимые зависимости через

添加 ——dev babel-jest @babel/core @babel/cli @babel/preset-env

巴别塔Настройтенавашутекущуюверсию节点Js,создавфайлbabel.config.jsв корне вашего проекта:

/ / babel.config.js
模块 出口
预设 “@babel / preset-env” 目标 节点 “当前”

Идеальнаяконфигурациядля巴贝尔будетзависетьотвашегопроекта。Смотритедокументацию巴别塔для получения дополнительной информации。

* *Добавлениеотдельнойконфигурациидля巴贝尔тольконавремязапуска笑话* *

笑话автоматически установит дляprocess.env.NODE_ENVзначение“测试”если не указано другое。Выможетеиспользоватьэтуопцию,чтобыдобавитьнастройки,которыебудутиспользоватьсятолькововремязапуска开玩笑,например:

/ / babel.config.js
模块 出口 api =>
常量 坚持 api env “测试”
/ /Используйте是,чтобыописатьплагиныипресеты,которыебудутиспользоватьсятолькос笑话。
返回
/ /……

Примечание:babel-jestавтоматическиустанавливаетсяприустановкеJestипреобразуетфайлыесливвашемпроектеестьсуществующаяконфигурация巴别塔。Дляобходаданногоповедения,выможетеявносброситьопцию变换вконфигурации:

/ / jest.config.js
模块 出口
变换
* *Поддержка巴别塔6 * *

В24 -йверсииJestпрекратилподдерживать巴别塔6。Мынастоятельнорекомендуемвамобновитьсядо巴别塔7,которыйактивноподдерживается。Однако,есливынеможетеперейтина巴别塔7,толибоиспользуйтеJest 23日либообновитесьд24воJestручнуюзаблокировавbabel-jestна 23-й версии, как показано ниже:

“依赖”:{
:“babel-core ^ 6.26.3”,
:“babel-jest ^ 23.6.0”,
:“babel-preset-env ^ 1.7.0”,
“笑话”:“^ 24.0.0”

Хотямыобычнорекомендуемиспользоватьоднуитужеверсиюкаждогопакета开玩笑,данноерешениепозволитвампродолжитьиспользоватьпоследнююверсиюJestс巴别塔6。

СиспользованиемWebpack

Jestможетиспользоватьсявпроектах,использующихwebpackдля управления ресурсами, стилями и компиляцией。Webpackдействительнопривноситнекоторыеособенности,способныесоздатьпроблемыпрограммистам,всравнениисдругимиинструментами。Обратитеськразделуруководство по работе с Webpackдля начала работы с ним。

Сиспользованием包裹

Jestможетиспользоватьсявпроектах,использующихparcel-bundlerдляуправленияизображениями,стилямиикомпиляциейаналогичнонwebpack包裹етребуетнастройкиОбратитеськофициальнойдокументации

Сиспользованием打印稿

Jest поддерживает TypeScript, через Babel。Сначалаубедитесь,чтовыследовалиинструкциямпонастройке巴别塔выше。Далееустановите@babel / preset-typescriptчерез

添加 - - - dev @babel / preset-typescript

Затемдобавьте@babel / preset-typescriptв список пресетов в вашbabel.config.js

/ / babel.config.js
模块。出口= {
预设:[
[@babel / preset-env,{目标:{节点:“当前”}}),
+ “@babel / preset-typescript”,
],
};

Однако,естьнесколькоподводныхкамнейв использовании TypeScript вместе с Babel。Поскольку打印稿поддерживаетсяв巴贝尔черезтранспиляцию,Jestнебудетпроверятьтипывашихтестахкогдаонизапущены。Если вы хотите, то вы можете использоватьts-jest,взаменилипростозапуститекомпилятор打印稿tscотдельно (или как часть вашего процесса сборки)。

Вы также можете установить модуль@types /开玩笑для версии Jest которую вы используете。Этопоможетобеспечитьполныйнабортекстапринаписаниивашихтестовс打印稿。

Длямодулей@types / *рекомендуетсясопоставлятьверсиюJestсверсиейсвязанногомодуля。Например, если вы используете26.4.0версию开玩笑,тоиспользование26.4.xиз@types /开玩笑являетсяидеальным。Вцелом,старайтесьмаксимальноприблизитьосновную(26) и минорную (4)версию。

添加 - - - dev @types /笑话