我正在研究与 Nest.js 项目中的 DocuSign API 的集成。
我的服务必须满足3个要求:
服务架构
单元测试
编写单元测试的准则是什么?
负责 oAuth 的逻辑覆盖是否正确以单元测试的形式完成?
我的建议是 - 构建它就好像没有任何 NestJS 在起作用一样。将其视为独立的 SDK。尽可能不可知论。
稍后将其实现到 NestJS(或任何其他)架构中将会变得非常容易。
将代码分解为逻辑部分始终是一个实施决策。有时将代码分解为多个类/文件是没有意义的,有时 - 恰恰相反。这是你的决定:)
一般来说,测试与 API 的集成并不完全是单元测试的问题,但这完全取决于命名,因为我已经看到了数百个自己的定义,其中单元测试结束,功能测试开始。
但是——再一次。这一切都取决于 API。如果您最终为 100 种不同的方法编写了 100 个单元测试,所有这些方法都有
axios.get
或 axios.post
,那么这是毫无意义的。它可以通过动态模拟 axios 实例的单个功能测试来完成。
希望有帮助:)