Autor Thema: OKAPI-Test-User für automatisierte Tests?  (Gelesen 419 mal)

Offline Samsung1

  • Micro
  • ***
  • Beiträge: 115
OKAPI-Test-User für automatisierte Tests?
« am: 03. April 2017, 00:46:00 »
Moin. Ich würde gerne automatisierte Tests für die Kommunikation von cmanager und OKAPI schreiben. Problematisch ist da gerade für mich das Anfordern eines OKAPI-Tokens. Gibt es da zufällig schon einen Test-User, der immer die gleiche PIN hat? :)

Offline teiling88

  • Moderator
  • Micro
  • *****
  • Beiträge: 445
  • OC Team Entwicklung
Re: OKAPI-Test-User für automatisierte Tests?
« Antwort #1 am: 03. April 2017, 13:44:48 »
Moin. Ich würde gerne automatisierte Tests für die Kommunikation von cmanager und OKAPI schreiben.

Automatisierte Tests <3 :-)

Problematisch ist da gerade für mich das Anfordern eines OKAPI-Tokens. Gibt es da zufällig schon einen Test-User, der immer die gleiche PIN hat? :)

Von mir aus kannst Du gerne einen festen API Benutzer für deine Tests anlegen. Einen Test-User gibt es aktuell nicht.

Offline Samsung1

  • Micro
  • ***
  • Beiträge: 115
Re: OKAPI-Test-User für automatisierte Tests?
« Antwort #2 am: 03. April 2017, 22:25:27 »
Hm. Mit der aktuellen API müsste ich mir halt entweder einen kleinen Browser-Simulator zurecht schustern, oder die PIN per Hand auslesen. Ist beides nicht so total attraktiv. Daher mein Vorschlag, die PIN für einen Test-User zu fixieren. Wie klingt das?

Edit: Der Ist-Zustand bei cmanager ist halt aktuell ein manueller (8)) Test. Den führe ich dann alle Jubeljahre mal durch oder es beschwert sich ein User, wenn es nicht geht. Würde ich gerne ändern :D.
« Letzte Änderung: 03. April 2017, 22:30:54 von Samsung1 »

Offline teiling88

  • Moderator
  • Micro
  • *****
  • Beiträge: 445
  • OC Team Entwicklung
Re: OKAPI-Test-User für automatisierte Tests?
« Antwort #3 am: 05. April 2017, 22:57:52 »
Hm. Mit der aktuellen API müsste ich mir halt entweder einen kleinen Browser-Simulator zurecht schustern, oder die PIN per Hand auslesen. Ist beides nicht so total attraktiv. Daher mein Vorschlag, die PIN für einen Test-User zu fixieren. Wie klingt das?

Du registrierst dich aktuell via: https://www.opencaching.de/okapi/signup.html <-- stimmt das?

Offline Samsung1

  • Micro
  • ***
  • Beiträge: 115
Re: OKAPI-Test-User für automatisierte Tests?
« Antwort #4 am: 05. April 2017, 23:31:10 »
Du registrierst dich aktuell via: https://www.opencaching.de/okapi/signup.html <-- stimmt das?
Korrigiere mich, wenn ich falsch liege, aber: Der Schritt ist ja einmalig für die Anwendung. Der hat einen privaten Anwendungs-Schlüssel geliefert, den ich jetzt immer mit einkompiliere. Das entspricht OKAPI Level 1 und 2.

Problematisch werden Anfragen mit OKAPI Level 3. Anfragen mit diesem Level sind z.B. das Posten eines Logs, das Auslesen des Benutzernamens oder das Abfragen des Fundstatus eines Caches. Anfragen mit Level 3 sind das Herz der Log-Synchronisation durch den cmanager. Das Anfordern der Level 3 Benutzerauthentisierung mache ich wie folgt: https://github.com/RoffelKartoffel/cmanager/blob/master/src/cmanager/okapi/OKAPI.java#L264 . Der springende Punkt hier ist, dass der Benutzer die PIN im cmanager eingeben muss, die ihm die opencaching.de-Webseite anzeigt. Für die OAuth Geschichten verwende ich https://github.com/scribejava/scribejava als Bibliothek.

Offline Samsung1

  • Micro
  • ***
  • Beiträge: 115
Re: OKAPI-Test-User für automatisierte Tests?
« Antwort #5 am: 26. April 2017, 20:14:38 »
Ein kurzes Update, um das hier für andere mit dem selben Problem zu verewigen: Nach einigem Hin und Her habe ich mich jetzt doch zu einem Test-Client entschieden, der mit der OC-Webseite spricht. Dieser Ansatz war der für mich am einfachsten realisierbare :).
Siehe https://github.com/RoffelKartoffel/cmanager/blob/master/test/cmanager/okapi/helper/TestClient.java .