Benutzerdefinierte APIs testen

In Oracle Mobile Hub können Sie benutzerdefinierte APIs testen, bevor sie mit Pseudodaten bereitgestellt werden. Sie können Ihre REST-Connectors auch mit der Testseite testen, die zwei Modi unterstützt: Standardtests und Erweiterter Test.

Benutzerdefinierte Oracle Mobile Hub-API testen

So testen Sie Ihre benutzerdefinierte API direkt aus Oracle Mobile Hub:

  1. Melden Sie sich bei Oracle Mobile Hub an.
  2. Klicken Sie auf das Menüsymbol, blenden Sie Entwicklung ein, und klicken Sie auf Backends.
  3. Wählen Sie Ihr mobiles Backend, und klicken Sie auf Öffnen.
  4. Klicken Sie in der linken Navigationsleiste auf Einstellungen.
  5. Kopieren Sie die URL aus dem SSO-Tokenendpunkt unter Umgebungs-URLs.
  6. Fügen Sie die kopierte URL in ein Webbrowserfenster ein, drücken Sie jedoch nicht die Eingabetaste.
  7. Kopieren Sie die Client-ID im Abschnitt "OAuth-Consumer".
  8. Fügen Sie einen Abfragezeichenfolgeparameter zu der Endpunkt-URL des SSO-Tokens hinzu, die Sie in den Webbrowser im Format?clientID=[YourClientID] eingefügt haben, und drücken Sie dann die Eingabetaste. Ein Beispiel für die URL sieht wie folgt aus:
    https://<YourSSOTokenEndpointURL>?clientID=<yourClientID>
    Der Browser zeigt ein Single Sign-On OAuth-Token an.
  9. Klicken Sie im mobilen Backend-Fenster auf die Seite "APIs" in der linken Navigation. Der Browser ändert sich von der Seite "Einstellungen " zur Seite "APIs ".
  10. Klicken Sie auf APIs auswählen.
  11. Klicken Sie auf den API-Namen, den Sie testen möchten. Eine neue Seite wird geöffnet, die die API-Endpunkte in der linken Navigation sowie die Registerkarten "Anforderung " und "Antwort " enthält.
  12. Klicken Sie auf den Endpunkt, den Sie testen möchten.
  13. Wählen Sie im Abschnitt Authentifizierung die Option Single Sign-On-Token aus der Authentifizierungsmethode aus.
  14. Kopieren Sie Ihr SSO OAuth-Token, und fügen Sie es in das Feld Single Sign-On-Token ein.
  15. Klicken Sie auf Endpunkt testen. Wenn alles korrekt ist, antwortet der Server mit dem Status 200, und Sie sollten die JSON-Daten in der Antwort sehen.

API-Endpunkte mit Mock-Daten testen

Sie können während der Entwurfsphase der API-Konfiguration Pseudodaten in Ihren Anforderungs- und Antwortnachrichtenboden bereitstellen. Dadurch können Sie den Kontext jedes Aufrufs untersuchen, ohne Echtzeitdaten verwenden oder mit einem Echtzeitservice kommunizieren zu müssen. Beispiel: Um zu testen, ob der Code eine ungültige ID richtig verarbeitet, können Sie ein Beispiel im Anforderungstext mit Pseudodaten hinzufügen, die eine ungültige ID enthalten. Wenn Sie den Test beenden, können Sie das Beispiel durch anderen Code ersetzen, um einen anderen Aspekt der Methode zu testen.

Im FixItFast-Beispiel können Sie anhand der Pseudodaten im Antworttext prüfen, ob die korrekten Kundeninformationen zurückgegeben werden. Im Folgenden finden Sie ein Beispiel für Mock-Daten, die der Serviceentwickler für den Antworttext des POST-Vorgangs der Ressource contact im FixItFast-Beispiel erstellen kann:
{
 "id": 20934,
 "title": "Lynn's Leaking Water Heater",
       "contact": {
       "name": "Lynn Adams",
       "street": "45 O'Connor Street",
       "city": "Ottawa",
       "postalcode": "ala1a1"
       "username":"johneta"
       }
 "status": "new",
 "driveTime": 30,
 "priority": "high",
 "createdon": "2015-04-23 18:12:03 EDT"
}

Wenn Sie eine benutzerdefinierte API erstellen, wird automatisch eine Pseudoimplementierung erstellt. Mit der Pseudoimplementierung können Sie die API aus Ihrer mobilen Anwendung aufrufen, bevor Sie den benutzerdefinierten Code implementieren. Dadurch können Sie die mobilen Anwendungen und den benutzerdefinierten Code gleichzeitig entwickeln und testen. Wenn Sie mit der Konfiguration zufrieden sind, können Sie eine echte Implementierung hinzufügen.

Bis Sie die erste Implementierung erstellen, ist die Standardimplementierung die Pseudoimplementierung. Nachdem Sie eine echte Implementierung erstellt haben, wird diese zur Standardimplementierung für die API.

Klicken Sie auf den Navigationslink "Implementierungen ", um eine Implementierung hochzuladen oder vorhandene Implementierungen anzuzeigen. Sie können die Standardimplementierung auf der Seite "Implementierungen" ändern. Nachdem Sie eine Implementierung hochgeladen haben, wird eine Liste der vorhandenen Implementierungen angezeigt, die die Pseudoimplementierung umfasst.

REST Connector-API testen

Nachdem Sie Ihre REST Connector-API definiert und die Konfiguration gespeichert haben, möchten Sie prüfen, ob Sie eine Anforderung senden und die erwarteten Ergebnisse vom Webservice erhalten können. Das Testen einer Verbindung ist ein optionaler Schritt. Sie können jedoch Zeit sparen, indem Sie jetzt Probleme identifizieren und beheben, bevor Sie die Connector-API abschließen. Auf der Testseite können Sie jeweils einen Endpunkt testen.

