Die für den Test verwendeten Daten ('work.somedata1' und 'work.somedata2') werden direkt im Skript mithilfe eines DATA-Schritts erstellt. Es ist keine externe Datenquelle erforderlich.
1 Codeblock
DATA STEP
Erklärung : Dieser DATA _NULL_-Block schreibt den SAS-Code, der den Kern des Webdienstes bilden wird. Er verwendet '%webout', um eine Web-Ausgabe vorzubereiten. Ein internes Makro '%x' wird definiert, um eine Liste von Tabellen (aus 'sasjs_tables' oder hochgeladenen Dateien) zu durchlaufen und diese als Objekte in die Web-Antwort zu schreiben, wobei fehlende Werte in Zeichenketten umgewandelt werden.
Erklärung : Aufruf des Makros '%ms_createwebservice' zum Erstellen und Bereitstellen des Webdienstes 'sendObj' im durch '&mcTestAppLoc/services' angegebenen Verzeichnis, unter Verwendung des im vorherigen Schritt generierten Codes.
Kopiert!
%put creating web service: &mcTestAppLoc/services;
%ms_createwebservice(
path=&mcTestAppLoc/services,
name=sendObj,
mdebug=&sasjs_mdebug
)
%put created web service: &mcTestAppLoc/services;
1
%put creating web service: &mcTestAppLoc/services;
2
%ms_createwebservice(
3
path=&mcTestAppLoc/services,
4
name=sendObj,
5
mdebug=&sasjs_mdebug
6
)
7
%put created web service: &mcTestAppLoc/services;
3 Codeblock
Macro Call
Erklärung : Aufruf des Makros '%mp_assert', um zu überprüfen, ob die Diensterstellung ohne Fehler (Bedingung 'syscc=0') erfolgt ist. Das Testergebnis wird in 'work.test_results' gespeichert.
Kopiert!
%mp_assert(
iftrue=(&syscc=0),
desc=No errors after service creation,
outds=work.test_results
)
1
%mp_assert(
2
iftrue=(&syscc=0),
3
desc=No errors after service creation,
4
outds=work.test_results
5
)
4 Codeblock
DATA STEP Data
Erklärung : Dieser DATA-Schritt erstellt zwei SAS-Testtabellen, 'work.somedata1' und 'work.somedata2', mit identischen Daten, die numerische Werte, eine Zeichenkette mit Anführungszeichen und Leerzeichen sowie einen speziellen fehlenden Wert enthalten.
Erklärung : Aufruf des Makros '%ms_testservice' zur Ausführung des Webdienstes 'sendObj'. Die Tabellen 'work.somedata1' und 'work.somedata2' werden als Eingabe übergeben. Die Dienstergebnisse werden in der Bibliothek 'testlib1' gespeichert.
Erklärung : Diese beiden DATA _NULL_-Schritte überprüfen den Inhalt der vom Webdienst zurückgegebenen Tabellen ('testlib1.somedata1' und 'testlib1.somedata2'). Wenn die Daten den Erwartungen entsprechen (insbesondere die Umwandlung des fehlenden Wertes '.z' in das Zeichen 'Z'), werden die Makrovariablen 'test1' und 'test2' auf 'PASS' gesetzt.
Kopiert!
%let test1=FAIL;
data _null_;
set testlib1.somedata1;
if x=1 and y=' t"w"o' and z="Z" then call symputx('test1','PASS');
putlog (_all_)(=);
run;
%let test2=FAIL;
data _null_;
set testlib1.somedata2;
if x=1 and y=' t"w"o' and z="Z" then call symputx('test2','PASS');
putlog (_all_)(=);
run;
1
%let test1=FAIL;
2
DATA _null_;
3
SET testlib1.somedata1;
4
IF x=1 and y=' t"w"o' and z="Z"THEN call symputx('test1','PASS');
5
putlog (_all_)(=);
6
RUN;
7
8
%let test2=FAIL;
9
DATA _null_;
10
SET testlib1.somedata2;
11
IF x=1 and y=' t"w"o' and z="Z"THEN call symputx('test2','PASS');
12
putlog (_all_)(=);
13
RUN;
7 Codeblock
Macro Call
Erklärung : Abschließende Aufrufe des Makros '%mp_assert', um die Ergebnisse der vorherigen Überprüfungen formal zu bestätigen. Wenn die Makrovariablen 'test1' und 'test2' auf 'PASS' stehen, gelten die Tests als erfolgreich.
Kopiert!
%mp_assert(
iftrue=(&test1=PASS),
desc=somedata1 created correctly,
outds=work.test_results
)
%mp_assert(
iftrue=(&test2=PASS),
desc=somedata2 created correctly,
outds=work.test_results
)
1
%mp_assert(
2
iftrue=(&test1=PASS),
3
desc=somedata1 created correctly,
4
outds=work.test_results
5
)
6
%mp_assert(
7
iftrue=(&test2=PASS),
8
desc=somedata2 created correctly,
9
outds=work.test_results
10
)
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
Urheberrechtsinformationen : Copyright-Informationen (HMS Analytical Software GmbH, SAS Institute Inc.) werden in Kommentaren gefunden, die auf andere Dateien verweisen.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.