前面一篇講了setup、teardown可以實現在執行用例前或結束后加入一些操作,但這種都是針對整個腳本全局生效的
如果有以下場景:用例 1 需要先登錄,用例 2 不需要登錄,用例 3 需要先登錄。很顯然無法用 setup 和 teardown 來實現了fixture可以讓我們自定義測試用例的前置條件
@pytest.fixture(scope="function", params=None, autouse=False, ids=None, name=None)
def test():
print("fixture初始化的參數列表")
參數列表
注意
session的作用域:是整個測試會話,即開始執行pytest到結束測試
測試用例如何調用fixture#!/usr/bin/env python # -*- coding: utf-8 -*- """ __title__ = __Time__ = 2020-04-06 15:50 __Author__ = 小菠蘿測試筆記 __Blog__ = https://www.cnblogs.com/poloyy/ """ import pytest # 調用方式一 @pytest.fixture def login(): print("輸入賬號,密碼先登錄") def test_s1(login): print("用例 1:登錄之后其它動作 111") def test_s2(): # 不傳 login print("用例 2:不需要登錄,操作 222") # 調用方式二 @pytest.fixture def login2(): print("please輸入賬號,密碼先登錄") @pytest.mark.usefixtures("login2", "login") def test_s11(): print("用例 11:登錄之后其它動作 111") # 調用方式三 @pytest.fixture(autouse=True) def login3(): print("====auto===") # 不是test開頭,加了裝飾器也不會執行fixture @pytest.mark.usefixtures("login2") def loginss(): print(123)
網站名稱:Pytest框架之fixture的詳細使用教程-創新互聯
分享URL:http://vcdvsql.cn/article0/cccgio.html
成都網站建設公司_創新互聯,為您提供App開發、商城網站、網站改版、ChatGPT、App設計、外貿建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