Wenn Sie einen Deskriptor angegeben haben, stehen Ihnen zwei Testmodi zur Auswahl:

  • Standardtests

    Wenn Sie Deskriptor-Metadaten angegeben haben, wird der Standardtestmodus angezeigt, in dem die Anforderungs- und Antworttexte aus den beschreibenden Metadaten generiert und in den Registerkarten "Anforderung " und "Antwort " angezeigt werden. Dazu müssen Sie die Parameter wählen, mit denen die GET-Methoden getestet werden sollen, und die HTTP-Header aufnehmen, mit denen Sie testen möchten.

  • Erweiterte Tests

    Sie können Ihre Tests im erweiterten Modus anpassen (der Testmodus, den Sie eingeben, wenn Sie eine URL für einen Remote-Service angegeben haben). Ohne beschreibende Metadaten wählen Sie die zu testende Methode und Ressource, nehmen die HTTP-Header auf, die Sie aufnehmen möchten, und erstellen den JSON-Body manuell.

Test im erweiterten Modus

Auf der erweiterten Testseite können Sie die Pfadparameter manuell festlegen, Header hinzufügen sowie die Anforderungs- und Antwort-Payloads.

So konfigurieren Sie einen Connector-Test manuell:

  1. Klicken Sie auf den Navigationslink Testen.
  2. Wenn Sie einen Deskriptor angegeben haben, setzen Sie Test im erweiterten Modus auf On.

    Die erweiterte Testseite wird automatisch angezeigt, wenn Sie eine Remote-Service-URL angegeben haben.

  3. Wählen Sie die HTTP-Methode, die Sie testen möchten, aus der Dropdown-Liste.
  4. Geben Sie bei Bedarf Ressourcenpfadparameter im Feld Lokale URI für Testzwecke an. Beispiel:
    directions/json?origin=los+angeles&destination=seattle

    Dem Feld wird automatisch der lokale URI vorangestellt, den Sie bei der Eingabe eines API-Namens definiert haben. Im folgenden Beispiel würde der vollständige Inhalt des Feldes wie folgt aussehen:

    myMapAPI /directions/json?origin=los+angeles&destination=seattle

    Wenn Sie Regeln definiert haben, werden im Feld Angewendete Regeln (unter dem Feld Hauptteil) Zahlen angezeigt, die den Regeln entsprechen, die für den ausgewählten Vorgang anwendbar sind. Im Feld "Remote-URL" wird die genaue Zeichenfolge angezeigt, die für den Test an den Service übergeben wird.

  5. Fügen Sie mindestens einen Anforderungs- oder Antwort-HTTP-Header nach Bedarf hinzu.

    Diese Header dienen nur Testzwecken und werden nicht zur Konfiguration der REST Connector API hinzugefügt.

  6. Klicken Sie in das Feld HTTP-Text, um den Nachrichtentext (die Payload) im Quelleditor zu erstellen.
    Beispiel:
    {
      "status":"ZERO_RESULTS",
      "routes":[ ]
    }

    Behalten Sie den Inhalt des Nachrichtentextes bei, der für den Connector relevant ist, d.h. rechnen Sie die Nachricht nicht um, indem Sie überflüssige Daten hinzufügen. Die Aufnahme nur relevanter Daten im Nachrichtentext erleichtert die schnelle Übertragung der Anforderung oder Antwort.

  7. Wenn für den Service, mit dem Sie eine Verbindung herstellen, eine Authentifizierung erforderlich ist, öffnen Sie den Abschnitt "Authentifizierung ", und geben Sie Ihre mobilen Benutzerzugangsdaten für jede getestete Methode ein. Wenn Sie Standardtestzugangsdaten verwenden, können Sie diesen Schritt überspringen.

    Bei SAML-basierten Sicherheits-Policys wird die Identität des Benutzers, der den Aufruf ausführt, an den externen Service propagiert. Bei anderen Sicherheits-Policys wie dem Token für die HTTP-Basisauthentifizierung und den Benutzernamen werden die Zugangsdaten zur Authentifizierung mit dem externen Service in den Policy als CSF-Schlüssel angegeben. Je nach dem definierten Vorgang müssen Sie möglicherweise bestimmte Zugangsdaten für jeden Vorgang eingeben, oder Sie können ein Zugangsdatenset für alle Methoden verwenden, um den Connector mit dem Service zu authentifizieren.

  8. Klicken Sie auf Als aktuelle Standardzugangsdaten für das mobile Backend speichern, um den Benutzernamen und das Kennwort zu speichern, die Sie als Standard angeben.
  9. Wenn Sie sich in der Entwurfsphase zum Erstellen des Connectors befinden und nur sehen möchten, ob die Endpunkte gültig sind, klicken Sie auf Standard-API-Designer Testzugangsdaten, und wählen Sie ein mobiles Backend, mit dem Sie registriert sind, sowie die Versionsnummer.
    Optional können Sie auch Ihre mobilen Benutzerzugangsdaten (Benutzername und Kennwort) eingeben.

    Diese Standardtestzugangsdaten sind über alle Methoden hinweg persistent, die Sie testen. Sie bleiben während der aktuellen Mobile Cloud-Session gültig.

  10. Klicken Sie auf Endpunkt testen.

    Testendpunkt wechselt zum Abbruch des Tests, wenn Sie darauf klicken. Wenn Sie den Test aus irgendeinem Grund stoppen möchten, klicken Sie auf Test abbrechen.

    Klicken Sie auf Zurücksetzen, um die Felder zu löschen und die Testparameter zu ändern.

  11. Klicken Sie auf Fertig, wenn Sie die Endpunkte getestet haben.