Das Skript verbraucht keine unkontrollierten externen Daten. Es erstellt eine Log-Konfigurations-Template-Datei in der temporären Bibliothek 'WORK' und verwendet einen Referenzpfad (g_refdata), der eine SASUnit-Makrovariable ist, die auf vom Framework verwaltete Testdaten zeigen soll.
1 Codeblock
Macro SASUnit
Erklärung : Initialisiert das globale Testszenario und definiert das Makro 'testcase', das die Logik des Unit-Tests kapselt. Der Parameter 'i_desc' liefert eine Beschreibung des Szenarios, die das Testziel identifiziert.
Kopiert!
%initScenario (i_desc=Test of _createScnLogConfigTemplate.sas);
%macro testcase(i_object=_createScnLogConfigTemplate.sas, i_desc=%str(Correct call));
1
%initScenario (i_desc=Test of _createScnLogConfigTemplate.sas);
Erklärung : Dieser Block initialisiert den spezifischen Testfall und ruft das Makro `_createScnLogConfigTemplate` auf. Dieses Makro wird getestet, um sicherzustellen, dass es korrekt eine SASUnit-Log-Konfigurationsdatei generiert. Die Datei wird im SAS-Arbeitsordner (`WORK`) unter dem Namen `sasunit.scnlogconfig.xx.template.xml` erstellt. Die Pfade der Log-Ordner und die Sprache werden angegeben, wobei 'XX' ein Platzhalter für den Test ist.
Erklärung : Dieser Block enthält die Assertionen, die den Testerfolg überprüfen. `%assertLog` stellt sicher, dass keine Warnungen oder Fehler im SAS-Log ausgegeben wurden. `%assertEquals` überprüft mit der Funktion `fileexist`, ob die Template-Datei korrekt erstellt wurde. `%assertText` vergleicht den Inhalt der generierten Datei mit einer Referenzdatei, die durch die Makrovariable `g_refdata` angegeben ist, um deren Konformität zu validieren.
Kopiert!
/* assert */
%assertLog(i_errors=0, i_warnings=0);
%assertEquals (i_actual =%sysfunc(fileexist(%sysfunc(pathname(WORK))/sasunit.scnlogconfig.xx.template.xml))
,i_expected=1
,i_desc =New scn log config template xml file must exist
);
%assertText (i_expected = &g_refdata./sasunit.scnlogconfig.xx.template.xml
,i_actual = %sysfunc(pathname(WORK))/sasunit.scnlogconfig.xx.template.xml
,i_desc = Scn-Log config template created correctly
);
/* end testcase */
%endTestcase()
,i_desc = Scn-Log config template created correctly
11
);
12
13
/* end testcase */
14
%endTestcase()
4 Codeblock
Fonction SYSCALL / Nettoyage
Erklärung : Dieser Block verwaltet die Bereinigung nach dem Test. Er definiert einen Fileref `fdel`, der auf die erstellte Template-Datei zeigt, und verwendet dann `%sysfunc(fdelete(fdel))`, um diese Datei zu löschen. `filename fdel clear;` gibt den Fileref frei. Die letzten Zeilen (`%mend testcase; %testcase; %endScenario();`) markieren das Ende des Testmakros und des globalen SASUnit-Szenarios.
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 2010-2023 HMS Analytical Software GmbH, http://www.analytical-software.de. This file is part of SASUnit, the Unit testing framework for SAS(R) programs. For copyright information and terms of usage under the GNU Lesser General Public License see included file README.md or https://github.com/HMS-Analytical-Software/SASUnit/wiki/readme/.
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.