pytest學習筆記 02 執行多檔案

2021-09-17 00:27:07 字數 1388 閱讀 5021

實際使用中,根據業務場景劃分不同的測試檔案,可維護性會更強。如按照下面區分

item_test.py # 商品相關功能測試

order_test.py # 訂單相關功能測試

payment_test.py # 付款相關功能測試

這樣主要有兩個好處

功能劃分後一目了然,不會全部測試函式都混在乙個檔案中

可以分開執行

使用pytest執行多檔案測試,需要遵循以下規則

你可以將不同檔案放在不同目錄下,如

├─ item

│ |─ __init__.py

| └─ item_test.py

├─ order

│ |─ __init__.py

| └─ order_test.py

└─ logoin_test.py

pytest會遍歷搜尋符合條件的測試模組和測試方法,並執行

遍歷搜尋規則如下:

確定起始遍歷目錄

如果命令列中指定,則使用指定目錄

如果有pytest.ini,tox.ini,setup.cfg,且配置testpaths,則使用配置中目錄

以上都沒有,則使用當前目錄

遞迴遍歷每乙個目錄,除非有加入到配置的norecursedirs中排除

在每乙個目錄中,尋找檔案是test_*.py*_test.py的檔案,然後將他們已模組的方式import

首先確認basedir,尋找規則為從當前檔案往上尋找第乙個沒有__init__.py的目錄。如a/b/test_xx.py,ab下都有__init__.py,則會找到他們的父目錄

執行sys.path.insert(0, basedir)為後續匯入做準備

將目錄分隔符替換為.,如a/b/test_xx.py替換為a.b.test_xx並import

在每個檔案裡,尋找符合條件的測試函式

test為字首的函式

test為字首的class下以test為字首的方法

從上面的描述中可以看出乙個坑,需要注意:

有多目錄情況,每個目錄下新增乙個__init__.py,否則你必須保證所有測試檔案都不會重名

pytest學習筆記

學習主要參考 2種方法 1.首先使用 pip 安裝 pytest pip3 install pytest 檢視 pytest 是否安裝成功 pip3 show pytest 2.直接import pytest 在pycharm 然後alt enter進行install 比第一種方法快捷 試驗 imp...

pytest學習筆記(一)

這兩天在學習pytest,之前有小用到pytest,覺得這個測試框架很靈巧,用在實現介面自動化 pytest requests 非常的輕便,然後很有興致的決定學習下,然後又發現了pytest selenium這麼個神奇的東東,加上pytest rerunfailures失敗case自動執行,pyte...

pytest學習筆記3

import pytest test login data admin admin user 123456 deflogin user,pwd print f 登入使用者名稱 print f 登入密碼 if pwd admin return true else return false pytest...