Boa tarde,
Pessoal, estou entrando em um projeto, onde estamos migrando muitas procedures do BD - Sybase, para o Oracle 10g, e isso está criando uma demanda imensa de teste nas procedures migradas, gostaria de saber se teria como automatizar estes teste, digo assim, ela apenas tem que executar corretamente, passando por todas as verificações que possue, a estratégia que foi passada, criar o comando de executar a procedure, pasando os parametro para que faça uma determinada ação, mas gostaria de automatizar isso, para dar mais vazão, e com isso poder cobrir mais as procedures testadas.
Espero te conseguido explicar o que mais ou menos gostaria de fazer.
Procedures
-
- Rank: Estagiário Sênior
- Mensagens: 12
- Registrado em: Sex, 02 Jul 2010 4:28 pm
- Localização: Porto Alegre
Pedro Cestari
-
- Moderador
- Mensagens: 1177
- Registrado em: Qui, 15 Out 2009 10:28 am
- Localização: Recife
como saber que valores seriam passados como parametro para cada procedure?
se quer saber se as procedures foram compiladas com sucesso pode ser obtida essa informação pela user_errors, se a procedure não existir aí é porque a compilação (não execução) foi feita com sucesso.
se quer saber se as procedures foram compiladas com sucesso pode ser obtida essa informação pela user_errors, se a procedure não existir aí é porque a compilação (não execução) foi feita com sucesso.
-
- Rank: Estagiário Sênior
- Mensagens: 12
- Registrado em: Sex, 02 Jul 2010 4:28 pm
- Localização: Porto Alegre
Pedro Cestari
Isso seria feita a analise, em cima das procedures... teria como saber, mas tu imagina ter uma procedure que passa sei la, uns 20 parametros, tipo, ou outra maneira de realizar uma "teste automatizado", abri o topico para saber se teriam alguma maneira de abortar isso, pra dar um pouco de velocidade para essa tarefa.
-
- Moderador
- Mensagens: 1177
- Registrado em: Qui, 15 Out 2009 10:28 am
- Localização: Recife
ah cara não sei bem como lhe chegou essa atividade, qual a area de negocio, etc etc...
você poderia fazer algo então +- assim:
ler a view USER_SOURCE, pegar os cabecalhos das procedures,
e montar um script,
você poderia fazer algo então +- assim:
ler a view USER_SOURCE, pegar os cabecalhos das procedures,
e montar um script,
- fsitja
- Rank: OraSauro
- Mensagens: 611
- Registrado em: Seg, 19 Jan 2009 4:29 pm
- Localização: Gaúcho no Rio de Janeiro - RJ
"The scars exist to remind us that the past was real"
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html
OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html
OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist
Em vez de usar 20 parâmetros, organize os parâmetros por types (colunas da mesma tabela, ou parâmetros correlacionados) e passe menos parâmetros. Vai facilitar muito a vida.
Por exemplo:
Aí na chamada, fica bem menos monstruoso o negócio, pois é só passar uma variável.
Quanto a automatizar, dá para fazer scripts de teste, que façam chamadas para sua procedure em loop, por exemplo, percorrendo um cursor e passando linhas para a procedure para execução. No final verifique os logs de erro e a correção do processamento.
É claro que para cada procedure você vai ter que criar o programa de teste. Mas só a primeira vez. Depois fica muito simples cada vez que houver alterações, em cada ciclo do desenvolvimento.
Por exemplo:
SQL> create or replace package pk_teste as
2 type t_pessoa is record (id_pessoa number(10),
3 nome varchar2(50),
4 dt_nasc date);
5
6 procedure cadastra_pessoa (p_pessoa in t_pessoa);
7
8 end pk_teste;
9 /
Package created
SQL>
Quanto a automatizar, dá para fazer scripts de teste, que façam chamadas para sua procedure em loop, por exemplo, percorrendo um cursor e passando linhas para a procedure para execução. No final verifique os logs de erro e a correção do processamento.
É claro que para cada procedure você vai ter que criar o programa de teste. Mas só a primeira vez. Depois fica muito simples cada vez que houver alterações, em cada ciclo do desenvolvimento.
-
- Rank: Estagiário Sênior
- Mensagens: 12
- Registrado em: Sex, 02 Jul 2010 4:28 pm
- Localização: Porto Alegre
Pedro Cestari
Hummm, interessantes essa parte da automação, gostei muito, era mais ou menos isso que estava pesando, tu teria algum exemplo para me basear??
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes