-
Notifications
You must be signed in to change notification settings - Fork 0
Cobertura
github-actions[bot] edited this page Jul 21, 2026
·
1 revision
A extensão alimenta a Test Coverage API do VSCode, mostrando cobertura diretamente no editor e na aba Coverage.
- Linhas executadas → gutter verde 🟢
- Linhas não executadas → gutter vermelho 🔴
- Aba Test Coverage → percentual por arquivo/pasta


O CLI é chamado com flags extras de cobertura:
utplsql run <conn> -p=<suites>
-f=ut_coverage_cobertura_reporter -o=coverage.xml
-source_path=<utplsql.sourcePath>
-owner=<schema>
... coverageSourceArgs
A extensão lê o XML Cobertura e mapeia cada objeto coberto ao arquivo-fonte
usando resolveSourceUri (absoluto → workspace → sourcePath).
O type_mapping traduz o tipo capturado pelo regex no tipo Oracle.
Três convenções comuns:
Estrutura: sourcePath/<tipo>/<nome>.sql
Exemplo de projeto:
install/
├── packages/
│ └── calculadora.sql
├── functions/
│ └── dobro.sql
└── procedures/
└── log_auditoria.sql
Convenção: pkg_*, prc_*, fnc_*
Exemplo:
install/
├── pkg_calculadora.sql
├── fnc_dobro.sql
└── prc_auditoria.sql
"utplsql.coverageSourceArgs": [
"-regex_expression=.*[/\\\\]((pkg|prc|fnc|trg|vw)_\\w+)\\.sql$",
"-name_subexpression=1",
"-type_subexpression=2",
"-type_mapping=pkg=PACKAGE BODY/prc=PROCEDURE/fnc=FUNCTION/trg=TRIGGER/vw=VIEW"
]Convenção: *.pkb, *.fnc, *.prc
Exemplo:
install/
├── calculadora.pkb
├── dobro.fnc
└── auditoria.prc
"utplsql.coverageSourceArgs": [
"-regex_expression=.*[/\\\\](\\w+)\\.(\\w+)$",
"-name_subexpression=1",
"-type_subexpression=2",
"-type_mapping=pkb=PACKAGE BODY/fnc=FUNCTION/prc=PROCEDURE/trg=TRIGGER"
]-
Packages →
PACKAGE BODY: a cobertura é coletada no corpo do package, não na spec. -
Windows e metacaracteres: no modo
launcher, ocmdconsome^e interpreta|como pipe. Useutplsql.invocation: "java"para usar regex completo (veja Modo de invocação). -
Validação dinâmica: antes de rodar cobertura, a extensão verifica se
UT_COVERAGE_COBERTURA_REPORTERexiste no banco. Se não, cobertura é pulada com aviso — a execução nunca é bloqueada.
Ative utplsql.dbmsOutput: true e inspecione o output do CLI no terminal da
view de testes. O utPLSQL loga quais objetos foram mapeados e quais falharam:
-- objetos mapeados pelo regex:
-- CALCULADORA → PACKAGE BODY → install/packages/calculadora.sql
-- DOBRO → FUNCTION → install/functions/dobro.sql
-- LOG_AUDITORIA → (não mapeado — nenhum arquivo correspondeu)

- Começando
- Uso
- Ferramentas avançadas
- Referência
- Desenvolvimento
- Ajuda