簡體   English   中英

如何在使用 Mocha 運行的 Eclipse 中調試 Javascript 單元測試?

[英]How do I Debug a Javascript Unit Test in Eclipse that is Run with Mocha?

我可以使用以下命令運行我的Mocha/Unit.js單元測試:

mocha fooTest.js

我想在 Eclipse 中設置斷點並調試此單元測試,但我在 Eclipse 中只看到以下調試配置選項。

在此處輸入圖片說明

有沒有辦法在 Eclipse 的調試模式下執行 Mocha 單元測試?

我正在為 JavaScript 和 Web Developers Oxygen Release (4.7.0)使用Eclipse 也許我可以安裝一個插件,或者創建一個 node.js 調試配置並使其與 mocha 一起運行? 或者有沒有辦法在 IntelliJ IDE 中做到這一點?

它是一個兩步過程。 我假設您已經在 J​​avaScript 文件中放置了所需的斷點(如果您使用的是 TypeScript,請將斷點放置在已編譯的 JavaScript 文件中)。

編輯:這也適用於較新版本的 eclipse。

  1. 運行你的 mocha 測試
    1. 創建新的外部工具配置
    2. 位置設置為您的mocha.cmd路徑。 例如,如果您全局安裝 mocha,這將是path/to/node/mocha.cmd (在 Windows 中)。 如果您在本地安裝,那么它將在您的node_modules
    3. 工作目錄設置為工作區中的項目路徑。 例如${workspace_loc:/MyNodeProject}
    4. 參數中提供 mocha 套件路徑和節點的檢查器代理(又名調試)標志: inspect-brk inspect-brk標志很重要,因為它在用戶代碼開始之前中斷,使您的 mocha 測試中斷/停止,直到您附加調試器(第 2 步)。 例如dist/tests/_suite.js --inspect-brk (我使用的是 TypeSCript,所以我的測試在 dist 文件夾中)。
    5. 運行您的配置(單擊運行按鈕)。
    6. 您的 Eclipse 控制台應顯示類似於以下內容的消息:
     Debugger listening on ws://127.0.0.1:9229/229a0421-cc41-4202-ab46-a392e86418e3 For help, see: https://nodejs.org/en/docs/inspector
  2. 啟動 Wild Web Developers 檢查器客戶端。
    1. Debug Configurations下創建一個新的Running Node.js Application配置 菜單: Run -> Debug Configurations...
    2. 附加選項卡中,將地址端口設置為控制台中打印的值(從第一步開始)。 在這種情況下,地址:127.0.0.1(相當於本地主機)和端口:9229。這些是默認值,所以如果你沒有改變你的節點/摩卡配置,你應該使用相同的。
    3. 啟動調試會話(單擊調試按鈕)
    4. 您的 Eclipse 應該切換到調試透視圖並且您的測試代碼開始執行直到第一個斷點。

進行更改后,由於您已經擁有運行配置,您只需要啟動它們(順序無關緊要,因為檢查器客戶端調試配置將“無限期”運行,等待遠程應用程序連接)。

節點 10 的問題

根據這個問題,節點中存在一個錯誤,導致子進程的調試器失敗。 由於 mocha 在子進程中運行測試,如果您使用的是 Node 10,您將無法調試您的實際測試代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM