Pytest指定用例執行


pytest 可以靈活的挑選測試用例執行

指定一個模塊

如下:

pytest cases\Login\test_錯誤登錄.py

 

指定目錄

可以像這樣只挑選一個目錄執行

pytest cases

也可指定多個目錄

pytest case1 case2\Login

 

指定模塊里面的函數或者類

指定一個類

pytest cases\Login\test_錯誤登錄.py::Test_錯誤密碼

也可以指定類里面的方法

pytest cases\Login\test_錯誤登錄.py::Test_錯誤密碼::test_c001001

 

根據名字

可以使用命令行參數 -K 后面加名字來挑選要執行的測試項

比如:

pytest -k C001001 -s

注意,-k 后面的名字

  • 可以是測試函數的名字,可以是類的名字,可以是模塊文件名,可以是目錄的名字

  • 是大小寫敏感的

  • 不一定要完整,只要能有部分匹配上就行

  • 可以用 not 表示選擇名字中不包含,比如:   pytest -k "not C001001" -s

  • 可以用 and 表示選擇名字同時包含多個關鍵字,比如: pytest -k "錯 and 密碼2" -s

  • 可以用 or 表示選擇名字 包含指定關鍵字之一即可,比如: pytest -k "錯 or 密碼2" -s

根據標簽

可以這樣給 某個方法加上標簽 webtest

import pytest

class Test_錯誤密碼3:

@pytest.mark.webtest
def test_C001021(self):
print('\n用例C001021')
assert 1 == 1

運行指定標簽的用例

pytest cases -m webtest

也可以給整個類加上方法

import pytest
@pytest.mark.webtest
class Test_錯誤密碼3:

def test_C001021(self):
print('\n用例C001021')
assert 1 == 1

也是支持中文的

import pytest
@pytest.mark.網頁測試
class Test_錯誤密碼3:

def test_C001021(self):
print('\n用例C001021')
assert 1 == 1

運行命令指定的標簽

pytest cases -m 網頁測試 -s

 

可以這樣定義一個全局變量 pytestmark 為 整個模塊文件 設定標簽

import pytest
pytestmark = pytest.mark.網頁測試

@pytest.mark.網頁測試
class Test_錯誤密碼3:

def test_C001021(self):
print('\n用例C001021')
assert 1 == 1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM