Jest: рд╡реИрд╢реНрд╡рд┐рдХ `рдЬреЗрд╕реНрдЯ-рдХреНрд▓реА` рдЪрд▓рд╛рдирд╛ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрдЬрд╛рдп рдЪреЗрддрд╛рд╡рдиреА рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП

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

рдЬреЗрд╕реНрдЯ рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЪрд▓рд╛рдиреЗ рдкрд░ process.exit(1) рдХреЙрд▓ рдЯреНрд░рд┐рдЧрд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╡рд┐рд╖рдо рдкрд░реАрдХреНрд╖рд╛ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рддреЗ рд╣реИрдВ - рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЬрдм рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдкрд╛рд╕ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдПрдХ рдЧреИрд░-рд╢реВрдиреНрдп рдирд┐рдХрд╛рд╕ рдХреЛрдб рд▓реМрдЯрд╛рддреА рд╣реИ, рдФрд░ рдпрд╣ рддреБрд░рдВрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпреЛрдВред

рдЬрдм jest рдХреЛ npm test (рдЬреЛ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд╛рдорд╛рдиреНрдп рдкрд░рдВрдкрд░рд╛ рд╣реИ) рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдорд┐рд▓рддрд╛ рд╣реИ:

Please run `npm install` to use the version of Jest intended for this project.
...
163 tests passed (163 total in 30 test suites, run time 3.292s)
npm ERR! Test failed.  See above for more details.

