Jest: Jest рд╕рднреА рд╡рд┐рдВрдбреЛрдЬрд╝ рдорд╢реАрдиреЛрдВ (Windows 10 рдФрд░ рдЙрд╕рд╕реЗ рдХрдо) рдкрд░ 3x рдзреАрдорд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 15 рдЬрдире░ 2019  ┬╖  76рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: facebook/jest

ЁЯРЫ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ

Jest рд╡рд┐рдВрдбреЛрдЬрд╝ рдорд╢реАрдиреЛрдВ рдкрд░ рдзреАрдорд╛ рд╣реИред

рдкреНрд░рдЬрдирди рдХрд░рдирд╛

рд╡рд┐рдВрдбреЛрдЬрд╝ рдбреЗрд╕реНрдХрдЯреЙрдк рдорд╢реАрди рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рд╡реНрдпрдХреНрддрд┐ред

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░

рдпрд╣ рддреЗрдЬ рдмрд┐рдЬрд▓реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

npx envinfo --preset jest рдЪрд▓рд╛рдПрдВ

рдпрд╣рд╛рдВ рдкрд░рд┐рдгрд╛рдо рдЪрд┐рдкрдХрд╛рдПрдБ:

  System:
    OS: Windows 10
    CPU: (4) x64 Intel(R) Core(TM) i5-7400 CPU @ 3.00GHz
  Binaries:
    npm: 6.2.0 - C:\Program Files\nodejs\npm.CMD

рдореИрдВрдиреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдкрдврд╝рдиреЗ рдХрд╛ рдПрдХ рдЯрди рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рднреА рд╡рд┐рдВрдбреЛрдЬрд╝ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ 100% рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдореЗрдВ рджреЗрд░реА рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛ рд░рд╣реЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдпрд╣ рд╕рднреА рдореИрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдзрдзрдХрддреЗ рд╣реБрдП рддреЗрдЬрд╝ рд╣реИред

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

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

рдореИрдВ рдПрдХ рдирдП рдореИрдХрдмреБрдХ рдкреНрд░реЛ рдкрд░ рд╣реВрдВред рдЪреВрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдореИрдХрдУрдПрд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ 10 рджреЛрдиреЛрдВ рдкрд░ рдЫрд╛рддреНрд░ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдбреНрд░рд╛рдЗрд╡ рдореЗрдВ рджреЛ рдФрд░ рд╡рд┐рднрд╛рдЬрди рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛; рд╡рд┐рдВрдбреЛрдЬ 10 рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЯрдХреНрд╕рд░рд╛ NTFS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдЭрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рд▓рд┐рдП рдПрдХред

рдореИрдВ рдЖрдЬ рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╛рда рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЧрддрд┐ рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ рдЬрд┐рд╕рдореЗрдВ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ MacOS рд╕реЗ Jest рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдХреЛрдб рдФрд░ рдкрд░реАрдХреНрд╖рдг рд╕рд╛рдЭрд╛ NTFS рд╡рд┐рднрд╛рдЬрди рдкрд░ рд╕реНрдерд┐рдд рд╣реИрдВред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рднреА рд╕реВрдЯреЛрдВ рдХреЛ describe.skip рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЗрд╕реНрдЯ рдХреЛ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдореЗрдВ 10 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд▓рдЧрддреЗ рд╣реИрдВ, рджреЛрдиреЛрдВ рдПрдХрд▓-рд░рди рдФрд░ рд╡реЙрдЪ рдореЛрдб рдореЗрдВред

8 рд╕реВрдЯ
42 рдкрд░реАрдХреНрд╖рдг

рдореИрдВрдиреЗ jest mocha рдФрд░ chai jest рд▓рд┐рдП рд╕реНрд╡реИрдк рдХрд┐рдпрд╛ рдФрд░ рд░рди рд▓рдЧрднрдЧ 1 рд╕реЗрдХрдВрдб рд╕рд┐рдВрдЧрд▓ рдФрд░ 10 рдорд┐рд▓реАрд╕реЗрдХрдВрдб рд╡реЙрдЪ рдореЛрдб рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ред

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

рд╕рдВрдмрдВрдзрд┐рдд: # 6783

