pytest之mark功能


pytest系列(一)中給大家介紹了pytest的特性,以及它的編寫用例的簡單至極。

那么在實際工作當中呢,我們要寫的自動化用例會比較多,不會都放在一個py文件里。

如下圖所示,我們編寫的用例存放在不同的py文件當中。

 

 

 

當我們想只運行諸多py文當中的部分用例,怎么辦呢?

比如自動化工作當中,選擇test_a,test_33,test_000這3個用例來運行的話,如何過濾呢?

 

 

pytest.mark一下

在pytest當中,先給用例打標記,在運行時,通過標記名來過濾測試用例。

 

 

 

步驟1:給用例打標簽

給用例打標記分為2個步驟:

 

1)注冊標簽名

官方提供的注冊方式有2種,這里只提供一種最簡單直接的方式:

通過pytest.ini配置文件注冊。在pytest.ini文件當中:

[pytest] # 固定的section名

markers= # 固定的option名稱

  標簽名1: 標簽名的說明內容。

  標簽名2

  標簽名N

示例如下:

 

 

 

2)在測試用例/測試類中給用例打標記(只能使用已注冊的標記名)

在 測試用例的前面加上:@pytest.mark.已注冊標簽名

如下圖,對3個測試文件當中的,要篩選出來的用例,都打了me標簽 。

 

 

 

 

步驟2:運行時,根據用例標簽過濾(-m 標簽名)

pytest提供了命令行參數來配置運行時的條件。

在命令行當中,輸入pytest --help來查看所有可用的參數。

 

 

 

也可以調用pytest.main()函數,將運行時的參數以列表傳進去,同樣也可以達到命令行運行的效果。

根據標簽名過濾用例的參數為:-m 標簽名

 

 

 

運行此文件的結果:

 

 

尊重作者,本文是完全轉載文章 轉載自:https://www.cnblogs.com/Simple-Small


免責聲明!

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



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