pytest 為每一個(gè)收集到的測試用例指定一個(gè)唯一的nodeid典鸡,它由模塊名和說明符構(gòu)成罚攀,以::間隔潮针,其中說明符可以包含類名术荤、函數(shù)名和由parametrize標(biāo)記賦予的參數(shù)。
示例testNode.py每篷,如下:
import pytest
def test_one():
? ? pass
class TestNode:
? ? def test_one(self):
? ? ? ? pass
? ? @pytest.mark.parameterize("x, y", [(1,3), (3, 5)])
? ? def test_two(self,? x, y):
? ? ? ? assert x+2 == y
1) pytest testNode.py::test_one? ? ? ? ? ? ? ? ? ? ? ? ? ? - 函數(shù)名
2) pytest testNode.py::testNode::test_one? ? ? ? ? ? - 類名+函數(shù)名
3)?pytest testNode.py::testNode::test_two[1-3] ????-?類名+函數(shù)名+標(biāo)記參數(shù)
4)?pytest testNode.py::testNode::test_two[3-5] ????-?類名+函數(shù)名+標(biāo)記參數(shù)
注意:指定參數(shù)x瓣戚、y的形式是[1-1],中間以-間隔焦读,并且只能為[1-3]或者[3-5]子库,不能是[1, 3]、[3, 5]矗晃、(1, 3)仑嗅、(3,?5).
另可以使用-vv來查看test cases的執(zhí)行細(xì)節(jié)
5)?pytest testNode.py -vv? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-?類名+函數(shù)名+標(biāo)記參數(shù)