Informationen zu Einschränkungen in Bezug auf Prüfpunktnamen und Datenformate sowohl für die Methode VpManual als auch für die Methode VpDynamic finden Sie im Eintrag zu IFtVerificationPoint in der API-Referenz zu Functional Tester.
Manuelle Prüfpunkte sind nützlich, wenn Sie die Daten für den Prüfpunkt selbst erstellen und diese vergleichen möchten. Die Daten können beispielsweise das Ergebnis einer Berechnung sein oder aus einer externen Quelle stammen, z. B. einer Datenbank.
Objekte eines manuellen Prüfpunkts werden mit der Methode VpManual erstellt. Wenn Sie diese Methode aufrufen, stellen Sie die Daten bereit, bevor PerformTest ausgeführt wird. (Mit der Methode PerformTest werden die bereitgestellten Daten gespeichert, verglichen (wenn Basisdaten vorhanden sind) und die Ergebnisse ins Protokoll geschrieben.) Die Methode VpManual weist zwei Signaturen auf:
IFtVerificationPoint VpManual (ByVal VpName As String, ByVal _ Actual As Object) IFtVerificationPoint VpManual (ByVal VpName As String, ByVal _ Expected As Object, ByVal Actual As Object)
Bei der ersten Version von VpManual werden der Name des Prüfpunkts und die tatsächlichen Daten übernommen, die entweder mit vorhandenen Basisdaten verglichen oder zum Erstellen von Basisdaten verwendet werden, sofern diese noch nicht vorhanden sind. Dieser Wert kann null sein. VpName muss in Bezug auf das Script eindeutig sein. Beispiel:
VpManual ("manual1", "The rain in Spain").PerformTest()
Bei der zweiten Version dieser Methode wird ein Parameter für den Vergleich der erwarteten Daten mit den tatsächlichen Daten hinzugefügt. Die erwarteten oder die tatsächlichen Daten können einen Nullwert aufweisen. Beispiel:
VpManual ("manual1", "The rain in Spain", _ "The Rain in Spain").PerformTest()
In diesem Beispiel stimmen die Daten nicht überein. Mit der Methode PerformTest würde in diesem Fall eine Nachricht über einen Prüfpunktfehler im Protokoll aufgezeichnet werden.
Dynamische Prüfpunkte sind besonders nützlich, wenn das Testobjekt (TestObject) nicht zugeordnet ist und es sich nicht um ein Objekt handelt, das normalerweise von Functional Tester getestet wird, z. B. ein Objekt, das nicht Teil der getesteten Anwendung ist.
Mit der Methode VpDynamic werden dynamische Prüfpunkte erstellt. Durch dynamische Prüfpunkte wird bei der nächsten Wiedergabe des Scripts die entsprechende Benutzerschnittstelle aufgerufen. Der Benutzer kann Prüfpunktdaten zum Testen eines Objekts einfügen, das im Script angegeben ist. Auf diese Weise muss der Benutzer den Test nicht manuell bis zum entsprechenden Status ausführen, bevor der Prüfpunkt aufgezeichnet wird. Die Methode vpDynamic weist zwei Signaturen auf:
IFtVerificationPoint VpDynamic (ByVal VpName As String) IFtVerificationPoint VpDynamic (ByVal VpName As String, By Val _ ObjectTestObject As TestObject)
Bei der ersten Version der Methode VpDynamic ist ein (in Bezug auf das Script) eindeutiger Prüfpunktname erforderlich. Der Assistent für Prüfpunkt und Aktion wird bei der nächsten Wiedergabe des Scripts aufgerufen. Der Benutzer gibt das Testobjekt (TestObject) und die Basisdaten für nochmalige Tests bei nachfolgenden Ausführungen an. Das Script muss im Dialogmodus ausgeführt werden. Beispiel:
VpDynamic ("dynamic1").performTest()
Bei der anderen Version der Methode vpDynamic ist die Angabe des Testobjekts erforderlich. Beispiel:
VpDynamic ("dynamic1", Pagetablelist()).PerformTest()
Eine geänderte Benutzerschnittstelle, in der die TestObject-Hierarchie nicht angegeben ist, wird bei der ersten Wiedergabe zur Angabe von Basisdatenwerten angezeigt. Das angegebene Testobjekt (TestObject) muss zwar nicht in der Testobjektübersicht enthalten sein, aber es muss durchgängig dasselbe Objekt verwendet werden, damit die Ergebnisse aussagekräftig sind.
Ein häufiger Fehler bei der Verwendung dieser Methoden ist das Auslassen der Methode PerformTest. Dies ist zwar zulässig, und bei der Kompilierung wird auch keine Warnung ausgegeben, allerdings werden dann bei der Ausführung des Scripts keine relevanten Aktionen ausgelöst. Beispiel:
VpDynamic("test1", Pagetablelist()) ' ERROR. Nothing happens.