pytest在控制台的方式下提示找不到包

2022-04-24 17:22:22 字數 937 閱讀 7614

問題:pytest方法在idea中執行正常,引入包也正常,但是在控制台中執行就提示找不到包

原因:我查詢過很多檔案,好像問題是這樣,是因為idea載入路徑的時候是會把當前目錄的路徑加入進去,進行執行,但是如果是用控制台,根目錄就不會被載入,所以要手動新增目錄

以下為例,專案名/cases/執行的方法   引入包的位址是  專案名/conf/qa  因為在idea中啟用了source root功能,會發現匯入form conf import qa正常,執行也能正常,但是當我們取消sour root功能執行,這個時候執行與控制台中就一樣了

取消後的效果

取消後soure root 用控制台執行都是同樣的問題

解決方法

在引包之前加入路徑,引包之前加入路徑,引包之前加入路徑,重要的事情說三遍,一定是引包之前,(因為我就犯了這個錯誤,在引包的後面,在去加入路徑,所以浪費了乙個晚上糾結這個事情)

雖然看到還是紅色,但是不影響我們的執行,看下面就正常了

在控制台程式中隱藏控制台視窗

因為此種方法是通過設定編譯器的鏈結開關來實現,所以讓我們來看一下編譯 器的鏈結開關選項 也就是linker選項 首先我們來看一下linker的 subsystem 選項 這個鏈結選項告訴作業系統如何執行可執行檔案 console win32 字元模式應用程式,此種型別的應用程式在執行的時候會產生乙個...

在控制台程式中隱藏控制台視窗

因為此種方法是通過設定編譯器的鏈結開關來實現,所以讓我們來看一下編譯 器的鏈結開關選項 也就是linker選項 首先我們來看一下linker的 subsystem 選項 這個鏈結選項告訴作業系統如何執行可執行檔案 console win32 字元模式應用程式,此種型別的應用程式在執行的時候會產生乙個...

在控制台程式中隱藏控制台視窗

因為此種方法是通過設定編譯器的鏈結開關來實現,所以讓我們來看一下編譯 器的鏈結開關選項 也就是linker選項 首先我們來看一下linker的 subsystem 選項 這個鏈結選項告訴作業系統如何執行可執行檔案 console win32 字元模式應用程式,此種型別的應用程式在執行的時候會產生乙個...