<ruby id="9ue20"></ruby>

  1. 
    

      国产午夜福利免费入口,国产日韩综合av在线,精品久久人人妻人人做精品,蜜臀av一区二区三区精品,亚洲欧美中文日韩在线v日本,人妻av中文字幕无码专区 ,亚洲精品国产av一区二区,久久精品国产清自在天天线
      網易首頁 > 網易號 > 正文 申請入駐

      技術分享:如何用pytest_addoption切換自動化測試環境?

      0
      分享至

      前言

      在目前互聯網公司中,都會存在多個測試環境,那么當我們編寫的自動化想要在多套測試環境下進行運行時,如何使用?

      大多數人想到的可能是通過將我們自動化代碼中的地址修改成不同環境。

      但是這時候就會增加一些工作量,每次運行不同的環境,都需要在配置文件中進行地址修改,這樣很不方便。

      今天小編介紹一種Pytest的鉤子函數,這個函數可以幫助我們很容易的解決這個問題。



      pytest_addoption

      pytest_addoption是Pytest的鉤子函數之一,用于為Pytest添加自定義選項,并將這些選項傳遞給測試用例。

      可以通過修改Pytest的配置文件(pytest.ini)或使用命令行參數來設置這些選項。

      pytest_addoption該函數一般需要和pytest的fixture內置函數request中的request.config.getoption(獲取命令行參數信息)進行結合使用。

      在上述問題中,我們可以通過在命令行參數中對測試環境地址進行修改,這樣就可以在不修改配置文件的情況下,只通過命令行參數進行在不同的測試環境中執行相同的自動化代碼。

      def pytest_addoption(parser):

      parser.addoption(

      "--anjing",

      action="store",

      default="dev",

      help="通過'anjing'添加自定義命令行參數名稱"

      參數介紹

      pytest_addoption中常用到的一些參數介紹:

      name:表示自定義命令行參數的名稱,一般通過“--xxx”來使用;

      action:表示命令行中遇到此參數時要采取的存儲該參數對應的參數值的基本操作類型,默認為“store”;

      default:表示如何命令行中沒有傳入該參數的值,則取默認值;

      help:對參數作用的簡介和說明。

      使用方法

      關于pytest_addoption的一些簡介和用途已經介紹完畢了,接下來跟著小編一起查看如何使用pytest_addoption來解決我們的問題。

      1、需要在conftest.py文件中進行創建一個pytest_addoption函數,對其進行設置對應參數類型。

      2、通過pytest.fixture創建函數,獲取命令行對應參數值。

      3、通過編寫測試用例中調用對應的函數名稱。

      4、命令行執行時,添加對應命令行參數。

      小編先列舉下conftest.py文件中關于pytest_addoption的編寫:

      #conftest.py文件

      #coding:utf-8

      import pytest

      def pytest_addoption(parser):

      parser.addoption(

      "--anjing",action="store",default="anjing",help="將'anjing'添加到pytest的配置參數中"

      parser.addoption(

      "--env",action="store",default="dev",help="env:表示命令行參數內容,不填寫默認輸出default的值內容"

      @pytest.fixture()

      def anjing(request):

      return request.config.getoption("--anjing")

      @pytest.fixture()

      def env(request):

      return request.config.getoption("--env")

      再根據conftest.py文件中的內容編寫對應的測試用例:

      #coding:utf-8

      def test_01(anjing):

      if anjing=='test':

      print('命令行傳參成功!')

      else:

      print('命令行取默認值!')

      def test_02(env):

      if env=='test':

      print('傳參成功!')

      else:

      print('傳參失敗!')



      通過cmd執行時候,后續進行添加了對應的命令行參數值,這里小編是對兩個命令行參數都添加了值,那么如果不添加值會怎么樣呢?



      通過執行結果可以看出來,當我們沒有添加參數時,這里小編忘記打印返回值了,其實會實際輸出默認值,就是我們在函數中設置的default。

      我們上面使用的方法是通過XXX=XXX的格式來輸出的,這里我們也可以通過--xxxx值,參數和值之間通過空格進行輸入,結果都是一樣的。



      案例展示

      上述小編是介紹了如何使用,那么我們如何在接口項目中使用呢?小編這里通過一個簡單的方法通過項目進行展示,這里小編通過將默認值值變成了請求成功的url地址,添加參數為錯誤的url地址。

      #conftest.py文件

      #coding:utf-8

      import pytest

      def pytest_addoption(parser):

      parser.addoption(

      "--url",

      action="store",

      default="http://apis.juhe.cn/simpleWeather/query",

      help="將'anjing'添加到pytest的配置參數中"

      @pytest.fixture()

      def anjing(request):

      return request.config.getoption("--url")

      conftest.py文件中我們將默認請求成功的地址寫入到默認值中,然后繼續編寫接口請求地址,在添加一個命令行參數的函數。

      #test_01.py文件

      #coding:utf-8

      import requests

      def test_01(anjing):

      data={

      'city':"上海",

      'key':'331eab8f3481f37868378fcdc76cb7cd'

      r=requests.post(anjing,data=data)

      result=r.json()['reason']

      assert result=='查詢成功!'

      通過cmd進行運行程序,我們先不添加任何命令行參數,讓其請求默認參數值的內容,發現測試用例請求成功了。



      接下來我們通過隨便在命令行參數后跟一個不正確的url地址,去模擬請求,這里肯定是無法請求成功的,因為我們請求的百度,不能請求成功(主要模擬測試環境場景)。



      總結

      小編通過簡單的方法介紹了如何使用pytest_addoption進行來模擬不同測試環境下,我們如何進行執行我們的測試用例。

      當然pytest_addoption的用途不僅僅只有這么多,具體如何使用,大家可以根據自己公司內容的項目進行結合使用。

      感謝您的閱讀,希望本篇文章對您有所幫助。

      最后:在我的V:atstudy-js,可以免費領取一份10G軟件測試工程師面試寶典文檔資料。以及相對應的視頻學習教程免費分享!其中包括了有基礎知識、Linux必備、Shell、互聯網程序原理、Mysql數據庫、抓包工具專題、接口測試工具、測試進階-Python編程、Web自動化測試、APP自動化測試、接口自動化測試、測試高級持續集成、測試架構開發測試框架、性能測試、安全測試等。

      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      丟人丟到家!上映9天票房仍0元,導演主演都不看一下,破0嗎?

      丟人丟到家!上映9天票房仍0元,導演主演都不看一下,破0嗎?

      TVB的四小花
      2026-05-10 00:06:51
      斯諾克巨星邀請賽:塞爾比顆粒無收!小特單桿84分零封,2-1領先

      斯諾克巨星邀請賽:塞爾比顆粒無收!小特單桿84分零封,2-1領先

      劉姚堯的文字城堡
      2026-05-09 20:33:47
      斯諾克廣州表演賽:吳宜澤4-5不敵世界第5,世錦賽奪冠后遭開門黑

      斯諾克廣州表演賽:吳宜澤4-5不敵世界第5,世錦賽奪冠后遭開門黑

      側身凌空斬
      2026-05-09 17:30:26
      湖南這件事,已經不是荒誕的問題了

      湖南這件事,已經不是荒誕的問題了

      胖胖說他不胖
      2026-05-09 14:58:48
      續航一夜蒸發200公里,8家新能源車企遠程“鎖電”被約談,3家被立案調查

      續航一夜蒸發200公里,8家新能源車企遠程“鎖電”被約談,3家被立案調查

      金融界
      2026-05-07 18:29:15
      最新!下周兩大潛力賽道爆發在即,力度或超光模塊!

      最新!下周兩大潛力賽道爆發在即,力度或超光模塊!

      價值線傳媒
      2026-05-09 16:48:23
      央視曝光車企為降成本偷偷鎖電,8家新能源車企被約談,都是誰?

      央視曝光車企為降成本偷偷鎖電,8家新能源車企被約談,都是誰?

      東方豪俠
      2026-05-09 13:42:17
      5.10凌晨世乒賽:張本智和太囂張 3-1逆轉林昀儒 掀衣服高舉NO1慶

      5.10凌晨世乒賽:張本智和太囂張 3-1逆轉林昀儒 掀衣服高舉NO1慶

      越嶺尋蹤
      2026-05-10 01:04:00
      佩蒂特:若問鼎歐冠阿森納將迎質變,姆巴佩或成改寫歷史頂級強援

      佩蒂特:若問鼎歐冠阿森納將迎質變,姆巴佩或成改寫歷史頂級強援

      星耀國際足壇
      2026-05-09 22:01:17
      魯比奧大概率永遠來不了北京!

      魯比奧大概率永遠來不了北京!

      安安說
      2026-05-09 10:56:46
      雪中送炭!中方伸出援手,3小時直飛達沃,給絕境中的莎拉帶來希望

      雪中送炭!中方伸出援手,3小時直飛達沃,給絕境中的莎拉帶來希望

      井普椿的獨白
      2026-05-09 14:26:34
      五一旅游收入排名,河南381億第二,北京跌出前五,第一實至名歸

      五一旅游收入排名,河南381億第二,北京跌出前五,第一實至名歸

      有范又有料
      2026-05-08 11:27:59
      1998年數萬華人遭屠殺,中國為何沒出兵?26年后答案讓人沉默

      1998年數萬華人遭屠殺,中國為何沒出兵?26年后答案讓人沉默

      哄動一時啊
      2026-02-17 22:21:25
      張文宏最新解讀:此次疫情核心在于傳播路徑異常 | “洪迪厄斯”號郵輪共有8人發病,其中3人死亡,“幾乎所有室內房間都不能隨意開窗”

      張文宏最新解讀:此次疫情核心在于傳播路徑異常 | “洪迪厄斯”號郵輪共有8人發病,其中3人死亡,“幾乎所有室內房間都不能隨意開窗”

      都市快報橙柿互動
      2026-05-10 00:37:04
      漢武帝為什么總選春天進攻匈奴?司馬光:匈奴女子春天更容易懷孕

      漢武帝為什么總選春天進攻匈奴?司馬光:匈奴女子春天更容易懷孕

      云霄紀史觀
      2026-05-08 00:57:48
      FW支招湖人做7換1交易,全力追22+6前鋒,送三首輪簽過于溢價?

      FW支招湖人做7換1交易,全力追22+6前鋒,送三首輪簽過于溢價?

      謝說籃球
      2026-05-09 16:31:07
      38歲梅西獲評9.4分+加冕官方MVP:一球兩助攻,率隊4-2大勝而歸

      38歲梅西獲評9.4分+加冕官方MVP:一球兩助攻,率隊4-2大勝而歸

      側身凌空斬
      2026-05-10 03:13:34
      倫敦世乒賽-5局大戰局局焦點,王楚欽受到挑戰,半決賽艱難勝小將

      倫敦世乒賽-5局大戰局局焦點,王楚欽受到挑戰,半決賽艱難勝小將

      越嶺尋蹤
      2026-05-10 03:36:20
      不是玄學!家里若現這4大怪象,恭喜住進聚寶盆,有一條就偷著樂

      不是玄學!家里若現這4大怪象,恭喜住進聚寶盆,有一條就偷著樂

      手工制作阿愛
      2026-05-09 01:32:24
      37歲楊穎雜志照讓人心酸,眼神散了資源跌了,從頂流到不敢認

      37歲楊穎雜志照讓人心酸,眼神散了資源跌了,從頂流到不敢認

      童叔不飆車
      2026-05-09 21:24:53
      2026-05-10 04:35:00
      51Testing軟件測試網 incentive-icons
      51Testing軟件測試網
      中國軟件測試人的精神家園
      1567文章數 13263關注度
      往期回顧 全部

      科技要聞

      美國政府強力下場 蘋果英特爾達成代工協議

      頭條要聞

      演員文章面館大火后又開酒吧 多位明星到場母親也現身

      頭條要聞

      演員文章面館大火后又開酒吧 多位明星到場母親也現身

      體育要聞

      成立128年后,這支升班馬首奪頂級聯賽冠軍

      娛樂要聞

      50歲趙薇臉頰凹陷滄桑得認不出!

      財經要聞

      多地號召,公職人員帶頭繳納物業費

      汽車要聞

      軸距加長/智駕拉滿 阿維塔07L定位大五座SUV

      態度原創

      本地
      旅游
      手機
      家居
      公開課

      本地新聞

      用蘇繡的方式,打開江西婺源

      旅游要聞

      不用長途奔波!北京城區隨處是治愈人心的初夏花海

      手機要聞

      華為Mate 90首發!鴻蒙7定檔6月:和iOS安卓三分天下

      家居要聞

      菁英人居 全能豪宅

      公開課

      李玫瑾:為什么性格比能力更重要?

      無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 无码另类小说| 亚洲十八禁一区二区三区| 中文字幕一区三区| 亚洲精品国产精品乱码桃花| 91精品国产情侣高潮露脸| 国产丝袜AV| 亚洲www永久成人网站| 亚洲性激情| 人妻系列无码专区久久五月天| 一区二区三区亚洲无码| 操影视| 色www88| 欧美变态另类zozo| 欧美寡妇xxxx黑人猛交| 色综合激情丁香七月色综合| 无码精品人妻一区二区三区湄公河?2026-01-30?8465?1252 | 国产精品入口麻豆| 国产亚洲人妻| 中文字幕人妻一区二区三区| 又色又爽又黄又无遮挡的网站| 国产精品欧美福利久久| 另类 亚洲 图片 激情 欧美| 女同在线观看亚洲国产精品| 国产无遮挡吃胸膜奶免费看| 南涧| 成人免费毛片内射美女-百度 | 中文字幕无码Av在线看| 国产婬乱A片无码区亚洲成a人| 欧美一进一出抽搐大尺度视频| 草草久久久无码国产专区| 日韩高清亚洲日韩精品一区二区| 中文字幕人妻日韩精品| 欧美日韩国产码高清| 攀枝花市| 免费一级毛片在线播放视频| 国产在线拍揄自揄视精品不卡| 欧洲熟妇色xxxxx欧美| 在线观看无码一区二区台湾| 亚洲精品久久麻豆蜜桃| 国产福利无码一区在线| 亚洲日韩AV无码一区二区三区人|