У меня есть система, в которой есть несколько модулей, написанных на python, которые по сути выполняют и организуют цепочку SQL-запросов.Предположим, что есть 4 модуля A, B, C, D, и они работают последовательно как подключенная система.Выход каждого модуля используется как часть ввода для последующего модуля.Я написал набор интеграционных тестов, которые тестируют каждый из этих модулей в отдельности.Принцип работы интеграционного теста заключается в том, что каждый класс Test NG, представляющий модуль, имеет несколько методов тестирования, представляющих функциональные тестовые случаи для модуля.Каждый метод является атомарным в том смысле, что он генерирует свои собственные входные тестовые данные динамически при каждом запуске.Способ выполнения теста заключается в том, что он генерирует данные теста, загружает их во входные таблицы AWS Athena, вызывает задание AWS BATCH с предопределенным определением задания для данного модуля.Затем AWS Batch запускает EC2, который использует последний образ докера из предустановленного ECR и запускает скрипт на python, связанный с модулем.Это происходит для каждого тестового случая, который, я знаю, может быть неэффективным, но это другое обсуждение.Проблема, которую я пытаюсь решить, состоит в том, как мне сгенерировать сводный отчет о покрытии кода для сценариев python и сценариев sql, который он запускает для всей базы кода?
Это доморощенная платформа и нетрадиционный автоматизированныйтестовая система.Я понятия не имею, с чего начать поиск генерации покрытия кода, охватывающего как sql, так и python, а также собирать всю информацию о каждом запуске, который происходит в изолированном контейнере.