рдХреЛрдИ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рд╡рд░рдг рдирд╣реАрдВ рд╣реИ ("рдХреГрдкрдпрд╛ рдЪрд▓рд╛рдПрдВ ..." рд▓рд╛рдЗрди рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреА рддрд░рд╣ рдирд╣реАрдВ рджрд┐рдЦрддреА рд╣реИ") рдФрд░ рдХреЛрдИ рдЕрд╕рдлрд▓ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдбрд┐рдмрдЧрд┐рдВрдЧ рдЕрдЬреАрдм рд╣реИред

рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ

  1. рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ getJest рд╕реЗ рдЬреЗрд╕реНрдЯ рдХреЗ рдкреИрдХреЗрдЬ-рд╕реНрдерд╛рдиреАрдп рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдХреЛ рд╣рдЯрд╛рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рдЕрдЧрд░ рд▓реЛрдЧ npm install рдЪрд▓рд╛рдП рдмрд┐рдирд╛ рдЬреЗрд╕реНрдЯ рдХреЗ рдЧреИрд░-рд╕реНрдерд╛рдиреАрдп рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреИрдХреЗрдЬ рдХреЛ рдХреНрдпреЛрдВ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП?
  2. рдпрджрд┐ рдкрд░реАрдХреНрд╖рдг рдмрдиреЗ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЙрдкрдпреЛрдЧреА рд╣реИ, рддреЛ рдЗрд╕реЗ рдирд┐рдХрд╛рд╕ рдХреЛрдб рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ console.warn рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдкрд░реАрдХреНрд╖рдг рдЕрднреА рднреА рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкрд░реЗрд╢рд╛рдиреА рдХреЗ рдЪрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЪреЗрддрд╛рд╡рдиреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рдЖрдЙрдЯрдкреБрдЯ рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
  3. рдпрджрд┐ рдПрдХ рдЧреИрд░-рд╢реВрдиреНрдп рдирд┐рдХрд╛рд╕ рдХреЛрдб рд▓реМрдЯрд╛рдирд╛ рдкрд╕рдВрдж рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд░реАрдХреНрд╖рдг рдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ Error рдлреЗрдВрдХрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗ - рдиреЛрдб рдХреА рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рддреНрд░реБрдЯрд┐ рдкреНрд░рдмрдВрдзрди console.error рддреБрд▓рдирд╛ рдореЗрдВ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж process.exit(1) ред
  4. рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдлреЗрдВрдХрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕рднреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдЪрд▓рдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рддреБрд░рдВрдд process.exit(1) рдХреЙрд▓ рдХрд░реЗрдВ - рдпрджрд┐ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд┐рд░реНрднрд░рддрд╛ рдЧрд╛рдпрдм рд╣реЛрдиреЗ рдкрд░ рдЬреЗрд╕реНрдЯ рдХреЛ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдЪрд▓рд╛рдирд╛ рдареАрдХ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рднрд╛рдЧреЛред

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

@mmcgahan @cpojer рдпрд╛рд░реНрди рд╡рд░реНрдХрд╕реНрдкреЗрд╕ рдореЛрдиреЛрд░реЗрдкреЛ рдХреЗ рднреАрддрд░ рдЪрд╛рдЗрд▓реНрдб рдкреИрдХреЗрдЬ рдХреЗ рдЕрдВрджрд░ рдЬреЗрд╕реНрдЯ рдЪрд▓рд╛рддреЗ рд╕рдордп рдореБрдЭреЗ рдпрд╣ рдЧреИрд░-рдШрд╛рддрдХ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реА рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╢рд╛рдпрдж рдЗрд╕реЗ рдЧрд▓рддреА рд╕реЗ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрдк jest рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡рд╣ рдореЛрдиреЛрд░реЗрдкреЛ рд░реВрдЯ рддрдХ рдлрд╣рд░рд╛рдП рдЬрд╛ рд░рд╣реЗ рдкреИрдХреЗрдЬреЛрдВ рд╕реЗ рдирд┐рдкрдЯ рдирд╣реАрдВ рд░рд╣рд╛ рд╣реИ?

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

рдЗрд╕реЗ рд▓рд╛рдиреЗ рдФрд░ рдореБрджреНрджреЗ рдХреЗ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╕рдЪ рдХрд╣реВрдВ рддреЛ, рдореИрдВ рдЦреБрдж рдЗрд╕ рд╕рд╛рдорд╛рди рдХреЛ рд▓реЗрдХрд░ рдкрд░реЗрд╢рд╛рди рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЬреЗрд╕реНрдЯ рдХреЗ рдЯреЗрд╕реНрдЯ рд╕реВрдЯ рдХреЛ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдХрдард┐рди рдмрдирд╛ рджреЗрддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рднреА рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдпрд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдЙрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ рдЕрдЧрд░ рдЬреЗрд╕реНрдЯ рдЕрднреА рднреА рдЪрд▓ рд░рд╣реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдЦреЗрдж рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдкрд░ рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд┐рдпрд╛ред

рдХреНрдпрд╛ рдЖрдк рдкреБрд▓ рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рд╣реЛрдВрдЧреЗ?

рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

  • process.exit(1) рдирд┐рдХрд╛рд▓реЗрдВред
  • process.on('exit', () => console.log(chalk.red('The error message '))) рддрд╛рдХрд┐ рдЯреЗрд╕реНрдЯ рд░рди рдХреЗ рдЕрдВрдд рдореЗрдВ рд╣рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛, рд▓рд╛рд▓ рд╕рдВрджреЗрд╢ рдорд┐рд▓реЗ рдЬреЛ рдЖрдкрдХреЛ рдмрддрд╛рдП рдХрд┐ рдХреБрдЫ рд╡реИрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рдЙрд╕реЗ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

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

@cpojer рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рд╢реАрдШреНрд░ рд╣реА рдкреАрдЖрд░ рдкреНрд░рд╕реНрддреБрдд рдХрд░реЗрдВрдЧреЗ

@mmcgahan @cpojer рдпрд╛рд░реНрди рд╡рд░реНрдХрд╕реНрдкреЗрд╕ рдореЛрдиреЛрд░реЗрдкреЛ рдХреЗ рднреАрддрд░ рдЪрд╛рдЗрд▓реНрдб рдкреИрдХреЗрдЬ рдХреЗ рдЕрдВрджрд░ рдЬреЗрд╕реНрдЯ рдЪрд▓рд╛рддреЗ рд╕рдордп рдореБрдЭреЗ рдпрд╣ рдЧреИрд░-рдШрд╛рддрдХ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реА рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╢рд╛рдпрдж рдЗрд╕реЗ рдЧрд▓рддреА рд╕реЗ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрдк jest рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡рд╣ рдореЛрдиреЛрд░реЗрдкреЛ рд░реВрдЯ рддрдХ рдлрд╣рд░рд╛рдП рдЬрд╛ рд░рд╣реЗ рдкреИрдХреЗрдЬреЛрдВ рд╕реЗ рдирд┐рдкрдЯ рдирд╣реАрдВ рд░рд╣рд╛ рд╣реИ?

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

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

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

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

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

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

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