2017-02-16 20 views
1

我正在使用Codeception運行一些單元測試。具體來說,我正在測試一個API,其中一個測試步驟失敗。我知道它是哪一步,但無法弄清楚爲什麼所以我想在單元測試執行時插入我的代碼。如何在PhpStorm中使用Codeception進入我的代碼(而不是測試代碼)?

我試過設置「在PHP腳本的第一行中斷」,我已經調試了測試本身,我試過寫入控制檯,但有很多要縮小範圍。有沒有辦法像我正常調試一樣進入我的代碼?

+0

我對代碼不熟悉,但它模擬請求?當我使用其他方法調試我的API時,它通常會將'?XDEBUG_SESSION_START = PHPSTORM'添加到查詢字符串中,您可以嘗試將它放在測試請求中。 – mickadoo

+0

從我的單元測試中調用的方法是'sendPOST(...)',我可以添加參數。我將添加該參數並查看會發生什麼。如果沒有,我可以在郵差測試中看到同樣的東西,看看我如何繼續。 – Brandon

+1

這就像一個魅力。請添加爲答案,以便我可以標記爲正確的。 – Brandon

回答

2

當調試請求來自外部源的API(而不是從PhpStorm內部啓動進程)時,您總是可以將?XDEBUG_SESSION_START=PHPSTORM添加到應該啓動調試器的查詢字符串中。

如果不起作用,請將其設置爲從腳本的第一行開始並逐步完成。如果它不適用於查詢字符串,那麼最常見的原因是我沒有設置正確的路徑映射,您可以從設置>服務器進行設置。

對於其他人來說,正如@Brandon在評論中提到的,你應該確定的第一件事是你已經安裝並配置了xdebug。

+0

這裏的另一個注意事項是確保您還安裝了XDebug並配置了 – Brandon

+0

謝謝,並補充說,對於任何其他人都有同樣的問題。 – mickadoo