Ich plane eine Apigility-gesteuerte RESTful Zend Framework 2-Anwendung. Für Komponententests und wahrscheinlich auch für Datenbanktests wird PHPUnit verwendet. Jetzt bin ich dabei, funktionales Tesgin für die Anwendung zu definieren.Wie gestalte ich Funktionstests in einer RESTful ZF2-Anwendung?
"Funktionsprüfung" bedeutet für mich das Testen der realen Funktionalität. Es wird auch ein Integrationstestaspekt gegeben, da die Anwendung dann "intermodular" getestet wird, so dass es ein Testen über die Einheiten/Module hinweg ist. (Ist mein Verständnis der Funktionstests korrekt?)
Für diese Prüfung wird echte Anfrage gesendet und die Antworten mit den Erwartungen verglichen. Mit den Schreibanforderungen könnte es ein bisschen komplexer sein, aber um es einfach zu halten, betrachten wir zuerst den GET
Fall. (rechts?)
Zu diesem Zweck scheint die Verwendung von Verhaltenstests Sinn zu machen. (Eigentlich einfach ich keine andere geeignete Ansätze sehen.) (rechts?)
Wenn einer meiner logischen Schritte falsch ist, kann man mich korrigieren.
Welche Verhaltenstests können im Zusammenhang mit einer RESTful PHP (ZF2) -Anwendung verwendet werden? PHPUnit Story Extension? behat? phpspec? Andere Rahmenbedingungen? Oder vielleicht direkte Tests über PHPUnit (Definieren einer separaten Testsuite und Ausführen von Verhaltenstests mit API-Aufrufen in den Testklassen)?
Oder ist das alles falsch und der Funktionstest benötigt einen völlig anderen Ansatz?
ich wähle diese Frage als Wegthema zu schließen, weil es Danke mehr geeignet über bei http://programmers.stackexchange.com/ –
scheint für Ihren Kommentar. Ich denke, diese Frage könnte tatsächlich auf programmers.stackexchange gepostet werden.com, aber dieser Ort ist auch korrekt. Aber egal, auch wenn nicht, würde ich nicht schließen, sondern einfach zu programmers.stackexchange.com verschieben. – automatix
Es ist besser geeignet für Programmierer.SE, weil es in diesem Stadium eher konzeptionell ist als "Ich habe diesen Code, wie würde ich diesen Fehler beheben". Fühlen Sie sich frei zu c & p zu programmers.SE und löschen Sie dieses ':)' –