рдХреНрдпрд╛ рдпрд╣ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рд╢реБрд░реВ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдпрд╛ рдШрдбрд╝реА рдореЛрдб рдореЗрдВ рднреА рд╣реИ? рдпрджрд┐ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рджреМрд░рд╛рди, рдЖрдк watchman рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдореЗрдВ рдорджрдж рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП (https://facebook.github.io/watchman/docs/install.html)

рдЬрдм рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рддреЛ рдпрд╣ рд╡рд╣рд╛рдВ рд╕реЗ рдареАрдХ рд▓рдЧ рд░рд╣рд╛ рд╣реИ (EDIT: рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдпрд╣ 0.5 рд╕реЗрдХрдВрдб рдХреА рдЧрддрд┐ рд╕реЗ рдПрдХ-рдПрдХ рдХрд░рдХреЗ рдЧреБрдЬрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдорд╛рдирдХ 0.05 рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред
рдкреНрд░рддрд┐ рдкрд░реАрдХреНрд╖рдг рд╕реЗрдХрдВрдб)
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рд╢реБрд░реВ рд╣реЛрдиреЗ рдФрд░ / рдпрд╛ рдЬреЗрд╕реНрдЯ рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░рдиреЗ рдкрд░ рдзреАрдорд╛ рд╣реИ (рд▓рдЧрднрдЧ 4-6 рд╕реЗрдХрдВрдб рдХреА рджреЗрд░реА, рдореИрдХ рдорд╢реАрдиреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 4-6x рдзреАрдорд╛)

рдореИрдВ рдкрд╣рд░реЗрджрд╛рд░ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЖрдкрдХреЛ рд╡рд╛рдкрд╕ рдорд┐рд▓реВрдВрдЧрд╛

рдпрджрд┐ рдЖрдк рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдЬреИрд╕реЗ ndb рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдзреАрдорд╛ рдХреНрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдмрдбрд╝реА рдорджрдж рд╣реЛрдЧреА eg

рдЪреМрдХреАрджрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде рджреЗрд░реА рдЕрднреА рднреА рдзреАрдореА рд╣реИред
рдореИрдВрдиреЗ ndb "jest --verbose" рдЪрд▓рд╛рдиреЗ рдХреЗ рд╕рд╛рде рдПрдХ рд░реВрдкрд░реЗрдЦрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рдпрд╣рд╛рдБ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВ:

рдкрд╣рд▓реЗ 1.7 рд╕реЗрдХрдВрдб рдХрд╛ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ:

first_1 7secs

1.8 рд╕реЗрдХрдВрдб рдХреЗ 2.7 рд╕реЗрдХрдВрдб рдХреЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ

image

рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рдмрд╛рдж ndb рдореЗрдВ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЯреИрдм рд╕реЗ .json рдлрд╝рд╛рдЗрд▓ рдФрд░ .heapsnapshot рдлрд╝рд╛рдЗрд▓ рд╕рд╣реЗрдЬреА рдЧрдИ:

profiling.zip

@pfftdammitchris рдХреНрдпрд╛ рд╣реИ рдЖрдкрдХрд╛ [рд╕рдЯреАрдХ] usecase рдЬрд╣рд╛рдБ рдЖрдкрдиреЗ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рджреЗрдЦрд╛ рд╣реИ?
(рдПрдХ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдХрдИ рдлрд╛рдЗрд▓реЗрдВ)? (рдШрдбрд╝реА рдореЛрдб рдпрд╛ рдирд╣реАрдВ)? рдХреНрдпрд╛ рдЖрдк рдЫреВрдЯ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╡реЙрдЪ рдореЛрдб рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП => рдХреГрдкрдпрд╛ рдореЗрд░реА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдХреЛ рдЗрд╕рдореЗрдВ рдкрдврд╝реЗрдВ: # 6783

рдпрд╣ рд╡реЙрдЪ рдореЛрдб рдХреЗ рд╕рд╛рде рдпрд╛ рдмрд┐рдирд╛ рд╕рд┐рдВрдЧрд▓ рдФрд░ рдорд▓реНрдЯреАрдкрд▓ рджреЛрдиреЛрдВ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдзреАрдорд╛ рд╣реИред рдмрд╣реБрдд рдмрд╛рд░ рд╣рд░ рдмрд╛рд░ рдпрд╣ рдХрд┐рд╕реА рднреА рдкрд░реАрдХреНрд╖рд╛ рдХреЛ рдЪрд▓рд╛рддрд╛ рд╣реИ, рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдкрд░ 3+ рд╕реЗрдХрдВрдб рдХреА рджреЗрд░реА рд╣реЛрддреА рд╣реИ, рдФрд░ рдпрд╣ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдПрдХ-рдПрдХ рдХрд░рдХреЗ 0.3 рдпрд╛ 0.4 рдпрд╛ 0.5 рд╕реЗрдХрдВрдб рддрдХ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реИ, рдЬрдмрдХрд┐ рдЕрдиреНрдп рдкрд░реАрдХреНрд╖рдг рдзрд╛рд╡рдХ рдЬреИрд╕реЗ рдореЛрдЪрд╛ / рдЪреА рдЖрдорддреМрд░ рдкрд░ рдмрд╕ рдЪрд▓реЗрдЧрд╛ рдкреНрд░рддреНрдпреЗрдХ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ 0.05 рд╕реЗрдХрдВрдбред

рдореИрдВ рдХреЛрдбреЗрдВрдбрдмреЙрдХреНрд╕ рдореЗрдВ рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рд╡реЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди / рд░рдирд┐рдВрдЧ рдЯреЗрд╕реНрдЯ рдкрд░ рддреБрд░рдВрдд рдЬреЗрд╕реНрдЯ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдореЗрд░реЗ рд╕рд╣рдХрд░реНрдореА рдЕрдкрдиреЗ рдореИрдХ рдорд╢реАрдиреЛрдВ рдкрд░ рдЬреЗрд╕реНрдЯ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рд╡реЗ рдЗрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рддреБрд░рдВрдд рдЪрд▓рд╛рддреЗ рд╣реИрдВред рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдпрд╣ рд╕рд┐рд░реНрдл рд╡рд┐рдВрдбреЛрдЬрд╝ рдорд╢реАрди рд╣реИред рдореИрдВ рдХрд╛рдо рдкрд░ рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ рдорд╢реАрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рд╡рд╣рд╛рдВ рдкрд░ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рдФрд░ рдореИрдВ рдШрд░ рдкрд░ рднреА рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ рдорд╢реАрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣рд╛рдВ рдЬрд╛рд░реА рд╣реИред

рдореИрдВрдиреЗ --runInBand рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ рднрд╛рд╡рдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдкреНрд░рддреНрдпреЗрдХ рдЕрддрд┐рд░рд┐рдХреНрдд 0.2 рд╕реЗрдХрдВрдб рд╕реЗ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдзреАрдорд╛ рдХрд░ рджрд┐рдпрд╛ рд╣реИред

рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг

рдореИрдВрдиреЗ --runInBand рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ рднрд╛рд╡рдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдкреНрд░рддреНрдпреЗрдХ рдЕрддрд┐рд░рд┐рдХреНрдд 0.2 рд╕реЗрдХрдВрдб рд╕реЗ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдзреАрдорд╛ рдХрд░ рджрд┐рдпрд╛ рд╣реИред

=> рдХреНрдпрд╛ рдЖрдкрдиреЗ v24 рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛? v23 рд╕реЗ v24 рддрдХ, рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕реБрдзрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:
_ rerun watch рдФрд░ рдХреЗрд╡рд▓ рдЕрдЧрд░ рдЖрдк рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЪрд▓рд╛рддреЗ рд╣реИрдВ (рдкрд╣рд▓реЗ рд░рди рдкрд░ рдирд╣реАрдВ) _
-> 2 / 3sec рдбреНрд░реЙрдк 0.4 / 0.5sec рдХреЗ рд▓рд┐рдПред
рд▓реЗрдХрд┐рди рдореИрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдореИрдВрдиреЗ рдХрднреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА ... рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдЕрднреА рднреА рдмреБрд░рд╛ рд╣реИ ... рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡рд░реНрддрдорд╛рди рд╕реБрдзрд╛рд░ рдХреЗ рд╕рд╛рде рднреА


@SimenB

  1. рдореИрдВ https://github.com/facebook/jest/issues/7110 рдХреЛ рдЬреЗрд╕реНрдЯ рд╕реНрдкреАрдб рд░рд┐рдЧреНрд░реЗрд╢рди [v22 рдмрдирд╛рдо v23] рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдирддрд╛ рд╣реВрдВред
    рдЬрд╣рд╛рдБ # 6783 рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ

2. рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ: рд╕рднреА рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ [рдореИрдХ рдмрдирд╛рдо рд╡рд┐рдВрдбреЛрдЬ] рдХреЗ рд▓рд┐рдП рдЧрддрд┐ рд╕рдорд╕реНрдпрд╛ред

рд╣реИрд▓реЛ рд╕рднреА рдХреЛ !
рдореИрдВ рд╡реЗрд╕реНрдЯ 24 рдФрд░ рд╡рд┐рдВрдбреЛрдЬрд╝ 10 (400 рдЯреЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП 800) рдХреА рд╕реБрд╕реНрддреА рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реВрдВред рдЗрд╕ рд╕рдмрдХреЛ рддреЗрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдЬрд┐рд╕ рддреЗрдЬреА рд╕реЗ рд░рд╛рд╕реНрддрд╛ рдЦреЛрдЬрд╛, рд╡рд╣ рд╣реИ рдХрд┐ рдкреЙрд╡рд░рд╢реЗрд▓ рдпрд╛ рд╕реАрдПрдордбреА рдХреЗ рдмрдЬрд╛рдп рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЕрдм рдореЗрд░рд╛ рдкрд░реАрдХреНрд╖рдг "рдХреЗрд╡рд▓" 189s рд▓реЗрддрд╛ рд╣реИред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 1302 рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде 144 рдкрд░реАрдХреНрд╖рдг рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдПрдХ рд╕реВрдЯ рд╣реИ, рдЬреЛ рд╡рд┐рдВрдбреЛрдЬ 10 рдмрд┐рд▓реНрдб 15063 рдорд╢реАрди рдкрд░ рдЪрд▓рдиреЗ рдХреЗ рд▓рд┐рдП 1 рдорд┐рдирдЯ рдФрд░ 43 рд╕реЗрдХрдВрдб рдХрд╛ рд╕рдордп рд▓реЗрддрд╛ рд╣реИ, рдХреЛрд░ рдЖрдИ 7 16 рдЬреАрдмреА рдХреЗ рд╕рд╛рде рд╣реИ, рдФрд░ рд╡реЗ рдореИрдХ рдУрдПрд╕ рдореЛрдЬрд╡реЗ рдкрд░ 32 рдЬреАрдмреА рдХреЗ рд╕рд╛рде 28 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВред рд╣рдорд╛рд░реА рд╡рд┐рдХрд╛рд╕ рдЯреАрдо рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд╡рд┐рдВрдбреЛрдЬ рдФрд░ рдореИрдХ рдХреЗ рдмреАрдЪ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИ рдФрд░ рд╕рдВрдЦреНрдпрд╛ рдмрд╣реБрдд рджреЛрд╣рд░рд╛рдИ рдЬрд╛рддреА рд╣реИред

рдпрд╣рд╛рдБ рдПрдХ рд╕рд░рд▓ рдкрд░реАрдХреНрд╖рдг рд╣реИ -

it("works", () => {
  expect(1).toEqual(1);
});

рдореИрдВрдиреЗ рдЗрд╕реЗ рдХреЛрдбреЗрдВрдбрдмреЙрдХреНрд╕ рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдмрд╣реБрдд рд╣реА рддреБрд░рдВрдд рдЪрд▓рддрд╛ рд╣реИ - https://codesandbox.io/s/4qcoin0q52lw

рдореЗрд░реА рд╡рд┐рдВрдбреЛрдЬ рдорд╢реАрди рдкрд░ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕рдореЗрдВ 4-5 рд╕реЗрдХрдВрдб рдХрд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ -

PASS src / index.test.js
v рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (62ms)

рдЯреЗрд╕реНрдЯ рд╕реВрдЯ: 1 рдкрд╛рд╕, 1 рдХреБрд▓
рдЯреЗрд╕реНрдЯ: 1 рдЙрддреНрддреАрд░реНрдг, 1 рдХреБрд▓
рд╕реНрдиреИрдкрд╢реЙрдЯ: 0 рдХреБрд▓
рд╕рдордп: 4.158 рд╕реЗ
рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рднрд╛рдЧрд╛ред

рдкрд░реАрдХреНрд╖рдг рдиреЗ рд╕реНрд╡рдпрдВ 62ms рд▓рд┐рдпрд╛, рд▓реЗрдХрд┐рди рдмрд╛рдХреА рдкрд░реАрдХреНрд╖рдг рдореЗрдВ 4 рд╕реЗрдХрдВрдб рдХрд╛ рд╕рдордп рд▓рдЧрд╛ред Enter рдХреЛ рджрдмрд╛рдХрд░ рдкрд░реАрдХреНрд╖рдг рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдирд╛, рдЗрд╕рдореЗрдВ рдЙрддрдирд╛ рд╣реА рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред

рдореЗрд░реА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ -

> npx envinfo --preset jest

  System:
    OS: Windows 10
    CPU: (4) x64 Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
  Binaries:
    Node: 8.12.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.10.1 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
    npm: 6.4.1 - C:\Program Files\nodejs\npm.CMD

рдореИрдВрдиреЗ рдЗрд╕реЗ WSL рдЙрдмрдВрдЯреВ рдХреЗ рд╕рд╛рде рдЖрдЬрдорд╛рдпрд╛ рдФрд░ рд╡рд╣реА рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓реЗ (4-5 рд╕реЗрдХрдВрдб) - рдЙрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ -

  System:
    OS: Linux 4.4 Ubuntu 18.04.2 LTS (Bionic Beaver)
    CPU: (4) x64 Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
  Binaries:
    Node: 8.10.0 - /usr/bin/node
    npm: 3.5.2 - /usr/bin/npm

рдореИрдВ рд╕рд┐рд░реНрдл рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЗрд╕рд▓рд┐рдП рдмрд╣реБрдд рд╕рд░рд▓ рдкрд░реАрдХреНрд╖рдг рд╣реИрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЪрд▓рд╛рдиреЗ рдореЗрдВ 15-20 рд╕реЗрдХрдВрдб рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдЬрд▓реНрджреА рд╕реЗ рджреМрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдБ - рдореБрдЭреЗ рдЕрдкрдиреА рд╕реЛрдЪ рдХреА рдЯреНрд░реЗрди рдХреЛ рдЦреЛрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ рдЕрдиреНрдпрдерд╛!

@bburns рдЙрдкрд░реЛрдХреНрдд рдореБрджреНрджреЗ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВ


@kensherman
рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рдпрд╛рд░реНрди рдкреНрд░рд╕реНрддрд╛рд╡реЛрдВ рдореЗрдВ 4 рдорд╛рдЗрдХреНрд░реЛрдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рдмреЗрд╣рддрд░ рд╣реИ?
https://github.com/facebook/jest/issues/7963#issuecomment -483985345

рдореИрдВ рдПрдХ рдирдП рдореИрдХрдмреБрдХ рдкреНрд░реЛ рдкрд░ рд╣реВрдВред рдЪреВрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдореИрдХрдУрдПрд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ 10 рджреЛрдиреЛрдВ рдкрд░ рдЫрд╛рддреНрд░ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдбреНрд░рд╛рдЗрд╡ рдореЗрдВ рджреЛ рдФрд░ рд╡рд┐рднрд╛рдЬрди рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛; рд╡рд┐рдВрдбреЛрдЬ 10 рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЯрдХреНрд╕рд░рд╛ NTFS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдЭрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рд▓рд┐рдП рдПрдХред

рдореИрдВ рдЖрдЬ рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╛рда рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЧрддрд┐ рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ рдЬрд┐рд╕рдореЗрдВ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ MacOS рд╕реЗ Jest рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдХреЛрдб рдФрд░ рдкрд░реАрдХреНрд╖рдг рд╕рд╛рдЭрд╛ NTFS рд╡рд┐рднрд╛рдЬрди рдкрд░ рд╕реНрдерд┐рдд рд╣реИрдВред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рднреА рд╕реВрдЯреЛрдВ рдХреЛ describe.skip рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЗрд╕реНрдЯ рдХреЛ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдореЗрдВ 10 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд▓рдЧрддреЗ рд╣реИрдВ, рджреЛрдиреЛрдВ рдПрдХрд▓-рд░рди рдФрд░ рд╡реЙрдЪ рдореЛрдб рдореЗрдВред

8 рд╕реВрдЯ
42 рдкрд░реАрдХреНрд╖рдг

рдореИрдВрдиреЗ jest mocha рдФрд░ chai jest рд▓рд┐рдП рд╕реНрд╡реИрдк рдХрд┐рдпрд╛ рдФрд░ рд░рди рд▓рдЧрднрдЧ 1 рд╕реЗрдХрдВрдб рд╕рд┐рдВрдЧрд▓ рдФрд░ 10 рдорд┐рд▓реАрд╕реЗрдХрдВрдб рд╡реЙрдЪ рдореЛрдб рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ред

рдореИрдВрдиреЗ рдореЛрдЪрд╛ рдФрд░ рдЪреА рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рд╕реНрд╡реИрдк рдХрд┐рдпрд╛ рдФрд░ рд░рди рд▓рдЧрднрдЧ 1 рд╕реЗрдХрдВрдб рд╕рд┐рдВрдЧрд▓ рдФрд░ 10 рдорд┐рд▓реА рд╕реЗрдХреЗрдВрдб рд╡реЙрдЪ рдореЛрдб рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ред

рдореВрд▓ рд░реВрдк рд╕реЗ рдЖрдкрдиреЗ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рдирд╣реАрдВ рдкрдврд╝реАред рдЖрдк mocha/chai рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ ... рд╣рдо рд╕рднреА рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ ... рд╣рдо рдЬреЗрд╕реНрдЯ рдХреЗ рдкреНрд░рддрд┐рдЧрдорди рдХреЛ рддрдп рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╛ рддреЛ рдЖрдк рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ [рдореЗрд░реА рдкреЛрд╕реНрдЯ рд╕реЗ] ...can you try with micromatch 4... рдпрд╛ рдЗрди рдмреЗрдХрд╛рд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдзрд╛рдЧреЗ рд╕реЗ рдмрд╛рд╣рд░ рд░рдЦреЗрдВред рдкреНрд░рддреНрдпрдХреНрд╖ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдЗрд╕реЗ рдХрд╣рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдиреНрдп рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред

@nasreddineskandrani рдореИрдВ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдмреЗрд╣рдж рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрди рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдЬрдм рдШрдбрд╝реА рдореЛрдб рдХреЗ рд╕рд╛рде рдЪрд▓рдиреЗ рдкрд░ рдХрд┐рд╕реА рднреА рдорджрдж рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред

@pachumon рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдЖрдпрд╛,

рдЖрдкрдХреЛ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдореБрджреНрджреЗ (рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ) рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ рдХреА рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдлрд┐рдХреНрд╕ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ jest рдореЗрдВ рдореМрдЬреВрдж рд╣реЛрдЧрд╛ 25 => рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдкрдврд╝реЗрдВ рдХрд┐ рдХреИрд╕реЗ рдПрдХ рджреЗрд╡ рдХреЛ рдпрд╣ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ https://github.com/ рдлреЗрд╕рдмреБрдХ / рдЬреЗрд╕реНрдЯ / рдореБрджреНрджреЛрдВ / 7963 # рдЬрд╛рд░реАрдХрд░рдг -483985345

рдирд┐рд░реНрднрд░рддрд╛ (micromatch) рдХреЛ рдЙрд╕ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ рдлрд┐рдХреНрд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ => рдЖрдк рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВрдиреЗ рдереЛрдбрд╝реА рд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдерд╛
https://github.com/nasreddineskandrani/benchmark_jest/blob/master/jest_24_with_micromatch4/package.json

рдЕрдкрдиреЗ package.json : ( yarn npm рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП)

...
  "resolutions": {
    "micromatch": "^4.0.0"
  }
...

рдЙрдореНрдореАрдж рд╣реИ рдХреА рдпрд╣ рдорджрдж рдХрд░реЗрдЧрд╛! рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ

рдореЗрд░реЗ рдЯреЗрд╕реНрдЯ рд░рди рдХрд╛ рд╕рдордп рднреА 24.6.1 рдХреЛ 24.6.1 рдФрд░ 24.8.0 рдХреЛ ~ 2.5 рдорд┐рдирдЯ рд╕реЗ 23.6.0 рд╕реЗ ~ 15 рдорд┐рдирдЯ рддрдХ рдХрд╛ рд╣реИред рд╣рдорд╛рд░рд╛ CI рд╕рд░реНрд╡рд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕ рдЕрдкрдЧреНрд░реЗрдб рдХреЗ рд╕рд╛рде рдмрд┐рд▓реНрдб рдЯрд╛рдЗрдо рдореЗрдВ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдмрдбрд╝реА рд╡реГрджреНрдзрд┐ рджреЗрдЦреА рдЧрдИ рд╣реИред рдореИрдВрдиреЗ micromatch рдирд┐рд░реНрднрд░рддрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдУрд╡рд░рд░рд╛рдЗрдб рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ @nasreddineskandrani рд╕реЗ рдХреЛрдИ рдлрд╛рдпрджрд╛ рдирд╣реАрдВ рд╣реБрдЖред рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдЕрдЧрд░ рдРрд╕рд╛ рдХреБрдЫ рд╣реИ рддреЛ рдореИрдВ рдЗрд╕рдХрд╛ рдирд┐рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрддрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

@TomMahle рдпрд╣ рдПрдХ рд╕реБрдкрд░ рдЦрд░рд╛рдм рдиреНрдпреВрдЬрд╝ рд╣реИ :( рд╣рдо рдЬрд┐рд╕ рд╢реАрд░реНрд╖ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡рд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА 23.6 рдореЗрдВ рдерд╛)
рдЕрднреА рдПрдХ рд╕рд╛рдзрд╛рд░рдг 'рд╕реИрдВрдкрд▓' рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдиреЗ рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рджрд┐рдЦрд╛рдпрд╛ред micromatch рдЕрджреНрдпрддрди рдХреЗ рдмрд╛рджред
рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЖрдк рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рдЬреА рд╣реИ? рдпрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ?

micromatch @nasreddineskandrani рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдЭрд╛рд╡ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд▓реЗрдХрд┐рди рдКрдкрд░ @TomMahle рдХреА рддрд░рд╣, рдЗрд╕реЗ ^4.0.0 рдкрд┐рди рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдд рдирд╣реАрдВ рд╣реБрдЖред ЁЯШв

рдореБрдЭреЗ рдПрдХ рдордЬреЗрджрд╛рд░ рдмрд╛рдд рдкрддрд╛ рдЪрд▓реА, рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдирд┐рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреА рд╣реИред

рдореИрдВ рдЕрдкрдиреЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдореБрдЦреНрдп рдРрдк рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдбреЙрдХ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдЕрдкрдиреЗ рдореВрд▓ рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдпрд╛ рддреЛ рдЬреИрд╕реНрдЯ рдЪрд▓рд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд░рдЦрддрд╛ рд╣реВрдВред рдЧреИрд░-рд╡реЙрдЪ рдореЛрдб рдореЗрдВ рдЪрд▓рдиреЗ рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рдЬреЛ рд╢рд╛рдпрдж @thebearingedge рдХреЗ рд░реВрдк рдореЗрдВ

рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡реЙрдЪ рдореЛрдб рдкрд░, рдЪреАрдЬреЗрдВ рдереЛрдбрд╝реА рдЕрд▓рдЧ рд╣реИрдВ: рджреЗрд╢реА рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ рд╣рдореЗрд╢рд╛ рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдбреЙрдХ рдХрдВрдЯреЗрдирд░ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рд░рди рдкрд░ рдзреАрд░реЗ-рдзреАрд░реЗ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рддрд╛ рд╣реИред рдПрдХ рдмрд╛рд░ рдЬрдм рдореИрдВ рдЗрд╕реЗ рджреВрд╕рд░реА рдмрд╛рд░ рдХрд┐рд╕реА рднреА рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реВрдВ (рдЬреИрд╕реЗ рдкреА рджрдмрд╛рдХрд░ рдФрд░ рдПрдХ рдкреИрдЯрд░реНрди рджрд░реНрдЬ рдХрд░рдХреЗ), рдпрд╣ рдПрдХ рд╕реЗрдХрдВрдб рдХреЗ рддрд╣рдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рддрд╛ рд╣реИ (рджреЗрд╢реА рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдореЗрдВ рд╕рдорд╛рди 3-4 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ)ред Docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд╣рд▓реВ рдпрд╣ рд╣реИ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдкрд░рд┐рд╡рд░реНрддрди рдИрд╡реЗрдВрдЯреНрд╕ рдХреЛ рдореЗрд░реА рд╡рд┐рдВрдбреЛрдЬрд╝ рд╡реЙрд▓реНрдпреВрдо рд╕реЗ docker рддрдХ рдкреНрд░рдЪрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреНрд░реЗрд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдЯрд░ рджрдмрд╛рдирд╛ рд╣реЛрдЧрд╛ рдмрдЬрд╛рдп рдЗрд╕рдХреЗ рдХрд┐ jest do it рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣реЛ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд╛рде рдореЗрдВ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдирд╣реАрдВ рд╣реИред

@rasreddineskandrani рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рдЬреА рд╣реИред рдпрджрд┐ рдХреЛрдИ рдЫреЛрдЯрд╛ рдХреЛрдб рд╕реИрдВрдкрд▓ (jest config?) рдпрд╛ рдЖрдБрдХрдбрд╝реЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдпрд╣ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ рдХрд┐ рдореИрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдкреНрд░рд╕рдиреНрди рд╣реВрдБред рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдирд╛рдЯрдХреАрдп рд░реВрдк рд╕реЗ рдзреАрдореЗ (рдХреЗрд╡рд▓ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░) рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕рдХрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред

рдореИрдВ рдЕрдкрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ docker рд╕рд╛рдорд╛рди рдкреВрд░рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ -> (рдПрдХ рд╕рдкреНрддрд╛рд╣ рдХреЗ рдмрд╛рдж) рдореИрдВ рдЗрд╕ рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдКрдВрдЧрд╛ред

@TomMahle
рдореИрдВ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░реЗрдкреЛ рдЬреАрдердм рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред

  1. рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрд┐рддрдиреЗ рдкрд░реАрдХреНрд╖рдг рд╣реИрдВ?
  2. рдХреНрдпрд╛ рдЖрдк рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП dom рдореЛрдб рд╕рдХреНрд╖рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
  3. рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдпрд╛ рдХреЛрдгреАрдп рд╣реИ?
    рдмрдХреНрд╢реАрд╢:
  4. рдХреНрдпрд╛ рдЖрдк рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд┐рддреБрдм рд░реЗрдкреЛ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
    рдЖрдк рдореЗрд░рд╛ рдХрд╛рдВрдЯрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: https://github.com/nasreddineskandrani/benchmark_jest
    рдпрд╛
  5. рд╢рд╛рдпрдж рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдг рдорд╢реАрди рдкрд░ рдореЗрд░реЗ рд░реЗрдкреЛ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЛ? рдФрд░ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦреЗрдВ? 23.6 рдФрд░ 24 рдХреЗ рдмреАрдЪ

рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдорд╛рдЗрдХреНрд░реЛрдЪреИрдЪ рдХреЗ рд░рдЦ-рд░рдЦрд╛рд╡ рдкрд░ рдкрд░реНрдпрд╛рдкреНрдд рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╣реА рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рд╣реЛред рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░ рджреМрдбрд╝рдирд╛ (рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд▓рд┐рдЦрдирд╛) рдЬреЗрд╕реНрдЯ рдкрд░реАрдХреНрд╖рдг рдЗрд╕ рд╕рдордп рдмрд╣реБрдд рдЕрдкреНрд░рд┐рдп рдЕрдиреБрднрд╡ рд╣реИред

рдореИрдВ рддрдм рд╕реЗ рдореЛрдЪрд╛ / рдЪреА рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЕрднреА рднреА рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг

рдореИрдВрдиреЗ --runInBand рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ рднрд╛рд╡рдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдкреНрд░рддреНрдпреЗрдХ рдЕрддрд┐рд░рд┐рдХреНрдд 0.2 рд╕реЗрдХрдВрдб рд╕реЗ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдзреАрдорд╛ рдХрд░ рджрд┐рдпрд╛ рд╣реИред

=> рдХреНрдпрд╛ рдЖрдкрдиреЗ v24 рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛? v23 рд╕реЗ v24 рддрдХ, рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕реБрдзрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:
_ rerun watch рдФрд░ рдХреЗрд╡рд▓ рдЕрдЧрд░ рдЖрдк рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЪрд▓рд╛рддреЗ рд╣реИрдВ (рдкрд╣рд▓реЗ рд░рди рдкрд░ рдирд╣реАрдВ) _
-> 2 / 3sec рдбреНрд░реЙрдк 0.4 / 0.5sec рдХреЗ рд▓рд┐рдПред
рд▓реЗрдХрд┐рди рдореИрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдореИрдВрдиреЗ рдХрднреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА ... рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдЕрднреА рднреА рдмреБрд░рд╛ рд╣реИ ... рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡рд░реНрддрдорд╛рди рд╕реБрдзрд╛рд░ рдХреЗ рд╕рд╛рде рднреА

@SimenB

  1. рдореИрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП # 7110 рдХреЛ рдЬреЗрд╕реНрдЯ рд╕реНрдкреАрдб рд░рд┐рдЧреНрд░реЗрд╢рди [v22 рдмрдирд╛рдо v23] рдорд╛рдирддрд╛ рд╣реВрдВред
    рдЬрд╣рд╛рдБ # 6783 рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ

2. рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ: рд╕рднреА рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ [рдореИрдХ рдмрдирд╛рдо рд╡рд┐рдВрдбреЛрдЬ] рдХреЗ рд▓рд┐рдП рдЧрддрд┐ рд╕рдорд╕реНрдпрд╛ред

рдореИрдВрдиреЗ рдкреЛрд╕реНрдЯ рдХреЗ рдЙрд╕ рд╕рдордп рджреЛрдиреЛрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреЛрд╢рд┐рд╢ рдХреАред

рдореИрдВрдиреЗ рд╕рд┐рдВрдкрд▓ рдПрд░реЗ рдкреБрд╢ рдЯреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдЯреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ рдФрд░ рдЗрд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рд▓реЗрдХрд░ рдкреВрд░рд╛ рд╣реЛрдиреЗ рддрдХ 10 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧрд╛ред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ / рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реА рд╣реИ рд▓реЗрдХрд┐рди рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХ рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ .js рдЬреИрд╕реА рд╕рд╛рдорд╛рдиреНрдп рдлрд╝рд╛рдЗрд▓ рд╣реИред рджреГрд╢реНрдп рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ Gif рдЕрдЧрд░ рдпрд╣ рдореБрджреНрджрд╛ рдХреНрдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рдмрдирд╛рддрд╛ рд╣реИ:

1

рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдкрд╣рд▓реА рдмрд╛рд░ рдЬрдм рдореИрдВ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдкрд░реАрдХреНрд╖рдг 9 рд╕реЗрдХрдВрдб рдХрд╛ рд╣реЛрдиреЗ рдХрд╛ рдЕрдиреБрдорд╛рди рд╣реИред рдПрдХ рдмрд╛рд░ рдЬрдм рдпрд╣ рдкреВрд░рд╛ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рджреВрд╕рд░реА рдмрд╛рд░ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрди: рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред

рдЬрдм рдореИрдВрдиреЗ рдЙрд╕ рдЬреАрдЖрдИрдПрдл рдЪрд┐рддреНрд░ рдХреЛ рдКрдкрд░ рд▓реЗ рд▓рд┐рдпрд╛ (рдЬреЛ рдЗрд╕ рдмрд╛рд░ рджреВрд╕рд░реА рдмрд╛рд░ рдерд╛), рддреЛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ рд╕рдордп рдереЛрдбрд╝рд╛ рдХрдо рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рджреВрд╕рд░реА рдмрд╛рд░ рдкреНрд░рджрд░реНрд╢рди рдирд╣реАрдВ рдХрд░ рдкрд╛рдпрд╛ред рдпрдХреАрди рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред

рдпрд╣рд╛рдБ рдореБрдЭреЗ рдПрдХ рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдпрд╛рд░реНрди рдХреЗ рд╕рд╛рде рдорд╛рдЗрдХреНрд░реЛрдореАрдЯрд░ 4 рдЪрд▓ рд░рд╣рд╛ рд╣реИ:

2

рд╡рд┐рдВрдбреЛрдЬрд╝ 10 рдФрд░ рдореЗрд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реНрдкреЗрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:
рдПрдПрдордбреА рдПрдлрдПрдХреНрд╕ (рдЯреАрдПрдо) -8320 рдЖрда-рдХреЛрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ 3.50GHz
16 рдЬреАрдмреА рд░реИрдо
64
рдПрд╕рдПрд╕рдбреА

рдореБрдЭреЗ рдпрд╣рд╛рдБ рдЕрдкрдиреА рд░реВрдкрд░реЗрдЦрд╛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рджреАрдЬрд┐рдПред
рдРрдирдХ:

  • рд╡рд┐рдВрдбреЛрдЬ 10 рдкреНрд░реЛ
  • рдиреЛрдб 10.15.3
  • рдЗрдВрдЯреЗрд▓ рдХреЛрд░ i7-4702MQ 2.2GHz
  • 8 рдЬреАрдмреА рд░реИрдо
  • 64
  • рдПрд╕рдПрд╕рдбреА

рдХрджрдо:

  1. npx create-react-app my-app --typescript
  2. App.test.tsx рдмрджрд▓реЗрдВ
  3. npm test рдЪрд▓рд╛рдПрдВ

рд╕реАрдкреАрдпреВ рдкреНрд░реЛрдлрд╛рдЗрд▓:
image
CPU-20190801T141211.zip

рдХреНрдпрд╛ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ 15 рд╕реЗрдХрдВрдб рдХреЗрд╡рд▓ рдПрдХрд▓ рддреБрдЪреНрдЫ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдЦрд░реНрдЪ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ?

рд╕реАрдкреАрдпреВ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдкрд░ рдЕрдзрд┐рдХ рдЕрдиреБрднрд╡ рдХреЗ рд╕рд╛рде рдХреЛрдИ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИ?

112 рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛
рд╡рд┐рдВрдбреЛрдЬ 10
рдкрд╣рд▓реЗ 507 рд╕реЗрдХрдВрдб рдЪрд▓рд╛рдПрдВ
рджреВрд╕рд░рд╛ 23 рд╕реЗрдХрдВрдб рдЪрд▓рд╛
рд▓рд┐рдирдХреНрд╕ рдЙрдк рдкреНрд░рдгрд╛рд▓реА
рдлреНрд░рд┐рд╕реНрдЯ 54 рд╕реЗрдХрдВрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ
рджреВрд╕рд░рд╛ рднрд╛рдЧ 29 рд╕реЗрдХрдВрдб

85 рдкрд░реАрдХреНрд╖рдг
рд╡рд┐рдВрдбреЛрдЬ 10
рдкрд╣рд▓реЗ 44 рд╕реЗрдХрдВрдб рджреМрдбрд╝реЗрдВ
рджреВрд╕рд░рд╛ рд╕реЗрдХрдВрдб 15 рд╕реЗрдХрдВрдб
рд▓рд┐рдирдХреНрд╕ рдЙрдк рдкреНрд░рдгрд╛рд▓реА
рдкрд╣рд▓реЗ 26 рд╕реЗрдХрдВрдб рдЪрд▓рд╛рдПрдВ
рджреВрд╕рд░рд╛ рд╕реЗрдХрдВрдб 15 рд╕реЗрдХрдВрдб

Kepro рдпреЗ рдкрд░рд┐рдгрд╛рдо 4 micromatch рдХреЗ рд╕рд╛рде рд╣реИрдВ?


рдореИрдВ 1 рд▓рд╛рдЦ рд╕рдВрджреЗрд╢ рд╣реЛрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░рддреНрдпрдХреНрд╖ рдЪреИрдЯ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрддрд╛ рд╣реВрдВред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рднреА рд╡рд┐рд╖рдпреЛрдВ рдХреЛ рдкрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд░рдХ рд╣реИ рдЬреЛ рдПрдХ рд╣реА рд╡рд┐рд╖рдп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред
рдЖрдк рдпрд╣рд╛рдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред https://gitter.im/wearefrontend/jest-slow-windows
рдореИрдВ рдЕрдм рдЗрд╕ рдкрд░ рд╣реВрдБ ...

рдореЗрд░реА рдХрдВрдкрдиреА рд╡реАрдкреАрдПрди рдкрд░ Gitter рдЕрд╡рд░реБрджреНрдз рд╣реИ - рдпрджрд┐ рдЖрдк рдкреНрдпрд╛рд░реЗ рд▓реЛрдЧ рдпрд╣рд╛рдВ рдХреЛрдИ рд╕рд╛рд░реНрдердХ рдЕрдкрдбреЗрдЯ рдкреЛрд╕реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐ рдЕрджреНрднреБрдд <3 рд╣реЛрдЧрд╛

рдЖрдк рдЕрднреА рднреА рдХреБрдЫ рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдШрд░ рдкрд░ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдкреА рдФрд░ рдЗрд╕реЗ рдЬрд╛рдВрдЪреЗрдВ
ps рдПрдХ рдбреЛрдЯрд╛ рдЧреЗрдо рдХреЛ рдХрддрд╛рд░ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ рдЕрдм рдЖрдк рдЗрд╕ рд╕рдордп рдореЗрдВ рдЧрдЯрд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ;)
рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рдЕрдм рд╣реИ: # 28946 рдиреЛрдбреНрд╕ / рдиреЛрдб

