隠す赤いコンソール.エラーログの壁をテスト中にエラー


テスト中に目的のエラーを誘発しながら、赤いエラーログは本当に迷惑を得ることができますし、目から潜在的な重要な情報を非表示にします.
このissueに関する議論の後で、ケントC .ドッズによって良い解決につながります.

コメント #5267



kentcdodds
コメントどうもです
私は2つの理由でomitJSDOMErrorsを使わないことにしました.
  • 私が見ていた巨大な丸太は、527でもブラウザに表示されるので、JSDOM環境でもそれを見ることができます.
  • @ DOMNIC :「jsdomerrorはJavaScriptエラー以外にも多くの他のケースに対して解雇されます.
  • ので、コンソールのJSDOMを使用しているので、それはmockable今あなたのテストでは、同じものです.ですから、ログインしているエラーが気に入らない場合は、以下のようにします.
    beforeEach(() => {
      jest.spyOn(console, 'error')
      console.error.mockImplementation(() => {})
    })
    
    afterEach(() => {
      console.error.mockRestore()
    })

    So I would recommend against making this change.


    tl;dr; A snippet to hide console.error logs during testing error messages.

    beforeEach(() => {
      jest.spyOn(console, 'error')
      // @ts-ignore jest.spyOn adds this functionallity
      console.error.mockImplementation(() => null);
    });
    
    afterEach(() => {
      // @ts-ignore jest.spyOn adds this functionallity
      console.error.mockRestore()
    })
    
    saidMarkus Spiskeによる掩護写真