Reactjs 如何在JEST中测试JSON.parse

Reactjs 如何在JEST中测试JSON.parse,reactjs,jestjs,Reactjs,Jestjs,我试图使用JEST为react组件编写单元测试,该组件从componentWillMount函数中的locaStorage获取JSON对象 反应组分 JSONData应该是包含JSON的字符串,而不是对象 否则localStorage.getItem('JSONResponse')返回一个对象。在对象上调用JSON.parse时,该对象将首先转换为字符串“[object object]”,该字符串显然不是JSON值 > JSON.parse({}) Uncaught SyntaxErr

我试图使用JEST为react组件编写单元测试,该组件从componentWillMount函数中的locaStorage获取JSON对象

反应组分
JSONData
应该是包含JSON的字符串,而不是对象

否则
localStorage.getItem('JSONResponse')
返回一个对象。在对象上调用
JSON.parse
时,该对象将首先转换为字符串
“[object object]”
,该字符串显然不是JSON值

> JSON.parse({})
  Uncaught SyntaxError: Unexpected token o in JSON at position 1(…)
> JSON.parse("[object Object]")
  Uncaught SyntaxError: Unexpected token o in JSON at position 1(…)
似乎最简单的解决方案是调用
JSON.stringify

stub.returns(JSON.stringify(JSONData));

嗨,谢谢你的回复,真的很有效。我能够成功地测试它:)
- SyntaxError: Unexpected token o
        at Object.parse (native)
> JSON.parse({})
  Uncaught SyntaxError: Unexpected token o in JSON at position 1(…)
> JSON.parse("[object Object]")
  Uncaught SyntaxError: Unexpected token o in JSON at position 1(…)
stub.returns(JSON.stringify(JSONData));