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

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

Установитеjestспомошью

添加 --dev Jest.

ИлиNPM.

NPM. 安装 ——save-dev开玩笑

Примечание:Документация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илиnpm安装jest - global)Смножествомполезныхопций。

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

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

Если вы хотите узнать больше о работе с笑话вкоманднойстроке,ОбратитевниманиенастраницуПараметровКоманднойстрокиJest

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

СозданиеБазовогоФайлаКонфигурации

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

jest --init.

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

дляиспользования.禁止禁忌,установитенеобходимыезависимостичерез

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

Настройтеbabelнавашутекушушверсию节点JS,СоздавФайлbabel.config.js.вкорневашегопроекта:

// babel.config.js.
模块 出口 = {
预设 [ [ “@babel / preset-env” { 目标 { 节点 '当前的' } } ] ]
} ;

ИдеальнаяконфигурациядляBabelБудетзависетьотвашегоПроекта。Смотрите.доументациюBabel.для получения дополнительной информации。

**ДобавлениеотдельнойконфигурациидляBabelТольконавремязапускаJest**

JestАвтоматическиустановитдляprocess.env.node_env.значение'测试'еслинеуказанодругое。Выможетеиспользоватьштуопцию,чтобыдобавитьнастройки,КоторыебудутиспользоватьсяТолькововремязапускаJest,Например:

// babel.config.js.
模块 出口 = API. = > {
const istest. = API. env. '测试' ;
//Используйтеistest,чтобыописатьплагиныипресеты,которыебудутиспользоватьсяТолькосingJest。
返回 {
// ......
} ;
} ;

Примечание:Babel-Jest.АвтоматическиустанавливаетсяприустановкеjestипреобразуетфайлыесливвашемпроектеестьсушествушаяконфигурацияBabel。ДляобходаданногоПоведения,ВыможетеявноСброситьопцию变换вКонфигурации:

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

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

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

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

сиспользованием网客

JestМожетИспользоватьсяВПроектах,ИспользушихwebpackдляуправленияРесурсами,Стилямиикомпиляцией。webpackдействительнопривноситнекоторыеособенности,Способныесоздатьпроблемыпрограммистам,Всравнениисдругимиинструментами。Обратитеськразделу.Руководствопоработесbobpackдляначалаработысним。

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

JestМожетИспользоватьсяВПроектах,Используших包裹捆绑дляуправленияизображениями,стилямиикомпиляциейаналогичнонwebpack包裹етребуетнастройкиОбратитеськофициальнойдокументации

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

jestподдерживаетcysect,черезbabel。Сначалаубедитесь,чтовыследовалиинструкциямпоНастройке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',
],
};

Однако,ЕстьнесколькоПодводныхКамней.Виспользовании类型签字ВместесBabel。ПосколькуQuestcriptПоддерживаетсявBabelчерезтранспиляцию,默克斯Будетпроверятьтипыверятьтестахкогдаонизапушены。Есливыхотите,ТОВыможетеиспользоватьTS-JEST.,взаменилипростозапуститекомпилятор打印稿tscОтдельно(ИлиКакчастьВашегоПроцессасборки)。

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

длямодулей.@类型/ *РекомендуетсясопоставлятьверсиюjestсверсиейсвязанногоМодуля。например,есливыиспользуетете26.4.0Версию.笑话,тоиспользование26.4.x.из.@types /开玩笑вляетсяидеальным。Вцелом,СтарайтесьмаксимальноПриблизиьОсновную(26.) и минорную (4.)Версию。

添加 - - - dev @types /笑话