[ owner @ 24.01.2005. 14:32 ] @
Pozdrav

ima li neko ideju na koji nacin bih mogao testirati sve procedure koje se nalaze u Oracle bazi a da ih ne testiram rucno jednu po jednu pisuci rucno ulazne variable za pojedine procedure kojih ima npr.do 60 komada (u jednoj)?

Unapred hvala
[ CandyMan @ 25.01.2005. 07:16 ] @
Šta znači testirati?
Da li hoćeš da pogledaš da li su sve funkcije, procedure i paketi validni tj. da li mogu da se prevedu?
[ owner @ 25.01.2005. 08:22 ] @
Mogu se prevesti.
Npr.svaka procedura zavisno od zadatih parametara vraca mi neku izlaznu vrednost ukoliko je dobro napisana,u protivnom vraca gresku.
Evo primer:

variable NERRNO NUMBER;
variable NDOC_AKT NUMBER;
execute SW.DOC.OPEN ( :NERRNO, NCOMMIT, :NDOC_AKT, NDOKUMENT_ID, NEGAL);
print NERRNO;
print NDOC_AKT;

Sada ovaj prototip procedure moram testirati na nacin da rucno pisem select i variable.

variable dok_id number;
begin
select min(dokument_id)
into :dok_id
from sw.dokudatei;
end;
/
variable NERRNO NUMBER;
variable NDOC_AKT NUMBER;
execute SW.DOC.OPEN ( :NERRNO, 0, :NDOC_AKT, :dok_id, 0);
print NERRNO;
print NDOC_AKT;

Posle ovoga kada je pustim npr. kroz Worksheet ukoliko je sve ok vraca mi NERRNO=0 (variabla za gresku) i za NDOC_AKT neku vrednost.
[ Raspucin @ 27.01.2005. 08:36 ] @
pa neka procedura koja ce da ti daje nesto u ovom obliku:

variable dok_id number;
begin
select min(dokument_id)
into :dok_id
from sw.dokudatei;
end;
/
variable NERRNO NUMBER;
variable NDOC_AKT NUMBER;
execute SW.DOC.OPEN ( :NERRNO, 0, :NDOC_AKT, :dok_id, 0);
print NERRNO;
print NDOC_AKT;


moze da se napravi, ali svejedno opet za testiranje procedura, moras da zadas konkretne vrednosti, tako da to opet moras rucno da uradis.

[ Jim Jackson @ 27.01.2005. 15:02 ] @
Mozda:
http://utplsql.oracledeveloper.nl/
Citat:

utPLSQL is a unit testing framework for PL/SQL developers modeled on the Junit and Xunit frameworks. Developed by Steven Feuerstein, author of many books on the language, it allows the automated testing of packages, functions and procedures.