运行 注入代码的集成测试库的正确方法是什么?

What's the proper way of integration testing libraries that run injected code?

我有两个软件组件:我的应用程序和应用程序使用的库(归我公司所有,但属于另一个团队)。该库是某些服务的客户端库,并执行 HTTP 请求。该库还将 HTTP 响应映射到应用程序的内部表示。这是通过应用程序将映射 class 注入库来完成的。

我已经对映射 class 和应用程序进行了单元测试,而客户端库调用总是被模拟。

现在我正在考虑对库进行集成测试,但我不确定最好的方法是什么:

我赞成最后一点,但考虑到我们库的内部结构很少更改,我不确定是否值得为此付出努力。

你对此有何看法?你能想到另一个解决方案吗?

我会在库中创建帮助程序,允许您模拟 HTTP 响应。因此,您会在库中看到代码 运行,您可以使用验证 JSON 格式的库来确保 http request/response 是您所期望的。

从这个意义上说,您正在检查 i) 该库是否确实适用于您的系统; ii) 处理正确的 HTTP 响应;因此,您的助手可以很简单,开发人员只需要提供 http 响应的内容