2017-02-16 2 views
1

Ich führe einige Komponententests mit Codeception durch. Insbesondere teste ich eine API, und einer der Testschritte schlägt fehl. Ich weiß, welcher Schritt es ist, kann aber nicht herausfinden, warum ich so in meinen Code einsteigen will, wie er durch den Komponententest ausgeführt wird.Wie gehe ich mit Codeception in PHPStorm in meinen Code (nicht den Testcode)?

Ich habe versucht Einstellung "Break in der ersten Zeile in PHP-Skripts", ich habe den Test selbst debugged, ich habe versucht, auf die Konsole schreiben, aber es gibt eine Menge zu verengen. Gibt es eine Möglichkeit, in meinen Code einzutauchen, als ob ich normales Debugging durchgeführt hätte?

+0

Ich bin nicht mit Codeception vertraut, aber es simuliert Anfragen? Wenn ich meine API mit etwas anderem debugge, funktioniert es normalerweise, '? XDEBUG_SESSION_START = PHPSTORM' zu der Abfragezeichenkette hinzuzufügen, Sie könnten versuchen, das in Ihren Anforderungen von den Tests zu setzen. – mickadoo

+0

Die von meinem Komponententest aufgerufene Methode ist 'sendPOST (...)', der ich Parameter hinzufügen kann. Ich werde diesen Parameter hinzufügen und sehen, was passiert. Wenn nicht, kann ich dasselbe bei Postman testen und sehen, wie es mir geht. – Brandon

+1

Das hat wie ein Zauber funktioniert. Bitte als Antwort hinzufügen, damit ich dich richtig markieren kann. – Brandon

Antwort

2

Beim Debuggen einer API, bei der die Anfrage von einer externen Quelle kommt (ohne einen Prozess innerhalb von PHPStorm zu starten), können Sie immer ?XDEBUG_SESSION_START=PHPSTORM zu der Abfragezeichenfolge hinzufügen, die den Debugger starten soll.

Wenn es nicht funktioniert, setze es in der ersten Zeile des Skripts und gehe durch. Wenn es nicht mit der Abfragezeichenfolge funktioniert, liegt es meistens daran, dass die richtigen Pfadzuordnungen nicht eingerichtet sind, die Sie über die Einstellungen> Server vornehmen können.

Für alle anderen, die dies betrachten, wie @Brandon in den Kommentaren erwähnt, sollten Sie als erstes sicher sein, dass Sie xdebug installiert und konfiguriert haben.

+0

Der andere Hinweis hier ist, um sicherzustellen, dass Sie auch XDebug installiert und konfiguriert haben – Brandon

+0

danke, hinzugefügt, dass für alle anderen mit dem gleichen Problem. – mickadoo

Verwandte Themen