2017-07-27 2 views
4

Ich schreibe eine Bibliothek, die die Google Mail-API verwendet. So ziemlich jede Funktion muss sich mit der Google Mail-API verbinden und ordnungsgemäß funktionieren, um authentifizieren zu können.Wie schreiben Sie Tests für eine Bibliothek, die eine Verbindung zu einem autorisierten Konto herstellt?

Zum Beispiel hat diese Bibliothek die Möglichkeit, E-Mail-Etiketten zu ändern, um es zu testen, konnte ich ein Dummy-Konto erstellen, Anmeldeinformationen erhalten und "Test-E-Mails" in einem Posteingang, ändern Sie ihre Bezeichnungen und überprüfen Sie zu sehen Wenn sie ordnungsgemäß geändert wurden, aber wie würde ein Drittanbieter dieses Google Mail-Konto verwenden, um die Komponententests durchzuführen? Um sie zu nutzen, müssten sie Zugriff auf das Konto haben, damit sie E-Mail-Labels (und andere Dinge) ändern und meine Komponententests ungültig machen könnten.

Eine andere Idee, die ich hatte war, eine Charge von Test-E-Mails on-the-fly zu generieren und dann, wenn die Tests abgeschlossen waren, löschen Sie alle Spuren von ihnen. Auf diese Weise könnte jede dritte Partei, die die Tests ausführt, nur ihre eigenen Testkonten verwenden.

Ich frage mich nur, ob es eine Standardmethode gibt, dies zu tun.

Antwort

4

Die beste Vorgehensweise besteht darin, alle externen Abhängigkeiten "nachzuahmen" oder zu fälschen. Zum Beispiel sollten alle Aufrufe der Google Mail-API an eine gefälschte Schnittstelle gerichtet sein. Sie testen nur, dass die API mit den richtigen Argumenten aufgerufen wurde ... Es gibt eine Menge Bibliotheken, um die Mocks zu machen ....

Verwandte Themen