Jest: [рдкреНрд░рд╢реНрди] рдХреНрдпрд╛ рдЬреЗрд╕реНрдЯ рдмреИрдХрдПрдВрдб рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 4 рдЕрдЧре░ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: facebook/jest

рдореИрдВ рдЕрдм рддрдХ рдЬреЗрд╕реНрдЯ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдШрдЯрдХреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВрдиреЗ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдиреЛрдб рдмреИрдХрдПрдВрдб рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдореЛрдЪрд╛/рдЬреИрд╕реНрдореАрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдореИрдВ рд╕рд┐рд░реНрдл рдпрд╣ рдкреВрдЫрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдмреИрдХрдПрдВрдб рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ (рдФрд░ рдЕрдиреБрд╢рдВрд╕рд┐рдд), рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдЗрд╕рдХрд╛ рдХреЛрдИ рд╕рдВрдХреЗрдд рдирд╣реАрдВ рдорд┐рд▓рд╛ (рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ , React-Native, Async, Webpack, рдпрд╛рдиреА рдирд╣реАрдВ Node )

рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдФрд░ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореИрдВрдиреЗ рддрддреНрдХрд╛рд▓ рд░реЛрдбрдмреНрд▓реЙрдХ рдорд╛рд░рд╛ред brcypt рдПрдХ [SECURITY] node-uuid: crypto not usable, falling back to insecure Math.random() рдЪреЗрддрд╛рд╡рдиреА рдЯреНрд░рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдПрдХ рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ ( TypeError: Path must be a string. Received undefined ) рдХреЗ рдХрд╛рд░рдг рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ

рдХреНрдпрд╛ рдЕрднреА рдмреИрдХрдПрдВрдб рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдпрд╛ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рджрд╛рдпрд░реЗ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЬреИрд╕реНрдореАрди рдЬреИрд╕рд╛ рдХреБрдЫ рдмреЗрд╣рддрд░ рдлрд┐рдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЖрдк рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдмреИрдХрдПрдВрдб рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдЬреЗрд╕реНрдЯ рд╕реНрд╡рдпрдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рднрд╛рд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдЬреАрдердм рдкрд░ рдПрдХ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдВ npm install рдФрд░ npm test рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреЛ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ?

рдореИрдВ рджреЛ рдЪреАрдЬреЛрдВ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ: "automock": false рдФрд░ "testEnvironment": "node" ред рдпрджрд┐ рдЖрдкрдХреЗ рдЕрдиреНрдп рдкрд░реАрдХреНрд╖рдг рдЗрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдПрдХ рдЕрд▓рдЧ рдЬреЗрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ --config=pathToConfig.json рд╕рд╛рде рдЬреЗрд╕реНрдЯ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлреНрд░рдВрдЯрдПрдВрдб рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП modulePathIgnorePatterns рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЖрдк рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдмреИрдХрдПрдВрдб рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдЬреЗрд╕реНрдЯ рд╕реНрд╡рдпрдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рднрд╛рд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдЬреАрдердм рдкрд░ рдПрдХ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдВ npm install рдФрд░ npm test рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреЛ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ?

рдореИрдВ рджреЛ рдЪреАрдЬреЛрдВ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ: "automock": false рдФрд░ "testEnvironment": "node" ред рдпрджрд┐ рдЖрдкрдХреЗ рдЕрдиреНрдп рдкрд░реАрдХреНрд╖рдг рдЗрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдПрдХ рдЕрд▓рдЧ рдЬреЗрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ --config=pathToConfig.json рд╕рд╛рде рдЬреЗрд╕реНрдЯ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлреНрд░рдВрдЯрдПрдВрдб рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП modulePathIgnorePatterns рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рддреНрд╡рд░рд┐рдд рдЙрддреНрддрд░ @cpojer рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдпрд╣ рд╕реБрдирдХрд░ рдЦреБрд╢реА рд╣реБрдИ рдХрд┐ рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдиреЛрдб рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ! рдореИрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдФрд░ рдПрдкреАрдЖрдИ рдХреЛ рдмрд╕ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреВрдЫрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдорд╣рд╕реВрд╕ рд╣реБрдИ рдХреНрдпреЛрдВрдХрд┐ рдСрдирд▓рд╛рдЗрди рд▓рдЧрднрдЧ рдХреЛрдИ рд╕рдВрд╕рд╛рдзрди рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдиреЛрдб рдмреИрдХрдПрдВрдб рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЬреНрдпрд╛рджрд╛рддрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде (рдпрд╛ рдореЗрд░рд╛ Google-Fu) рдмрд╕ рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рдерд╛)ред

рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ node_modules рдордЬрд╝рд╛рдХ рдЙрдбрд╝рд╛ рд░рд╣рд╛ рдерд╛, testEnvironment: node рдиреЗ рдЪрд╛рд▓ рдЪрд▓реА!

рдЪреАрдпрд░реНрд╕!

рд╣рд╛рдВ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд╛рддрд╛рд╡рд░рдг ( jsdom ) рд╣рдореЗрд╢рд╛ рдЦреБрдж рдХреЛ рдиреЛрдб рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЙрдзрд╛рд░ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдПрдХ рдФрд░ рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдиреЛрдб рдПрдирд╡реА 500ms рддреЗрдЬреА рд╕реЗ (рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рддрддреНрдХрд╛рд▓) рд▓реЛрдб рдХрд░реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЬреЗрдПрд╕рдбреЙрдо рдереЛрдбрд╛ рдзреАрдорд╛ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

stephenlautier picture stephenlautier  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

StephanBijzitter picture StephanBijzitter  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jardakotesovec picture jardakotesovec  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

paularmstrong picture paularmstrong  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

GrigoryPtashko picture GrigoryPtashko  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