2015-03-22 4 views

Antwort

1

Leider gibt es dort keine SNS-Implementierung, die lokal ausgeführt wird. Daher müssen Sie Ihre Tests mit einem Dienstprogramm wie Mockito durchführen.

3

Nein, derzeit bietet AWS keine Möglichkeit, SNS lokal auszuführen. Es gibt jedoch einige Dinge, die wir tun können, um sicherzustellen, dass unsere Anwendung eine gute Testabdeckung bietet.

Drei Dinge, die ich gefunden habe

  1. Integration Konto
  2. Mocks
  3. FakeSNS

Amazon bietet keine Sandbox-Bereich zum Testen von Anwendungen gegen. Es gibt jedoch nichts, was uns davon abhält, Ereignisse gegen eine Integrationsschicht zu registrieren. Registrieren Sie ein Thema bei AWS, namens "NewAccountEvent-Dev", und geben Sie dieses Thema für Integrationstests an. Dadurch wird sichergestellt, dass die Anwendung Anforderungen an AWS ordnungsgemäß erstellt.

Mit Mocks testen Sie nicht, wenn AWS seine Spezifikationen erfüllt; Sie testen, ob Ihre Anwendung korrekt auf die von SNS erzeugten Antworten reagiert. Sie werden die Antworten manuell einrichten und beginnen, Ihre Tests gegen einen gefälschten HTTP-Dienst zu schreiben. Es gibt viele Tools, die Ihnen dabei helfen. Sprache & Framework wird Ihnen helfen, zu entscheiden, was Sie verwenden sollten.

Ich habe diesen Service nie selbst benutzt, aber ich bin auf FakeSNS gestolpert. Wenn Sie eine Anwendung schreiben, die stark in SNS integriert ist. dh. Löschen, Erstellen, Umgang mit Berechtigungen usw. Dieses Projekt wäre ein guter Blick auf. Im Moment scheint es nicht viel GitHub-Aktivität zu geben.

+0

Eine weitere gefälschte SNS-Implementierung: [https://github.com/s12v/sns](https://github.com/s12v/sns) – Sergey

0

Eine weitere gute gefälschte implemnetation von SNS ist https://bitbucket.org/atlassian/localstack

Localstack mehrere gefälschte Implementierungen von amazon aws Dienste zur Verfügung stellt. Ich benutze es, um die vollständige sns/sqs Kommunikation lokal und auf CI zu testen. Funktioniert perfekt.

Verwandte Themen