在写测试的时候,如果你须要对大量的数据进行 compare 解决的时候,你大概率不会把所有须要比照的对象都列出来,而是抉择间接循环解决。
在测试中如果有循环解决的时候,很有可能会呈现的一个问题是你可能无奈在测试无奈通过时疾速定位道具体是循环中的哪一个元素呈现的问题。这个时候的定位就会比拟麻烦。
一个比拟好的方法是,能够在 Jest 中退出 try/catch 中来处理错误,这样能够在呈现谬误的时候,打印一些辅助信息来疾速定位,比方
it('test-error-catch-example',() => { let needTestData = [1,2,3,4] needTestData.foreach( item => { let result = doSomething(item) // 这里开始是新增的 try{ expect(result).toBe(true) }catch(e){ console.log("error key",item) throw e; } // 新增的错误处理完结 })})
通过增加一个自定义的 try catch ,能够在呈现问题的时候,一方面将 Error 依照惯例的形式抛出,期待 Jest 解决,另一方面,能够在 catch 时输入自定义的信息,不便咱们进行排查和修复。