Testfälle
Ein Testfall beschreibt eine elementare Funktionalität, welche getestet werden soll. Er hat eine Beschreibung und eine Voraussetzung. Die Voraussetzung ist eine Bedingung, die erfüllt sein muss, damit der Testfall ausgeführt werden kann. Die Schritte zum Ausführen werden auch mitgegeben, damit es zu keinen Missverständnissen kommt. Aus diesem Grund müssen diese Schritte exakt ausgeführt werden.
Hier werden alle Testfälle, welche in diesem Projekt getestet werden müssen, festgehalten. Am Ende der Seite befindet sich ein Protokoll der Resultate.
Sobald ein Commit in den main Branche betätigt wird, werden automatisch alle Unittest's ausgeführt. Über diesen Link kann der Status der Tests abgerufen werden. Die folgenden Testfälle werden im Verlauf des Projektes mithilfe von Unit Tests automatisch getestet.
Abfragen
Wenn in den Testfällen von Abfragen geschrieben wird, solange nichts anderes angemerkt wurde, ist der GraphQL Endpunkt /graphiql
mit dem UI gemeint.
Allgemeine Testfälle
Testfall A-001
ID/Bezeichnung
A-001
Beschreibung
Nutzer kann eine Person abfragen
Testvoraussetzung
API-Key ist notwendig
Testschritte
Person, welche auf beiden Plattformen gleich heisst ohne Filter abfragen
Erwartetes Ergebnis
Es wird von Instagram und Twitter die Posts gesucht
Testfall A-002
ID/Bezeichnung
A-002
Beschreibung
Es werden nur die abgefragten Daten übermittelt (GraphQL)
Testvoraussetzung
API-Key ist notwendig
Testschritte
Nur Benutzername und Anzahl Follower abfragen
Erwartetes Ergebnis
Es wird nur der Benutzername und die Anzahl Follower übermittelt
Testfall A-003
ID/Bezeichnung
A-003
Beschreibung
Nutzer kann Anzahl Posts einschränken
Testvoraussetzung
API-Key ist notwendig
Testschritte
Beim Abfragen ein Limit mitgeben
Erwartetes Ergebnis
Es wird nur die geforderte Anzahl abgefragt oder alle die zur Verfügung Stehen
API-Key
Testfall K-001
ID/Bezeichnung
K-001
Beschreibung
Nutzer kann einen API-Key erstellen
Testvoraussetzung
Bisher noch keinen API-Key erstellt
Testschritte
Post Anfrage an Endpunkt /auth/generate
senden mit Instagram Benutzernamen & Password
Erwartetes Ergebnis
Logindaten werden gespeichert & Schlüssel zurückgegeben
Testfall K-002
ID/Bezeichnung
K-002
Beschreibung
Nutzer kann seinen API-Key erneut generieren
Testvoraussetzung
API-Key existiert
Testschritte
Put Anfrage an Endpunkt /auth/generate
senden mit dem API-Key und Instagram Benutzernamen & Password
Erwartetes Ergebnis
Alter Key wird gelöscht und Neuer wird zurückgegeben. Cookies bleiben bestehen
Testfall K-003
ID/Bezeichnung
K-003
Beschreibung
Nutzer kann seinen API-Key löschen
Testvoraussetzung
API-Key existiert und Nutzer ist authentifiziert
Testschritte
Delete Anfrage an Endpunkt /auth/delete
senden mit dem API-Key
Erwartetes Ergebnis
Key und Cookies werden gelöscht
Testfall K-004
ID/Bezeichnung
K-004
Beschreibung
Anmeldedaten werden validiert
Testvoraussetzung
Es besteht noch kein Konto
Testschritte
Neues Konto mit ungültigen Daten erstellen
Erwartetes Ergebnis
Es wird ein Fehler ausgegeben, dass die Eingabe nicht stimmt
Testfall K-005
ID/Bezeichnung
K-005
Beschreibung
Ohne API-Key werden keine Abfragen gemacht
Testvoraussetzung
keinen API-Key
Testschritte
Abfrage ohne API-Key betätigen
Erwartetes Ergebnis
Bei ungültigem API-Key wird keine Abfrage betätigt
Testfall T-001
ID/Bezeichnung
T-001
Beschreibung
Nutzer kann Suche auf nur Twitter einschränken
Testvoraussetzung
API-Key ist notwendig
Testschritte
Person abfragen mit Filter auf Plattform Twitter
Erwartetes Ergebnis
Es wird nur Twitter abgefragt
Testfall T-002
ID/Bezeichnung
T-002
Beschreibung
Das Abfragelimit wird nicht überschritten
Testvoraussetzung
API-Key ist notwendig
Testschritte
Person abfragen bis limit überschritten
Erwartetes Ergebnis
Eine Timeoutmeldung wird angezeigt und keine Abfragen werden betätigt
Instagram
Testfall I-001
ID/Bezeichnung
I-001
Beschreibung
Nutzer kann Suche auf nur Instagram einschränken
Testvoraussetzung
API-Key ist notwendig
Testschritte
Person abfragen mit Filter auf Plattform Instagram
Erwartetes Ergebnis
Es wird nur Instagram abgefragt
Testfall I-002
ID/Bezeichnung
I-002
Beschreibung
Das Abfragelimit (900 alle 15 Minuten) wird nicht überschritten
Testvoraussetzung
API-Key ist notwendig
Testschritte
Person abfragen bis limit überschritten
Erwartetes Ergebnis
Eine Timeoutmeldung wird angezeigt und keine Abfragen werden betätigt
Testprotokoll
Allgemeine Testfälle
ID
Status
Testdatum
Tester
Bemerkung
A-001
✔️
08.06.2022
M.Schumacher
Nur von einer Plattform gleichzeitig
A-002
✔️
08.06.2022
M.Schumacher
A-003
✔️
08.06.2022
M.Schumacher
Max unterschiedlich, Twitter Min: 10
API-Keys
ID
Status
Testdatum
Tester
Bemerkung
K-001
✔️
06.06.2022
M.Schumacher
Instagram Benutzername darf nicht bereits verwendet werden
K-002
✔️
08.06.2022
M.Schumacher
K-003
✔️
08.06.2022
M.Schumacher
K-004
✔️
05.06.2022
M.Schumacher
K-005
✔️
08.06.2022
M.Schumacher
ID
Status
Testdatum
Tester
Bemerkung
T-001
✔️
08.06.2022
M.Schumacher
T-002
✔️
00.06.2022
M.Schumacher
Globales limit (nicht Account abhängig)
Instagram
ID
Status
Testdatum
Tester
Bemerkung
I-001
✔️
00.06.2022
M.Schumacher
I-002
✔️
00.06.2022
M.Schumacher
Limit ist Account abhängig