Bug: No module named ‘pytest‘

there2belief發表於2020-10-20

在測試模型時遇到Bug:No module named ‘pytest’

我的場景:pycharm下執行一個測試深度學習模型的python程式碼。我的程式碼名稱為test_exp.py;關鍵是自己的程式碼里根本沒有import pytest,報錯路徑在pycharm裡
如圖所示

出現bug的原因:

.py檔案的開頭出現了test_。

  1. 之所以是強調開頭,是因為我重新嘗試了一下model_test的檔名,是可以通過執行的
  2. 注意是test這個整體,如果是testr,testpp等等都是不會報錯的
  3. 直接使用test這個單詞是不會出錯的,這也是我覺得神奇的地方。也就是test.py是OK的。

類似的問題還出現在函式名以test_開頭

解決辦法:

把檔名開頭的test換掉,或者放到後面去即可,或者直接改成test
新增一:總之不要以test_開頭,這個會被pycharm預設為我們要用pytest的方式執行。
新增二:或者就順著它,把pytest安裝了:pip install pytest
新增三:或者改掉pycharm自動以pytest執行的方式,見別人的部落格:
https://blog.csdn.net/cvnlixiao/article/details/87351491

具體原因

更深層的原因,為什麼那麼命名會出現這些問題呢,為啥pytest就冒出來了呢?我暫時也還不知道,等以後知道了再來記錄吧
新增:造成這一錯誤的原因,還是在於pycharm編輯器,它看到以test_開頭的檔案就以為我們想要以pytest的模式執行,但我們並沒有安裝pytest,所以出現了錯誤,解決方式自然也就是三種,改檔名,安裝pytest,改掉pycharm自動以pytest執行的方式。

補充

pytest是一個非常成熟的全功能的Python測試框架

相關文章