@rasreddineskandrani рдЖрдк рдореБрдЭреЗ рдорд┐рд▓ рдЧрдПред рдореИрдВрдиреЗ рдПрдХ рдирдИ рдореИрдХрдмреБрдХ рдХрд╛ рдЖрджреЗрд╢ рджрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬрдм рддрдХ рдпрд╣ рдУрдкрди-рд╕реЛрд░реНрд╕ рдПрдХреНрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ рд╣реЛрдЧреАред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреЗ рдЦрд╛рд▓реА рд╕рдордп рдореЗрдВ рдореЗрд░реЗ рднрджреНрджреЗ рд╡рд┐рдВрдбреЛрдЬ рдмреЙрдХреНрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ: рдбреА

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрджреНрджрд╛ рдиреЛрдб / рд╕реА ++ рджрд╛рдпрд░реЗ рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдореЗрд░реЗ рдХрдореНрдлрд░реНрдЯ рдЬрд╝реЛрди рдХреЗ рдмрд╛рд╣рд░ рдереЛрдбрд╝рд╛ (рдмреЗрд╣рдж) рд╣реИ - рд▓реЗрдХрд┐рди рдореИрдВ рдХреБрдЫ рдЦреБрджрд╛рдИ рдХрд░реВрдБрдЧрд╛!

