我有一个系统,该系统具有多个用python编写的模块,这些模块实质上执行和协调sql查询链。假设有4个模块A,B,C,D,它们按顺序作为连接的系统运行。每个模块的输出都用作后续模块的输入的一部分。我已经编写了一组集成测试,可以单独测试每个模块。集成测试的工作方式是,表示模块的每个Test NG类都有表示模块功能测试用例的多种测试方法。每种方法都是原子的,因为它在每次运行时都会动态生成自己的输入测试数据。测试的执行方式是生成测试数据,将其加载到AWS Athena输入表中,并使用给定模块的预定义作业定义调用AWS BATCH作业。然后,AWS Batch启动一个EC2,该EC2使用来自预设ECR的最新docker映像,并运行与该模块相关的python脚本。对于每个测试用例,都会发生这种情况,我知道这可能效率不高,但这是一个不同的讨论。我要在这里解决的问题是如何为整个代码库运行的python脚本和sql脚本生成汇总的代码覆盖率报告?
这是一个本地开发的框架和一个非常规的自动化测试系统。我根本不知道从哪里开始寻找生成可覆盖sql和python的代码覆盖率,并且还可以将每次运行中的所有信息汇总在一个隔离的容器中。