最近写一个新项目,其中有一个函数是根据父级 id 从数据库查出几十条数据,发到 pulsar 等下游服务返回结果,再更新回数据库,逻辑很简单,也就不到 50 行代码。
对于这块的单元测试不知道该怎么写。。因为有其他项目也在操作开发数据库,根据父级 id 可能查出来为空,这时逻辑是 ok 的。然后下游的服务也不一定一直监听消息,另外如果监听了,下游服务会产生业务逻辑更新它们的库。。所以这种情况该怎么写单元测试呢?
如果测试方法只是调用函数,检查有没有异常,好像作用不大。如果是 sql 查出有结果的父级 id 再调用函数,感觉增加了测试的变量,jenkins 执行 mvn 的时候没准会失败。而且即使成功查出数据,还会造成下游服务的数据非正常更改。。
之前单元测试写的少,都是比较好拆分的模块,最近要求测试模块详细完整了,所以有点摸不着头脑。。
对于这块的单元测试不知道该怎么写。。因为有其他项目也在操作开发数据库,根据父级 id 可能查出来为空,这时逻辑是 ok 的。然后下游的服务也不一定一直监听消息,另外如果监听了,下游服务会产生业务逻辑更新它们的库。。所以这种情况该怎么写单元测试呢?
如果测试方法只是调用函数,检查有没有异常,好像作用不大。如果是 sql 查出有结果的父级 id 再调用函数,感觉增加了测试的变量,jenkins 执行 mvn 的时候没准会失败。而且即使成功查出数据,还会造成下游服务的数据非正常更改。。
之前单元测试写的少,都是比较好拆分的模块,最近要求测试模块详细完整了,所以有点摸不着头脑。。