рд╣рд╛рдп рдЗрд╕ рдкрд░ рдХреЛрдИ рдЦрдмрд░?

рдпрджрд┐ рдЖрдк рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ --runInBand рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдкрд╣рд▓рд╛ рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рд╣реЛрдиреЗ рдореЗрдВ рдЕрднреА рднреА рд▓рдВрдмрд╛ рд╕рдордп рд▓рдЧреЗрдЧрд╛ рд▓реЗрдХрд┐рди рдЕрдЧрд▓реЗ рдкрд░реАрдХреНрд╖рдг рддреЗрдЬреА рд╕реЗ рд╣реЛрдВрдЧреЗред

рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдиреЗ рд╕рднреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 21.803s рд▓рд┐рдпрд╛ред
--RunInBand рдХреЗ рд╕рд╛рде рдЕрдм рдпрд╣ рдХреЗрд╡рд▓ 7.412 рдХрд╛ рд╣реИ

рдореЗрд░реЗ рд▓рд┐рдП -runInBand рдЗрд╕реЗ рдФрд░ рднреА рдзреАрдорд╛ рдХрд░ рджреЗрдВред 1200 рдЯрдиред рдмрд┐рдирд╛ рд░рдирдмрд┐рдиреИрдВрдб 70/50 рд╕реЗрдХрдВрдб рдХреЗред --RunInBand рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ 90 рд░рди рдХреЗ рд╕рд╛рде рджреВрд╕рд░реЗ рдирдВрдмрд░ рдкрд░ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда
рд▓рд╛рдЗрдирдХреНрд╕ рдкрд░ рдЗрд╕рдХреА рддрд░рд╣ 5-8x рддреЗрдЬреА рд╕реЗ

рдХреЛрд╢рд┐рд╢ рдХрд░реЛ - maxWorkers = 4 рддреЛред

@ cino893 , рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ :) рдПрдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣рд▓ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ

рдЙрд╕ рдкрд░ рдХреЛрдИ рдЦрдмрд░? рдореИрдВ рдЙрд╕ рдмрдЧ рдХреЗ рдХрд╛рд░рдг рд╕рдВрд╕реНрдХрд░рдг 21 рдкрд░ рдвреЗрд░ рд╣реЛ рдЧрдпрд╛ред v22 рдзреАрдорд╛ рд╣реИ рдФрд░ v23 рднреА рдзреАрдорд╛ рд╣реИред
рдХреНрдпрд╛ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╡рд╛рд▓рд╛ рдмрдЧ рд╣реИ?

рдЬрд╣рд╛рдВ рдореИрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рд╣рдореЗрдВ рдУрдПрд╕ рдЪреБрдирдиреЗ рдХреА рдЖрдЬрд╛рджреА рдирд╣реАрдВ рд╣реИ рдФрд░ рди рд╣реА рд╡рд┐рдВрдбреЛ рдпрд╛ рдХреБрдЫ рдЗрд╕реА рддрд░рд╣ рд╕реЗ рдЙрдмрдВрдЯреВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреАред

@gombek рдХреНрдпрд╛ рдЖрдкрдиреЗ v25

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

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

@gombek рдХреНрдпрд╛ рдЖрдкрдиреЗ v25

рдореИрдВ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЬреЗрд╕реНрдЯ рд╡реА 25 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдЕрднреА рднреА рдзреАрдорд╛ рд╣реИ

@pfftdammitchris рдореИрдВрдиреЗ рдореИрдХ + рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рд╕реБрдВрджрд░ рдЬрдЯрд┐рд▓ рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдХреА рддреБрд▓рдирд╛ рдХреА рд╣реИ рдФрд░ рдореБрдЭреЗ рдХреБрдЫ рдЕрдВрддрд░ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдПрдХ рдардВрдбрд╛ рдХреИрд╢ рд╡рд┐рдВрдбреЛрдЬ рд╕реЗ рдХрд╛рдлреА рдзреАрдорд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рд░ рдЬрдм рдореИрдВ рдЧрд░реНрдо рд╣реЛрддрд╛ рд╣реВрдВ рддреЛ рджреЛрдиреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдорд╛рди рдкреНрд░рджрд░реНрд╢рди рдорд┐рд▓рддрд╛ рд╣реИред

рддрдерд╛рдкрд┐...

рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдмреЗрд╣рдж рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдиреЗ рд╡рд╛рд▓реА рдПрдХ рдЪреАрдЬ рд╣реИ рдПрдВрдЯрд┐рд╡рд╛рдЗрд░рд╕ / рдлрд╛рдЗрд▓-рд╡реЙрдЪрд░реНрд╕ рдЬреИрд╕реЗ рдХрд╛рд░реНрдмрди рдмреНрд▓реИрдХ (рдпрд╛ рдЕрдиреНрдп рд░рд┐рдпрд▓-рдЯрд╛рдЗрдо рдлрд╛рдЗрд▓ рд╡реЙрдЪрд┐рдВрдЧ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░) рдЬреИрд╕реЗ рдШреБрд╕рдкреИрда рдХрд░реНрдиреЗрд▓-рд╕реНрддрд░реАрдп рдХрд╛рд░реНрдпрдХреНрд░рдоред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХреБрдЫ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЖрдк JEST рдХреЛ рдЪрд▓рд╛рддреЗ рд╕рдордп рдмрд╣реБрдд рдмрдбрд╝рд╛ рдкреНрд░рджрд░реНрд╢рди рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рджрд╕рд┐рдпреЛрдВ рдорд┐рдирдЯ рд▓рдЧрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ рдПрдХ рдХрдВрдкрдиреА рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ рдерд╛, рдЬрд╣рд╛рдВ рдПрдХ рд╣реА рдЯреЗрд╕реНрдЯ рд╕реВрдЯ рдиреЗ рдореИрдХрдмреБрдХ рдкреНрд░реЛ рдкрд░ 30 рд╕реЗрдХрдВрдб рдХрд╛ рд╕рдордп рд▓рд┐рдпрд╛ рдерд╛ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдлрд╛рдЗрд▓ рдкрд░ 20 рдорд┐рдирдЯ рддрдХ рдпреЗ рдлрд╛рдЗрд▓ рджреЗрдЦрдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд▓рддреЗ рдереЗред

рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рдХреНрдпреЛрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдлрд╝рд╛рдЗрд▓-рд╣реИрдВрдбрд▓ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрдорд╛рди рдХреЛ рдЦрддрд░рд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЬреЗрд╕реНрдЯ рдиреЛрдб рдХреЗ рдХреБрдЫ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ 20 рдкрд░реАрдХреНрд╖рдг рд╣реИрдВ рдФрд░ рдореИрдВрдиреЗ рдЕрднреА-рдЕрднреА jest --watch рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдордп рд▓рд┐рдпрд╛ рд╣реИ, рджреЛрдиреЛрдВ рдЗрдВрдЯрд┐рдпрд▓ рд░рди рдкрд░ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдЯрд░ рджрдмрд╛ рд░рд╣реЗ рд╣реИрдВред

рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рджреЛрдиреЛрдВ рд╕рдордп рд▓рдЧрднрдЧ 15 рд╕реЗрдХрдВрдб рд▓рдЧреЗ рдЬрдмрдХрд┐ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрд╣рд▓реЗ рд░рди рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ 5.3 рд╕реЗрдХрдВрдб рдФрд░ рдмрд╛рдж рдХреЗ рд░рди рдкрд░ 2.3 рдерд╛ред

рдореИрдВрдиреЗ рд╕рднреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдиреЗ рдХреЗ рдХрд╛рд░рдг -t = "GARBAGE" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рд▓рд┐рдирдХреНрд╕ рдХреЛ 1.5 рд╕реЗрдХрдВрдб рдХрд╛ рд╕рдордп рд▓рдЧрддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рдЕрднреА рднреА 13 рдХрд╛ рд╕рдордп рд▓рдЧрддрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдордп рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреМрдбрд╝ рдирд╣реАрдВ рд╣реИ!

рджреЛрдиреЛрдВ рдорд╢реАрдиреЗрдВ рдиреЛрдб рдФрд░ рдЬреЗрд╕реНрдЯ рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реА рд╣реИрдВ, рдФрд░ рд▓рд┐рдирдХреНрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╡реАрдПрдо рд╣реИ рдЬреЛ рд╣рд╛рдЗрдкрд░-рд╡реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рдВрдбреЛрдЬ рдПрдХ рдХреЗ рдЕрдВрджрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдиреНрдп рдЪреАрдЬреЗрдВ рд╕рдорд╛рди рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ рдореИрдВ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рддреЗрдЬреА рд╕реЗ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░реВрдВрдЧрд╛ред

рдореЗрд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ 20 рдкрд░реАрдХреНрд╖рдг рд╣реИрдВ рдФрд░ рдореИрдВрдиреЗ рдЕрднреА-рдЕрднреА jest --watch рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдордп рд▓рд┐рдпрд╛ рд╣реИ, рджреЛрдиреЛрдВ рдЗрдВрдЯрд┐рдпрд▓ рд░рди рдкрд░ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдЯрд░ рджрдмрд╛ рд░рд╣реЗ рд╣реИрдВред

рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рджреЛрдиреЛрдВ рд╕рдордп рд▓рдЧрднрдЧ 15 рд╕реЗрдХрдВрдб рд▓рдЧреЗ рдЬрдмрдХрд┐ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрд╣рд▓реЗ рд░рди рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ 5.3 рд╕реЗрдХрдВрдб рдФрд░ рдмрд╛рдж рдХреЗ рд░рди рдкрд░ 2.3 рдерд╛ред

рдореИрдВрдиреЗ рд╕рднреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдиреЗ рдХреЗ рдХрд╛рд░рдг -t = "GARBAGE" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рд▓рд┐рдирдХреНрд╕ рдХреЛ 1.5 рд╕реЗрдХрдВрдб рдХрд╛ рд╕рдордп рд▓рдЧрддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рдЕрднреА рднреА 13 рдХрд╛ рд╕рдордп рд▓рдЧрддрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдордп рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреМрдбрд╝ рдирд╣реАрдВ рд╣реИ!

рджреЛрдиреЛрдВ рдорд╢реАрдиреЗрдВ рдиреЛрдб рдФрд░ рдЬреЗрд╕реНрдЯ рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реА рд╣реИрдВ, рдФрд░ рд▓рд┐рдирдХреНрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╡реАрдПрдо рд╣реИ рдЬреЛ рд╣рд╛рдЗрдкрд░-рд╡реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рдВрдбреЛрдЬ рдПрдХ рдХреЗ рдЕрдВрджрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдиреНрдп рдЪреАрдЬреЗрдВ рд╕рдорд╛рди рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ рдореИрдВ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рддреЗрдЬреА рд╕реЗ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░реВрдВрдЧрд╛ред

рд╣рд╛рдБред рдФрд░ рдЕрдЧрд░ рдЖрдк рд╡рд┐рдВрдбреЛрдЬ рд╕реЗ рд▓рд┐рдирдХреНрд╕ рд╡реАрдПрдо рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдорд╛рдЙрдВрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдЬреЛ рд╡реЗ рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рдЬрд┐рддрдиреЗ рдзреАрдореЗ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рддрд╛рддреНрдкрд░реНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЬреЗрд╕реНрдЯ рдХреА рдлрд╝рд╛рдЗрд▓ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рд▓реЙрдЬрд┐рдХ рдореЗрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред

рд╣рд╛рдБред рдФрд░ рдЕрдЧрд░ рдЖрдк рд╡рд┐рдВрдбреЛрдЬ рд╕реЗ рд▓рд┐рдирдХреНрд╕ рд╡реАрдПрдо рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдорд╛рдЙрдВрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдЬреЛ рд╡реЗ рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рдЬрд┐рддрдиреЗ рдзреАрдореЗ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рддрд╛рддреНрдкрд░реНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЬреЗрд╕реНрдЯ рдХреА рдлрд╝рд╛рдЗрд▓ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рд▓реЙрдЬрд┐рдХ рдореЗрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред

рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдЬрдм рдкрд░реАрдХреНрд╖рдг рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ рддреЛ рд╕реАрдкреАрдпреВ рдЕрдзрд┐рдХ рд╣реИ рд▓реЗрдХрд┐рди рдбрд┐рд╕реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдлрд╝рд╛рдЗрд▓ рд╣реИрдВрдбрд▓ рдкрд░ рдЕрд╡рд░реБрджреНрдз рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдХрд░рдирд╛ рдерд╛, рдореИрдВ рдЗрд╕реЗ рдХрдо рд╕реАрдкреАрдпреВ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░реВрдВрдЧрд╛ (рдЬрдм рддрдХ рдХрд┐ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рддрдВрдЧ рд▓реВрдк рдореЗрдВ рдЬрд╕ рдХрд╛ рддрд╕ рд░рд┐рд▓реАрдЬ рд╣реЛрдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рди рд╣реЛ)

рдореИрдВрдиреЗ рдлрд╝рд╛рдЗрд▓ рджреЗрдЦрдиреЗ рд╡рд╛рд▓реЛрдВ рдкрд░ hevans90 рдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрд╛ред рдореЗрд░реЗ рдкрд╛рд╕ рдХреЛрдИ рддреГрддреАрдп-рдкрдХреНрд╖ рдПрдВрдЯреА-рд╡рд╛рдпрд░рд╕ рд╕реНрдерд╛рдкрд┐рдд рдпрд╛ рд╕рдорд╛рди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рд╕реЗ рдХреЛрдИ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реБрдЖред

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЗрд╕реЗ рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ, рддреЛ рдЗрд╕рд╕реЗ рдХреБрдЫ рдорджрдж рдорд┐рд▓реЗрдЧреАред

рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЖрдЬ рдкреБрд╖реНрдЯрд┐ рдХреА рд╣реИ рдХрд┐ рд╡рд┐рдВрдбреЛрдЬ рдбрд┐рдлреЗрдВрдбрд░ рдПрдХ рдмрдбрд╝рд╛ рдЕрдВрддрд░ рдмрдирд╛рддрд╛ рд╣реИред
рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдкрд╡рд░реНрдЬрди рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реБрдЖ рдХрд░рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЬрдм рдореБрдЭреЗ рдЕрдкрдирд╛ рдирдпрд╛ рддреЗрдЬ рд▓реИрдкрдЯреЙрдк рдорд┐рд▓рд╛, рддреЛ рдореИрдВ рдЕрдкрдиреЗ рдЬреАрд╡рди рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрд╛ рдХрд┐ рдПрдХ рдлрд╛рдЗрд▓ рдХреЛ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рдЬреЗрд╕реНрдЯ рдХреЛ 10 рдорд┐рдирдЯ рдХреНрдпреЛрдВ рд▓рдЧреЗред

рддрдм рдореБрдЭреЗ рдмрд╣рд┐рд╖реНрдХрд░рдг рдпрд╛рдж рдЖрдпрд╛ред
рдореИрдВ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддрд╛ рдХрд┐ рдХреМрди рд╕реЗ рдмрд╣рд┐рд╖реНрдХрд░рдг рд╕реЗ рдлрд░реНрдХ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдзрд╛рд╡рдХ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЬрд╛рдирд╛ рд╣реИ

рдореБрдЭреЗ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдмрд╣рд┐рд╖реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЬрд┐рд╕реНрдЯ рдорд┐рд▓рд╛ (рдпрджреНрдпрдкрд┐ рдмрд▓рд╢рд╛рд▓реА)
https://gist.github.com/darvell/edbc758b11ea4dcd7226b7c9f1821196
рдореИрдВрдиреЗ рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди .ts .js .spec.ts .spec.js .tsx рднреА рдЬреЛрдбрд╝реЗ

рдореИрдВ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддрд╛ рдХрд┐ рдХреМрди рд╕реЗ рдмрд╣рд┐рд╖реНрдХрд░рдг рд╕реЗ рдлрд░реНрдХ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдзрд╛рд╡рдХ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЬрд╛рдирд╛ рд╣реИ

рд╣рдореНрдо рдореИрдВрдиреЗ рдЕрднреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдореБрдЭреЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рд╣реИ (рдЖрдк рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ, рдореЗрд░рд╛ рдорд┐рдирдЯ рдирд╣реАрдВ рдерд╛, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рд╣рдо рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ)

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

рдореИрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдЕрдВрддрд░ 5-10x рд╣реИред рдкреАрд╕реА рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдбреЗрд╕реНрдХрдЯреЙрдк рдорд╢реАрди рд╣реИ (рдкрдврд╝реЗрдВ: рдореИрдХрдмреБрдХ рд╕реЗ рдмрд╣реБрдд рддреЗрдЬ)ред рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рддреЗрдЬрд╝ рд╣реИ, рдмрд╕ рдЬреЗрд╕реНрдЯ рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдкреАрдбрд╝рд┐рдд рд╣реИред

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

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рднреАред рдПрдХ рдПрдХрд▓, рд╣реИрд▓реЛ рд╡рд┐рд╢реНрд╡ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдПрдХ рдПрдХрд▓ рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдФрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рдореЗрдВ ~ 15 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ, рдФрд░ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ 12 рд╕реЗрдХрдВрдбред

ЁЯСЛ рдореБрдЭреЗ рдХреБрдЫ рдЙрддреНрддрд░ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ - рдпрд╣ рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрджрд┐ рдЖрдк ts-jest рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдХрд░ рд░рд╣реЗ рд╣реИрдВ): https://github.com/kulshekhar/ts-jest/issues/ 908 # рдЬрд╛рд░реАрдХрд░рдг -484043250

рдореЗрд░реЗ рд▓рд┐рдП рдмрджрд▓рд╛рд╡ рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ (рдХреИрд╢ рдХреЗ рдмрд┐рдирд╛) рдХреЗ рд▓рд┐рдП 30 рдорд┐рдирдЯ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рдЬрд╛ рд░рд╣рд╛ рдерд╛ред

рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЖрдЗрд╕реЛрд▓реЗрдЯреНрд╕рдореЙрдбрд▓ рдХреЗ рдлреНрд▓реИрдЧ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреА рд╕реНрдкреЗрдХ рдлрд╛рдЗрд▓реНрд╕ (рдФрд░ рдХреБрдЫ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдиреБрдХрд╕рд╛рди) рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рд╣реЛрдЧреА: https://github.com/kulshekhar/ts-jest/blob/master/docs/user )

рдореИрдВ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдореБрджреНрджрд╛ рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рд╣реИред

ЁЯСЛ рдореБрдЭреЗ рдХреБрдЫ рдЙрддреНрддрд░ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ - рдпрд╣ рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрджрд┐ рдЖрдк ts-jest рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдХрд░ рд░рд╣реЗ рд╣реИрдВ): kulshekhar / ts-jest # 908 (рдЯрд┐рдкреНрдкрдгреА)

рдореЗрд░реЗ рд▓рд┐рдП рдмрджрд▓рд╛рд╡ рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрд╕реНрдЯ (рдХреИрд╢ рдХреЗ рдмрд┐рдирд╛) рдХреЗ рд▓рд┐рдП 30 рдорд┐рдирдЯ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рдЬрд╛ рд░рд╣рд╛ рдерд╛ред

рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЖрдЗрд╕реЛрд▓реЗрдЯреНрд╕рдореЙрдбрд▓ рдХреЗ рдлреНрд▓реИрдЧ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреА рд╕реНрдкреЗрдХ рдлрд╛рдЗрд▓реНрд╕ (рдФрд░ рдХреБрдЫ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдиреБрдХрд╕рд╛рди) рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рд╣реЛрдЧреА: https://github.com/kulshekhar/ts-jest/blob/master/docs/user )

рдореИрдВ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдореБрджреНрджрд╛ рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рд╣реИред

рд╢реБрджреНрдз рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╣рд╛рдБред рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИред

FYI рдХрд░реЗрдВ: https://github.com/kulshekhar/ts-jest/pull/1549 ts-jest (рд╕рдВрднрд╡рддрдГ рдЖрдЬ) рдХреЗ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╣реЛрдЧрд╛ред рдЬреЛ рдХреЛрдИ рднреА ts-jest рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдХреГрдкрдпрд╛ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ рдФрд░ рд╣рдореЗрдВ https://github.com/kulshekhar/ts-jest/issues/1115 рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рджреЗрдВ

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рднреАред рдПрдХ рдПрдХрд▓, рд╣реИрд▓реЛ рд╡рд┐рд╢реНрд╡ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдПрдХ рдПрдХрд▓ рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдФрд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рдореЗрдВ ~ 15 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ, рдФрд░ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ 12 рд╕реЗрдХрдВрдбред

рдмрд╕ рдПрдХ рдореИрдХ рдкрд░ рдПрдХ рд╣реА рдкрд░реАрдХреНрд╖рдг рднрд╛рдЧ рдЧрдпрд╛ред рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ 1.5secs рд▓рдЧрддреЗ рд╣реИрдВ, рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП <1secред

рдЬреЗрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдпрд╣рд╛рдВ рдЯреАрдПрд╕ рдирд╣реАрдВред

рд╢реБрджреНрдз рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╣рд╛рдБ рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рд╕рд╛рдеред рдореЗрд░реЗ рдкрд╛рд╕ рдЗрдВрдЯреЗрд▓ рдХреЗ 10gen рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕рд╛рде рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдХреНрд╡рд╛рдб рдХреЛрд░ рд▓реИрдкрдЯреЙрдк рд╣реИ рдФрд░ рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рддреЗрдЬреА рд╕реЗ рдзрдзрдХ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдВрдбреЛрдЬ рдмрдирд╛рдо рд▓рд┐рдирдХреНрд╕ рдкрд░ [email protected] 2-3 рдЧреБрдирд╛ рдЕрдзрд┐рдХ рд▓реЗ рд░рд╣рд╛ рд╣реИред

рдПрдХ рд╣реА рдореБрджреНрджрд╛, рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЪрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ 60 рд╕реЗрдХрдВрдб, рдФрд░ рдкрд╣рд▓реЗ 45 рд╕реЗрдХрдВрдб рдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ UI рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореЗрд░реЗ linux рдорд╢реАрди рдкрд░ рдПрдХ рд╣реА рд╕рдЯреАрдХ рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдЪрд▓рд╛ рдФрд░ рдЗрд╕реЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдореЗрдВ 8 рд╕реЗрдХрдВрдб рдХрд╛ рд╕рдордп рд▓рдЧрд╛ред

рдирд╛рдЯрдХреАрдп рд░реВрдк рд╕реЗ рд▓рдЧрднрдЧ 15 рд╕реЗрдХрдВрдб рдХреЗ рдКрдкрд░ @Cellule рдХреА рдЯрд┐рдкреНрдкрдгреАред

@ryanrapini рдиреЗ @Cellule рдХреА рд╕рд▓рд╛рд╣ рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ (рд▓реЗрдХрд┐рди Windows UI > Virus and Threat Protection > Manage Settings > Add Exclusions рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓рд╛ рдЧрдпрд╛) рдФрд░ рджреЗрдЦрд╛ рдХрд┐ рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг 13 рд╕реЗрдХрдВрдб рд╕реЗ 6 рддрдХ рдЪрд▓реЗ рдЧрдП, рдЗрд╕рд▓рд┐рдП рдореВрд▓ рд░реВрдк рд╕реЗ рдЖрдзрд╛ рдерд╛ред рдзрдиреНрдпрд╡рд╛рдж!

рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ FAQ рдкреГрд╖реНрда рдкрд░ рдХреЛрдИ рднреА рд╡реНрдпрдХреНрддрд┐ рд╡рд┐рдВрдбреЛрдЬ рдбрд┐рдлреЗрдВрдбрд░ (рдпрд╛ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ AV?) рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗ рд╕рдХрддрд╛ рд╣реИред https://jestjs.io/docs/en/troublesourcing

рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ ts-jest рдХреЗ рд╕рд╛рде isolatedModules: true рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдардВрдбреЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдПрдХ рдмрдбрд╝рд╛ рдЕрдВрддрд░ рдЖрдпрд╛ (~ 10mins => 15sec)
рдореИрдВрдиреЗ рдЕрд▓реНрдлрд╛ рдореЗрдВ рдЙрдирдХреЗ рд╕реБрдзрд╛рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ # 9457 рдкрд░ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬреЛ 25 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛

рдирдорд╕реНрддреЗ,

рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдпрд╣рд╛рдБ рдФрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ ...

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

рдФрд░ рдореЗрд░реЗ рд▓рд┐рдП:

рдЯреЗрд╕реНрдЯ рд╕реВрдЯ: 2 рд╕реНрдХрд┐рдкреНрдб, 15 рдкрд╛рд╕, 15 рдХреБрд▓ 17
рдЯреЗрд╕реНрдЯ: 6 рд╕реНрдХрд┐рдк, 37 рдкрд╛рд╕, 43 рдХреБрд▓
рд╕реНрдиреИрдкрд╢реЙрдЯ: 18 рдкрд╛рд╕, рдХреБрд▓ 18
рд╕рдордп: рел. 5.рем реп
рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рднрд╛рдЧрд╛ред

isolatedModules: true рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдореИрдВ рдЕрднреА рднреА 5-6 рд╕реЗрдХрдВрдб рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╣реВрдВред
рдФрд░ рдЬрдм рдореИрдВ рдХрд┐рд╕реА рднреА рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ 9 ~ 10 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВред

рдбрд┐рдлреЗрдВрдбрд░ рдЕрдкрд╡рд╛рдж рдкрд░ рдореЗрд░реЗ рджреЗрд╡ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реБрдЖ:

рдЯреЗрд╕реНрдЯ рд╕реВрдЯ: 2 рд╕реНрдХрд┐рдкреНрдб, 15 рдкрд╛рд╕, 15 рдХреБрд▓ 17
рдЯреЗрд╕реНрдЯ: 6 рд╕реНрдХрд┐рдк, 37 рдкрд╛рд╕, 43 рдХреБрд▓
рд╕реНрдиреИрдкрд╢реЙрдЯ: 18 рдкрд╛рд╕, рдХреБрд▓ 18
рд╕рдордп: 5.563 рдмрдЬреЗ
рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рднрд╛рдЧрд╛ред

рдХреНрдпрд╛ рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ?
рдХреНрдпрд╛ рдореБрдЭреЗ wsl2 рдХреЗ рд▓рд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдирдорд╕реНрддреЗ,

рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдпрд╣рд╛рдБ рдФрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ ...

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

рдФрд░ рдореЗрд░реЗ рд▓рд┐рдП:

рдЯреЗрд╕реНрдЯ рд╕реВрдЯ: 2 рд╕реНрдХрд┐рдкреНрдб, 15 рдкрд╛рд╕, 15 рдХреБрд▓ 17
рдЯреЗрд╕реНрдЯ: 6 рд╕реНрдХрд┐рдк, 37 рдкрд╛рд╕, 43 рдХреБрд▓
рд╕реНрдиреИрдкрд╢реЙрдЯ: 18 рдкрд╛рд╕, рдХреБрд▓ 18
рд╕рдордп: рел. 5.рем реп
рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рднрд╛рдЧрд╛ред

isolatedModules: true рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдореИрдВ рдЕрднреА рднреА 5-6 рд╕реЗрдХрдВрдб рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╣реВрдВред
рдФрд░ рдЬрдм рдореИрдВ рдХрд┐рд╕реА рднреА рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ 9 ~ 10 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВред

рдбрд┐рдлреЗрдВрдбрд░ рдЕрдкрд╡рд╛рдж рдкрд░ рдореЗрд░реЗ рджреЗрд╡ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реБрдЖ:

рдЯреЗрд╕реНрдЯ рд╕реВрдЯ: 2 рд╕реНрдХрд┐рдкреНрдб, 15 рдкрд╛рд╕, 15 рдХреБрд▓ 17
рдЯреЗрд╕реНрдЯ: 6 рд╕реНрдХрд┐рдк, 37 рдкрд╛рд╕, 43 рдХреБрд▓
рд╕реНрдиреИрдкрд╢реЙрдЯ: 18 рдкрд╛рд╕, рдХреБрд▓ 18
рд╕рдордп: 5.563 рдмрдЬреЗ
рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рднрд╛рдЧрд╛ред

рдХреНрдпрд╛ рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ?
рдХреНрдпрд╛ рдореБрдЭреЗ wsl2 рдХреЗ рд▓рд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдХреНрдпрд╛ рдЖрдк рдореЗрд░реЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХреБрдЫ рдХрд░рддрд╛ рд╣реИ? (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реЗрд▓реНрдпреБрд▓ рдХрд╛ рд╕рдорд╛рдзрд╛рди, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛)

рдХреНрдпрд╛ рдЖрдк рдореЗрд░реЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХреБрдЫ рдХрд░рддрд╛ рд╣реИ? (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реЗрд▓реНрдпреБрд▓ рдХрд╛ рд╕рдорд╛рдзрд╛рди, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛)

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕рдВрджреЗрд╢ рдореЗрдВ рдХрд╣рд╛, рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдРрд╕рд╛ рдХрд┐рдпрд╛ рд╣реИ :)

рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдореЗрдиреВ рдФрд░ рд╕рднреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдкрдиреЗ рдЬреЛ рдХрд┐рдпрд╛, рдЙрд╕рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ред

рдореИрдВ рднреА рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдкрд░реАрдХреНрд╖рдг рдЦреБрдж <1 рд╕реЗрдХрдВрдб рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╕рдордЧреНрд░ рд╕реЗрдЯрдЕрдк рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ~ 15 рд╕реЗрдХрдВрдб рд▓реЗрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕реЗ v24 рдФрд░ v26 рдХреЗ рд╕рд╛рде рдЖрдЬрд╝рдорд╛рдпрд╛ рд╣реИ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ v26 рдкрд░ рдереЛрдбрд╝рд╛ рдзреАрдорд╛ рд╣реИ

