簡體   English   中英

為子目錄中的測試定義一個conftest.py

[英]Defining a single conftest.py for tests in subdirectories

我有一個應用程序,其中單元測試的組織方式如下:

server/
  tests/
    conftest.py
    test_server.py
client/
  tests/
    conftest.py
    test_client.py

在此設置中,夾具配置沒有重復,因為conftest.py文件僅具有用於其相關測試的夾具。

現在,我將添加集成測試,其組織方式如下:

tests/
  conftest.py
  test_integration.py
server/
  tests/
    conftest.py
    test_server.py
client/
  tests/
    conftest.py
    test_client.py

這個新的conftest.py需要具有我在其他地方定義的所有固定裝置。 如何設置py.test,以免避免從client/tests/conftest.pyserver/tests/conftest.py復制所有燈具?

最接近的類似問題是: 使用pytest時如何組織裝置

謝謝!

我處理這種情況的方式是將所有共享的燈具移到頂級conftest文件中,如下所示:

conftest.py
tests/
    [conftest.py]
    test_integration.py
server/
    tests/
        [conftest.py]
        test_server.py
client/
    tests/
        [conftest.py]
        test_client.py

確實確實使它有時不太好用,因為您最終在頂層conftest.py中得到了一堆不太相關的固定裝置,但是它很容易且顯而易見。

暫無
暫無

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

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