如何使用Node.js执行集成testing?

我正在编写一个充当GraphQL服务器的Node.js应用程序。 我想testingGraphQL是否给我正确的结果。

我的猜测是在每个testing中向服务器发出请求,然后观察是否正确。 但是我不确定如何设置它,如何在所有testing完成之前运行服务器并清理数据库并closures它。

我之前使用Ruby on Railsrspec一起工作过,所以我想在Node.js中做类似rspec事情。 有没有办法使用Jest来完成它? 如果没有,我怎么能做一些相似的事情?

这不是一个真正的Jest特定问题,而是更多如何在Node中执行集成testing。

您使用Jest的事实,除了要确保自动模拟被closures以外,几乎没有什么区别。

通常在编写集成样式testing时,我会使用supertest来发出请求,并将数据库设置为使用sqlLite或类似的运行种子。

我build议寻找类似graphql-tester的工具。