рдореБрдЭреЗ рдирд┐рдореНрди рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдХреЗ рд╕рд╛рде рднрд╛рдЧреНрдп рдирд╣реАрдВ рдерд╛ (рдпрд╣ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдореЗрдВ рд╕реБрдзрд╛рд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ):

  • --runInBand рдЬреЛрдбрд╝рдирд╛
  • maxWorkers
  • @Cellule рдФрд░ @alessioalex рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рдП рдЧрдП .ts .js .spec.ts .spec.js .tsx рдмрд╣рд┐рд╖реНрдХрд░рдгреЛрдВ рдХреЛ Virus and Threat Protection рдЬреЛрдбрд╝рдиреЗ рдкрд░

рд╡реЗрдирд┐рд▓рд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдПрдХ рддрд╛рдЬрд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рднреА рдпрд╣реА рдореБрджреНрджрд╛ рд╣реИред 9 рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП 2 рд╕реЗрдХрдВрдб рдЬреЛ рдореЛрдЪрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ <10ms рдореЗрдВ рдЪрд▓рддреЗ рд╣реИрдВред

рдпрд╣ рдкрд╛рдЧрд▓рдкрди рд╣реИ!

рдмрд╕ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ jest рдФрд░ рдЕрдм рд╡рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛ 52 рдХреЗ рдмрдЬрд╛рдп 0.9 рдореЗрдВ рдЪрд▓рддреА рд╣реИ (!!!) рд╕реЗрдХрдВрдб!
npm remove jest рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рдлрд┐рд░
npm install -g jest

рдмреЗрд╢рдХ рдореИрдВ рдлрд┐рд░ рд╕реЗ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рджреЗрд╡ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреАрдЯ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдХрд┐рд╕реА рднреА рд╡рд┐рдЪрд╛рд░ рдХреНрдпреЛрдВ рд╣реЛрддрд╛ рд╣реИ?

рдпрд╣ рдкрд╛рдЧрд▓рдкрди рд╣реИ!

рдмрд╕ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ jest рдФрд░ рдЕрдм рд╡рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛ 52 рдХреЗ рдмрдЬрд╛рдп 0.9 рдореЗрдВ рдЪрд▓рддреА рд╣реИ (!!!) рд╕реЗрдХрдВрдб!
npm remove jest рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рдлрд┐рд░
npm install -g jest

рдмреЗрд╢рдХ рдореИрдВ рдлрд┐рд░ рд╕реЗ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рджреЗрд╡ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреАрдЯ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдХрд┐рд╕реА рднреА рд╡рд┐рдЪрд╛рд░ рдХреНрдпреЛрдВ рд╣реЛрддрд╛ рд╣реИ?

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рдпрд░рд╕ рд╕реНрдХреИрдирд░ рдореБрджреНрджреЗ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рдорддрд▓рдм, рдЖрдкрдХреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╡рд╛рдпрд░рд╕ рд╕реНрдХреЗрдирд┐рдВрдЧ рдХреЗ рджрд╛рдпрд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ рдХрд┐ рдХреНрд░реЙрд▓ рдХреЛ рдзреАрдорд╛ рдХрд░ рджреЗрддреА рд╣реИ рд▓реЗрдХрд┐рди рдЖрдкрдХреА рдЧреНрд▓реЛрдмрд▓ рдПрдирдкреАрдПрдо рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЕрдиреБрдорд╛рди рд╣реИред

рдореИрдВрдиреЗ рдЕрднреА @JPustkuchen рдЬреИрд╕реА рд╣реА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдФрд░ рдкреНрд░рджрд░реНрд╢рди ~ 10s рд╕реЗ <1 рд╕реЗрдХрдВрдб рддрдХ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлреЛрд▓реНрдбрд░ рдХреЛ рд╡рд┐рдВрдбреЛрдЬ рдбрд┐рдлреЗрдВрдбрд░ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдЬреЗрд╕реНрдЯ рдЕрднреА рднреА рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИред

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

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

рдЕрдзрд┐рдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдиреЛрдЯ рдкрд░, рдореИрдВ рд╕рд┐рд░реНрдл рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдореИрдВ рдЗрд╕ рдмрдЧ рдХреЛ рдХреГрддрдЬреНрдЮрддрд╛ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдЛрдг рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдпрд╣ рдЕрдВрддрд┐рдо рд╕реНрдЯреНрд░реЙ рдерд╛ рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рдЕрдкрдиреЗ рдореБрдЦреНрдп рд╡рд┐рдХрд╛рд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рд▓рд┐рдП рд▓рд┐рдирдХреНрд╕ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдФрд░ рдореИрдВ рдХрднреА рднреА рдЦреБрд╢ рдирд╣реАрдВ рд╣реБрдЖред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ рдХрд┐ рдореИрдВ рдХрднреА рдкреАрдЫреЗ рдирд╣реАрдВ рд╣рдЯреВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдХрднреА-рдХрднреА рдореБрдЭреЗ рд╡рд┐рд░рд╛рд╕рдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди ASP.NET рдХреЛрд░ рдХреЗ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рд╡рд╛рдкрд╕ рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рд╣рд░ рд╕рдордп рдХрдо рд╣реЛрддреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред

рдХреГрдкрдпрд╛ @ timrobinson33 рдЪрд▓реЛ рд╡рд┐рд╖рдп рдкрд░ jest рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 68 рдЧреБрдирд╛ рдзреАрдорд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдиреЛрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдХрд┐рд╕реА рднреА рдордВрдЪ рдкрд░ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВ рднреА рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ, рдореИрдВрдиреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдкрд░реАрдХреНрд╖рдг рдзрд╛рд╡рдХ рдХреЗ рд╕рд╛рде рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдмреЗрдВрдЪрдорд╛рд░реНрдХ jest github repo рдореЗрдВ v26.4.2 рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред
https://github.com/nasreddineskandrani/benchmark_jest
рдореЗрд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдореЗрдВ рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг: v12.13.0

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

image

@ рдиреАрдкрд░ рдЖрдк рдореЗрд░реЗ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рд░реЗрдкреЛ рдХреЛ

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдмреЗрдВрдЪрдорд╛рд░реНрдХ jest github repo рдореЗрдВ v26.4.2 рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред
https://github.com/nasreddineskandrani/benchmark_jest
рдореЗрд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдореЗрдВ рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг: v12.13.0

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

image

@ рдиреАрдкрд░ рдЖрдк рдореЗрд░реЗ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рд░реЗрдкреЛ рдХреЛ

image

рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рдерд╛, рдЖрдкрдХреЗ рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯрдЕрдк рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХреЛрдИ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИред рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдереЛрдбрд╝рд╛ рддреЗрдЬ рдЪрд▓рддрд╛ рд╣реИред __tests__ рддрд╣рдд 100 рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯрдЕрдк рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рдФрд░ рд╡реЗ рднреА рдареАрдХ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВред рдЪреВрдБрдХрд┐ рд╣рдорд╛рд░рд╛ рдРрдк react-scripts рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

рдлрд┐рд░ рдореИрдВрдиреЗ WSL2 рдмреИрд╢ (NTFS рдлрд╛рдЗрд▓рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЦрд┐рд▓рд╛рдл) рдФрд░ рдмреВрдо, рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЛ рд▓рдЧрднрдЧ 10 рдЧреБрдирд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред NTFS рдХреЗ рдЦрд┐рд▓рд╛рдл WSL2 рдкрд░ рдзреАрдореА I / O рдЧрддрд┐ рдХреА рдЙрдореНрдореАрдж рдХреА рдЬрд╛рдиреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдпрд╣ рд╕реЗрдЯрдЕрдк рдХрд┐рддрдирд╛ рд╕рд░рд▓ рд╣реИ (рд╣рд░ рдПрдХ рдкрд░ рдПрдХрд▓ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рд╕рд┐рд░реНрдл 100 рдкрд░реАрдХреНрд╖рдг рдлрд╛рдЗрд▓реЗрдВ) рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрддрдирд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЗрд╕реЗ WSL2 рдмреИрд╢ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛:

time find . -name "*.js" -print | xargs cat
...(file content prints omitted)...
real    0m0.138s
user    0m0.030s
sys     0m0.000s

рдЬреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ WSL2 рд╕реЗ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╕рдордп рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред Powershell рдореЗрдВ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП:

> Measure-Command { ls *.js | % { cat $_ } }

Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 0
Milliseconds      : 49
Ticks             : 499000
TotalDays         : 5,77546296296296E-07
TotalHours        : 1,38611111111111E-05
TotalMinutes      : 0,000831666666666667
TotalSeconds      : 0,0499
TotalMilliseconds : 49,9

рдЬрд┐рд╕рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдЙрд╕реА рдмреЙрд▓рдкрд╛рд░реНрдХ рдкрд░ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЬреЗрд╕реНрдЯ рдЖрдИ / рдУ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ WS42 рдкрд░ рдирд╛рдЯрдХреАрдп рд░реВрдк рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред рдЬрдм рдпрд╣ рдЙрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ рдЬреЛ рдореБрдЭреЗ рдкрд░реЗрд╢рд╛рди рдХрд░ рд░рд╣реА рд╣реИ рддреЛ рдХреЛрдб рдФрд░ рдкрд░реАрдХреНрд╖рдгреЛрдВ (рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛!) рдореЗрдВ рдореБрджреНрджреЛрдВ рдХреЗ рдХрд╛рд░рдг рдмреИрд╢ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдпрд╣ рдПрдХ рд╕рд░рд▓ рдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред рдЗрд╕ рддрдереНрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдХрд┐ WSL2 рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реИ, рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореБрджреНрджрд╛ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЙрдореНрдореАрдж рд╣реИ рдХреА рдпрд╣ рдорджрдж рдХрд░реЗрдЧрд╛ред

: рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:

рдЬрд┐рдЬреНрдЮрд╛рд╕рд╛ рд╕реЗ рдмрд╛рд╣рд░ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдХреЛ --no-watch рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ WSL2 рдкрд░ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рджреЗрдЦрдиреЗ рд╕реЗ рдХрд┐рд╕реА рддрд░рд╣ рдЪреАрдЬреЗрдВ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрддреА рд╣реИрдВред рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрддрдирд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░реА рд╡рд┐рдВрдбреЛрдЬрд╝ рдорд╢реАрди рдкрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд▓рдЧрднрдЧ 1.6s рд▓рдЧрддреЗ рд╣реИрдВред рдореИрдВ WSL рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред
рдореИрдВ рдПрд╡реАрдЬреА рдПрдВрдЯреАрд╡рд╛рдпрд░рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдФрд░ рдиреЛрдб рдПрдХреНрдЬреАрдХреНрдпреВрдЯреЗрдмрд▓ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрд╡рд╛рдж рдЬреЛрдбрд╝ рджрд┐рдП рд╣реИрдВред
рдореЗрд░рд╛ рд╣рд╛рд░реНрдбрдбреНрд░рд╛рдЗрд╡ рдПрдХ рдПрд╕рдПрд╕рдбреА рд╣реИред

рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг v12.16.1

image

рдкрд░реАрдХреНрд╖рдг рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рддреБрд░рдВрдд рдлрд╝рд╛рдЗрд▓ рд╡реЙрдЪрд░ рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрд╕ рдЕрдкрдбреЗрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп 1 рдПрд╕-2.4 рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╣реИред

рдореИрдВ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рдореБрджреНрджрд╛ рд╣реИред

рдореИрдВ рдЗрд╕ рд░реЗрдкреЛ рдХреЗ рд╕рд╛рде рдЦрд┐рд▓рд╡рд╛рдбрд╝ рдХрд░ рд░рд╣рд╛ рдерд╛: https://github.com/kentcdodds/react-testing-library-course/tree/tjs

  • рдореИрдВ npm test рд▓рд┐рдП рдЬрд╛рддрд╛ рд╣реВрдВ рдФрд░ рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдШрдбрд╝реА рдореЛрдб рдореЗрдВ рдЪрд▓рдиреЗ рд▓рдЧрддреЗ рд╣реИрдВред
  • рдореИрдВ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдЯрд░реНрди рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 'p' рджрдмрд╛рддрд╛ рд╣реВрдВ рдФрд░ "tdd-02" рдЯрд╛рдЗрдк рдХрд░рддрд╛ рд╣реВрдВред рдореБрдЭреЗ 3+ рд╕реЗрдХрдВрдб рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдорд┐рд▓рддрд╛ рд╣реИред
    image

рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реЛрдЧрд╛ рдХрд┐ рдХреЗрдВрдЯ рд╕реАред рдбреЛрдбреНрд╕ рдиреЗ рдЕрдкрдиреЗ рднреБрдЧрддрд╛рди рдХрд┐рдП рдЧрдП рдкрд╛рдареНрдпрдХреНрд░рдо рдореЗрдВ рдПрдХ рдЧрдбрд╝рдмрдбрд╝ рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡рд╣ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рд╕рдВрднрд╡рддрдГ рдбрд┐рдмрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:? рдЕрдкрдиреЗ рд╡реАрдбрд┐рдпреЛ рдореЗрдВ, рдпрд╣ рдареАрдХ рдЪрд▓рддрд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд╣ рдПрдХ рдореИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рдХреБрдЫ рдмрд╣реБрдд рд╣реА рдЕрдЬреАрдм рдмрд╛рдд рдиреЛрдЯ рдХрд░рдиреА рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рджреЛрд╣рд░рд╛ рд╕рдХрддрд╛ - рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рд▓рдЧрд╛рддрд╛рд░ рдкрд░реАрдХреНрд╖рдг рдкреБрдирд░реНрдорд┐рд▓рди рдереЗ рдЬреЛ рдХрд┐ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд▓рд┐рдП (tdd-02 ... js) рд▓рдЧрднрдЧ 0.1 рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрд╕рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП ( tdd-01 ... js) - рд▓рдЧрднрдЧ 3 sред рдХреЛрдб рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╣реИ рдФрд░ рд╕рдорд╛рди рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдХреЛрдб рдХреЛ рдлрд╛рд╕реНрдЯ-рд░рдирд┐рдВрдЧ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рд╕реНрд▓реЛ-рд░рдирд┐рдВрдЧ рд╡рди рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдЪрд┐рдкрдХрд╛рдпрд╛ред рдкрд░рд┐рдгрд╛рдо рд╕рдорд╛рди рдереЗ - рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рдзреАрдореА рд░рд╣реА рдФрд░ рддреЗрдЬрд╝ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рддреЗрдЬреА рд╕реЗ рдмрдиреА рд░рд╣реА, рдЬрд┐рд╕рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЛрдб рд╕реНрд╡реИрдк рдХрд┐рдП рдЧрдП рдереЗред рдпрд╣ рдкрд╛рдЧрд▓ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдЕрдм рджреЛрдиреЛрдВ рдлрд╛рдЗрд▓реЗрдВ рдлрд┐рд░ рд╕реЗ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдЪрд▓рддреА рд╣реИрдВ (3-6s)ред

@Glinkis рдЖрдк рдкрд╣рд▓реЗ рд░рди рдХреЗ рдмрд╛рдж рд╣рд┐рдЯ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА 1.6sec рд╣реИ? (рдлрд┐рд░ рд╕реЗ рджреМрдбрд╝рдирд╛)


@SimeonRolev рдореИрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдкрд░ рдПрдХ рдирдЬрд╝рд░
рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ:
try1: рдореИрдВрдиреЗ рдЗрд╕реЗ рдпреВ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдЬрд╝рдорд╛рдпрд╛ рдФрд░ 6sec рдорд┐рд▓рд╛ рдЬрдм рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдЪрд░рдгреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА -> рдЙрд╕реА рдкрд░реАрдХреНрд╖рд╛ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рджреМрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП 3sec рдкрд░ рдбреНрд░реЙрдк рдХрд░реЗрдВ (рд╣рд┐рдЯ рджрд░реНрдЬ рдХрд░реЗрдВ)
try2: рдХреЗрдВрдЯ рд░реЗрдкреЛ рдореЗрдВ 26.4 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдбреЗрдб рдЬрд╕реНрдЯ -> 3 рд╕реЗрдХреЗрдВрдб рдкрд╣рд▓реЗ рд░реЗрд░реВрди рдХреЗ рд▓рд┐рдП рдЙрд╕реА рдХреЗ рдкрд╛рд╕ рдЪрд▓рддрд╛ рд╣реИ
try3: рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдЯреЗрд╕реНрдЯ рд░реЗрдкреЛ рд╕реЗ index.spec.js рдлрд╝рд╛рдЗрд▓ рд▓реАред рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдХреЗрдВрдЯ рд░реЗрдкреЛ рдореЗрдВ рдЧрд┐рд░рд╛ рджрд┐рдпрд╛ред )
image

рдореИрдВ рдЗрд╕ try3 рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдЕрднреА рднреА => ~ 3sec рдХреЗрдВрдЯ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рджреМрдбрд╝рдирд╛ рдкрд░ рд░реЗрдкреЛ рдореЗрд░реА рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдореЗрдВ рд░реЗрдкреЛ рдпрд╣ 0.300s рдХреЛ рдлрд┐рд░ рд╕реЗ рджреМрдбрд╝рдирд╛ рдкрд░ (рдХрд┐рд╕реА рдХреА рдЬрд░реВрд░рдд рдЗрд╕ рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдХреЗрдВрдЯ рдХреЛ рдпрд╣ рдЬрд╛рдБрдЪрдиреЗ рд╡рд╛рд▓рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: P

рдПрдВрдЯрд░ рджрдмрд╛рдиреЗ рд╕реЗ рдЯреЗрд╕реНрдЯ рд▓рдЧрднрдЧ 200ms рдореЗрдВ рд░рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

@rasreddineskandrani рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛? рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдзреАрдореА рд░реЗрдкреЛ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХреА рдирдХрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреБрдореНрд╣рд╛рд░рд╛? рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рд░реЗрдкреЛ рдХреЗ рд╕рд╛рде рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдХрдИ рд▓реЛрдЧ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдкрд░ рд╣реИрдВ, рдореИрдВ рд╕рд┐рд░реНрдл рдПрдХ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдЙрджрд╛рд╣рд░рдг рдкреЛрд╕реНрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛ред

@kentcdodds рдХреНрдпрд╛ рдЖрдк рд╣рдорд╛рд░реЗ рдирд╛рдпрдХ рдПрдХ рдмрд╛рд░ рдФрд░ рд╣реЛрдВрдЧреЗ?

@SimeonRolev рдореЗрд░реЗ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдореЗрдВ рдореИрдВ рдХреЗрдВрдЯ рд░реЗрдкреЛ рдореЗрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рдирд╣реАрдВ рджреЗрдЦрддрд╛ред рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЗрдВрдЯ рд░реЗрдкреЛ рдореЗрдВ рдХреБрдЫ рд╣реИред рдпрд╣ рдзреАрдореА рдЧрддрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ => рдЗрд╕рдХреЗ рдмрд╛рд╣рд░ рдХрд╛ рднрд╛рдЧ рддреЗрдЬ рд╣реЛрддрд╛ рд╣реИред

рдпрд╣ github рдореБрджреНрджрд╛ рдЬреЗрд╕реНрдЯ рдкрд░рдлреЙрд░реНрдореЗрдВрд╕ рд╡рд┐рдВрдбреЛ рдмрдирд╛рдо macOS / рд▓рд┐рдирдХреНрд╕ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдПрдХ рд╣реА рдкрд░ рдирд╣реАрдВ рдкрд╣реБрдВрдЪреЗ рдереЗред рдЙрдиреНрд╣реЛрдВрдиреЗ рдореБрдЭреЗ рдпрд╣ рдЕрдиреБрдорд╛рди рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛ред (рдпрд╣ рдЕрдм рддрдХ 2 рд╕рд╛рд▓ рдкрд╣рд▓реЗ jest v23 рдХреЗ рд╕рд╛рде рдмреЗрд╣рддрд░ рд╣реИ)

рд╣реИрд▓реЛ, рдореИрдВ рдпрд╣рд╛рдБ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ рдорд╢реАрди рдФрд░ рдбрдмреНрд▓реВрдПрд╕рдПрд▓ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ WSL рдореЗрдВ рдХреЙрдкреА рдХрд░ рд▓рд┐рдпрд╛ред рдпрд╣рд╛рдБ рдПрдХ рд╣реА рджреЛ рдмреБрдирд┐рдпрд╛рджреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд░рди рджрд┐рдП рдЧрдП рд╣реИрдВ:
рд╡рд┐рдВрдбреЛрдЬ 10 (рд╕рдВрд╕реНрдХрд░рдг 2004):
image
WSL 2 (Ubuntu 20.04):
image

рдкрд░реАрдХреНрд╖рдг рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИрдВ:
image
image

рдкрд░рд┐рдпреЛрдЬрдирд╛ CRA рдХреЗ рд╕рд╛рде рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдмреЙрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд╣реАрдВ рд╣реИ, рдореИрдВрдиреЗ рдЬреЗрд╕реНрдЯ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ред
рдореЛрдЪрд╛ рдкрд░ рд╕рдорд╛рди рдкрд░реАрдХреНрд╖рдг рддреЗрдЬ рдЧрддрд┐ рд╕реЗ рдЪрд▓рддреЗ рд╣реИрдВ, рд▓рдЧрднрдЧ рддреБрд░рдВрддред рдореИрдВ рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдореИрдВ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдВ, рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдзреАрдорд╛ рдФрд░ рдзреАрдорд╛ рд╣реЛрдЧрд╛ред рдкреНрд░рддреНрдпреЗрдХ рдкрд░реАрдХреНрд╖рдг 0.8 рд╕реЗрдХрдВрдб рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЧрдбрд╝рдмрдбрд╝ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреНрдпрд╛ред
рд╕рдорд╕реНрдпрд╛ рдмрджрддрд░ рдереА, рдПрдХ рдПрдХрд▓ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рд▓рдЧрднрдЧ 15 рд╕реЗрдХрдВрдб рд▓рдЧреЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВрдиреЗ --runInBand рдФрд░ рдЬреЛрдбрд╝рд╛, рддреЛ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕реБрдзрд╛рд░ рд╣реБрдЖ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рднреА рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдореЛрдЪрд╛ рд╡реЙрдЪ рдореЛрдб рддрддреНрдХрд╛рд▓ рд╣реИред

рдпрд╛рд░реНрди рд╕рдВрд╕реНрдХрд░рдг 1.22.5 рд╣реИ, рдЕрдиреНрдп рд╕рднреА рдПрдирдкреАрдПрдо рдирд┐рд░реНрднрд░рддрд╛рдПрдВ (рдЬреИрд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рд╕реНрдХреНрд░рд┐рдкреНрдЯ) рдирд╡реАрдирддрдо рд╣реИрдВред

рдореИрдВрдиреЗ рдПрдВрдЯреА-рд╡рд╛рдпрд░рд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдбрд┐рдлреЗрдВрдбрд░ рдХреЛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╖рдо рдХрд░ рджрд┐рдпрд╛ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд▓рд┐рдП рдЗрдВрдбреЗрдХреНрд╕рд┐рдВрдЧ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдХреЛрдИ рд▓рд╛рдн рдирд╣реАрдВ рд╣реИред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВрдиреЗ рдПрдВрдЯрд░ рджрдмрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдФрд░ рдкрд░реАрдХреНрд╖рдг WSL рдкрд░ рдЙрддрдиреЗ рд╣реА рддреЗрдЬрд╝ рдереЗ:
image

рдЕрдм рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрд▓рдЭрди рдореЗрдВ рд╣реВрдБ :)

рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдмрд╣реБрдд рдзреАрдорд╛ рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкрд░реАрдХреНрд╖рд╛ рдореЗрдВ 0.3 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдмрд╣реБрдд рдХреБрдЫ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╡реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд╕реВрдЯ 0.1 рд╕реЗрдХрдВрдб рдХреЗ рднреАрддрд░ рдкреВрд░рд╛ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ 2: рдЬрдм рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдореЗрдВ 100 рдкрд░реАрдХреНрд╖рдг рдЬреЛрдбрд╝реЗ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ 44 рд╕реЗрдХрдВрдб рд▓рдЧреЗ, рднрд▓реЗ рд╣реА рдореИрдВ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдЯрд░ рджрдмрд╛рдКрдВ:
image

WSL рдкрд░ рд▓рдЧрднрдЧ 9-10 рд╕реЗрдХрдВрдб рдореЗрдВ рдПрдХ рд╣реА рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рд╣реЛрддрд╛ рд╣реИ:
image

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

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

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

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

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

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

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