實際的自動化測試專案中,我們的用例通常會放在多個py檔案中,如果我們只想執行其中部分用例,該怎麼做呢?pytest提供的mark功能能夠幫助我們解決這個問題。下面看具體做法。
[pytest]
markers =
you:this is you
me:this is me
test_a.py中
# 用例
import pytest
class testmark:
@pytest.mark.me
def test_weibo(self):
assert 1+1==2
@pytest.mark.me
def test_toutiao(self):
assert 1+2==3
@pytest.mark.you
def test_xinlang(self):
assert 1+3==4
test_b.py
import pytest
@pytest.mark.me
class testassertassume:
def test_assert(self):
assert 1 + 1 == 2
assert 1 + 2 == 3
assert 1 + 3 == 5
assert 1 + 4 == 5
print(
"執行完成1"
) def test_assume(self):
pytest.assume(1 + 1 == 2)
pytest.assume(1 + 2 == 3)
pytest.assume(1 + 3 == 5)
pytest.assume(1 + 4 == 6)
print(
"執行完成2"
)
命令列執行:
# 如果只需要執行打了me標記的用例
pytest -s -m "me"
# 如果想執行沒有打me標記的用例,取反
pytest -s -m "not me"
# 如果想執行打了me和you標記的用例
pytest -s -m "me or you"
main函式執行:
import pytest
if __name__ ==
'__main__'
: pytest.main(
['-m','me'])
# 只執行打了me標記的用例
EasyAR嘗鮮系列教程之自定義Marker的實現
首先我們來看看官方給出的一張easyar的基本流程示意圖 在這張流程圖,當中作為開發者的我們此刻需要關注的target這一條線和frame這條線。前者對應的是如何將普通的如.jpg png配合json檔案轉化為系統可以識別的target,後者對應的是我們在識別到target後要去處理哪些邏輯。在官方...
pytest九 使用自定義標記 mark
mark 標記 以下用例,標記 test send http 為 webtest v指定的函式節點id 如果想指定執行某個.py 模組下,類裡面的乙個用例,如 testclass裡面 test 開頭 或 test 結尾 的用例,函式 或方法 的名稱就是用例的節點 id,指定節點 id 執行用 v 引...
python基礎教程之自定義函式介紹
函式最重要的目的是方便我們重複使用相同的一段程式。將一些操作隸屬於乙個函式,以後你想實現相同的操作的時候,只用呼叫函式名就可以,而不需要重複敲所有的語句。函式的定義 首先,我們要定義乙個函式,以說明這個函式的功能。複製 如下 def square sum a,b c a 2 b 2 return c...