運行時錯誤:在應用程式上下文之外工作
嘗試對test 中的app.py 模組中的before_request 和input_info 函數進行單元測試時。 py 時,遇到 RuntimeError,表示函數正在應用程式上下文之外呼叫。
To要解決此問題,必須使用 app.app_context() 上下文管理器在單元測試中建立測試應用程式上下文。此上下文管理器為 before_request 和 input_info 函數正確執行提供了必要的環境。
以下是如何在單元測試中使用app.app_context() 上下文管理器的範例:
from app import * class Test(unittest.TestCase): def test_connection1(self): with app.app_context(): object = TestMySQL() object.before_request() # Should no longer throw a RuntimeError
在此測試中,app.app_context() 上下文管理器包裝了對before_request 函數的調用,建立必要的測試應用程式上下文並解析運行時錯誤。
以上是如何解決單元測試中的「運行時錯誤:在應用程式上下文之外工作」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!