在 VS Code 中運(yùn)行 pytest_hello_world.py 更便捷,支持圖形化操作、斷點(diǎn)調(diào)試和結(jié)果可視化,步驟如下(含環(huán)境配置、運(yùn)行方式、調(diào)試技巧):
一、前置準(zhǔn)備:VS Code 安裝必要插件
首先確保安裝 Python 相關(guān)插件(核心支持 pytest 運(yùn)行):
- 打開 VS Code → 左側(cè)「擴(kuò)展」(快捷鍵
Ctrl+Shift+X/Cmd+Shift+X)。 - 搜索并安裝以下插件:
- Python (微軟官方插件,必備,支持 Python 代碼解析、運(yùn)行和調(diào)試)。
- Pytest Explorer (可選,可視化管理測試用例,點(diǎn)擊即可運(yùn)行,推薦新手)。
二、核心步驟:在 VS Code 中運(yùn)行 pytest 用例
假設(shè)已編寫 pytest_hello_world.py(參考上一輪的測試代碼),且 VS Code 已打開該文件所在的「工作區(qū)」(重要!需將文件所在文件夾添加到 VS Code 工作區(qū),否則可能識別不到用例)。
方式 1:直接在終端運(yùn)行(和命令行一致,最靈活)
VS Code 內(nèi)置終端,無需切換窗口,直接執(zhí)行命令:
- 打開終端:頂部菜單欄 →「終端」→「新建終端」(快捷鍵
Ctrl+`` /Cmd+``)。 - 確保終端的「環(huán)境正確」:
- 運(yùn)行命令(和之前一致):
# 方式 1:運(yùn)行整個文件 pytest pytest_hello_world.py -v # 方式 2:運(yùn)行文件中的單個用例 pytest pytest_hello_world.py::test_hello_world -v - 查看結(jié)果:終端會直接輸出測試通過/失敗信息,格式和命令行一致。
方式 2:通過 Python 插件的「運(yùn)行測試」功能(圖形化操作)
Python 插件內(nèi)置 pytest 集成,無需手動輸命令,點(diǎn)擊即可運(yùn)行:
- 打開
pytest_hello_world.py文件。 - 觀察代碼左側(cè):
- 以
test_開頭的函數(shù)(如test_hello_world)上方會出現(xiàn)「運(yùn)行測試」/「調(diào)試測試」的按鈕(小三角/小蟲子圖標(biāo)),點(diǎn)擊即可直接運(yùn)行該用例。 - 若未顯示按鈕,點(diǎn)擊 VS Code 左側(cè)「測試」(快捷鍵
Ctrl+Shift+T/Cmd+Shift+T),再點(diǎn)擊頂部「配置測試」。
- 以
- 配置測試框架:
- 彈出選擇框時,選擇「pytest」→ 選擇測試用例所在的文件夾(如當(dāng)前文件所在目錄)→ 選擇測試文件模式(默認(rèn)即可,如
test_*.py)。
- 彈出選擇框時,選擇「pytest」→ 選擇測試用例所在的文件夾(如當(dāng)前文件所在目錄)→ 選擇測試文件模式(默認(rèn)即可,如
- 配置完成后:
- 左側(cè)「測試」面板會列出所有識別到的用例(如
test_hello_world、test_addition)。 - 點(diǎn)擊用例旁的「運(yùn)行」按鈕(小三角)即可執(zhí)行,通過/失敗會顯示綠色對勾/紅色叉號。
- 左側(cè)「測試」面板會列出所有識別到的用例(如
方式 3:使用 Pytest Explorer 插件(可視化管理用例)
若安裝了 Pytest Explorer 插件,操作更直觀:
- 安裝后,VS Code 左側(cè)會出現(xiàn)「Pytest」面板(若未顯示,點(diǎn)擊頂部「查看」→「打開視圖」→「Pytest」)。
- 插件會自動掃描工作區(qū)中的 pytest 用例,以樹形結(jié)構(gòu)展示。
- 點(diǎn)擊用例旁的「運(yùn)行」按鈕,或右鍵選擇「Run Test」,即可執(zhí)行,結(jié)果會實(shí)時更新(綠色=通過,紅色=失?。?/li>
三、進(jìn)階:調(diào)試 pytest 用例(打斷點(diǎn)排查問題)
當(dāng)測試用例失敗時,可通過調(diào)試模式逐步排查:
- 在代碼中設(shè)置斷點(diǎn):點(diǎn)擊代碼行號左側(cè),出現(xiàn)紅色圓點(diǎn)(如在
assert result == "helloworld"行設(shè)置斷點(diǎn))。 - 啟動調(diào)試:
- 方式 1:點(diǎn)擊用例上方的「調(diào)試測試」按鈕(小蟲子圖標(biāo))。
- 方式 2:左側(cè)「測試」面板 → 右鍵目標(biāo)用例 →「調(diào)試測試」。
- 調(diào)試控制:
- 頂部會出現(xiàn)調(diào)試工具欄:「繼續(xù)」(
F5)、「單步跳過」(F10)、「單步進(jìn)入」(F11)、「退出調(diào)試」(Shift+F5)。 - 調(diào)試時可查看變量值(左側(cè)「變量」面板)、監(jiān)視表達(dá)式(「監(jiān)視」面板),逐步定位斷言失敗或邏輯錯誤的原因。
- 頂部會出現(xiàn)調(diào)試工具欄:「繼續(xù)」(
四、常見問題解決
- VS Code 識別不到 pytest 用例 :
- 確保已將文件所在文件夾添加到 VS Code 工作區(qū)(「文件」→「打開文件夾」)。
- 檢查測試文件/用例命名是否符合規(guī)則(文件以
test_開頭,用例以test_開頭)。 - 確認(rèn)終端環(huán)境已安裝 pytest(執(zhí)行
pytest --version驗證,若提示「pytest 不是內(nèi)部或外部命令」,則重新安裝pip install pytest)。
- 運(yùn)行時提示「No module named pytest」 :
- 原因:VS Code 未使用安裝 pytest 的 Python 環(huán)境(如虛擬環(huán)境未激活,或選擇了全局 Python 而非虛擬環(huán)境的 Python)。
- 解決:點(diǎn)擊 VS Code 右下角的「Python 環(huán)境選擇器」(顯示當(dāng)前 Python 路徑的地方),選擇已安裝 pytest 的環(huán)境(如虛擬環(huán)境的 Python.exe)。
- Pytest Explorer 插件掃描不到用例 :
- 點(diǎn)擊插件面板頂部的「刷新」按鈕(圓形箭頭),重新掃描。
- 若仍不行,打開插件設(shè)置(右鍵
Pytest Explorer→「擴(kuò)展設(shè)置」),確認(rèn)「Pytest: Python Path」已選擇正確的 Python 環(huán)境。
總結(jié)
VS Code 中運(yùn)行 pytest_hello_world.py 的核心是「環(huán)境正確 + 用例識別」:
- 新手推薦「方式 2」(Python 插件內(nèi)置功能),無需配置,點(diǎn)擊即可運(yùn)行。
- 頻繁調(diào)試用例推薦「方式 3 + 調(diào)試模式」,可視化且高效。
- 熟悉命令行的用戶可直接用「方式 1」,靈活快捷。
按以上步驟操作,即可在 VS Code 中快速運(yùn)行和調(diào)試 pytest 測試用例。
審核編輯 黃宇
-
python
+關(guān)注
關(guān)注
58文章
4889瀏覽量
90328
發(fā)布評論請先 登錄
如何將evkbmimxrt1170_hello_world_cm7.bin下載到 QSPI Flash?
在 MCUXpresso for VSCode for imx93EVK 中導(dǎo)入 Trustzone hello_world_ns 的示例應(yīng)用失敗,為什么?
IMX93 測試hello_world應(yīng)用報錯,是什么原因?qū)е碌模?/a>
在MCUXpresso for VS Code中調(diào)用JLINK Script的三種方法
基于凌羽派的OpenHarmony北向應(yīng)用開發(fā):Hello World 示例應(yīng)用
【RA-Eco-RA2E1-V1.0開發(fā)板試用】Hello World
VS Code 中`xiaozhi-esp32` 項目文件夾 修改 I2C 設(shè)備地址為 `0x78`
根據(jù)書上教程在eclipse環(huán)境下hello_world程序編譯成功,但是燒寫報錯,是什么原因?
如何在VS code中配置Zephyr集成開發(fā)環(huán)境
VS Code運(yùn)行 pytest_hello_world.py
評論