jest + graphql集成测试显示错误

时间:2017-10-03 06:46:56

标签: javascript typescript graphql jestjs

我正在针对我的dbgraphql服务器编写集成测试 jest是我的测试运行器和断言库。

对于每个测试,我都验证我没有任何错误:

const actual = await graphql(schema, query);
expect(actual.errors).toBeUndefined();

当我的测试失败时(沿途出现问题),
actual.errors不是undefined,我希望jest显示错误,
但这就是我得到的:

Expected value to be undefined, instead received
  [[GraphQLError: Invalid value [object Object]]]

如果我看不出“无效值”是什么,则此错误消息无效 如何配置jest以便它将打印错误对象?

2 个答案:

答案 0 :(得分:0)

这与jest无关。[object Object]object.toString()返回,由错误日志的打印机调用。 如果您想查看object的详细信息,则需要重写 toString的{​​{1}} 它类似于以下代码:

object

答案 1 :(得分:0)

当您要传递对象时,错误消息是GraphQLError: Invalid value [object Object]您可能正在传递字符串[object Object]。或者您的架构有一个字符串,您认为它有一个对象,或者您应该在传递字符串时传递一个对象。没有您的架构,查询或根源,我只是在猜测。

graphql对象有一些不会自动记录的属性。但它们确实有助于调试吨。我最喜欢error.patherror.stack。您可以在error object source

中查看完整列表