成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

測(cè)試驅(qū)動(dòng)技術(shù)(TDD)系列之-pytest實(shí)現(xiàn)測(cè)試數(shù)據(jù)驅(qū)動(dòng)

開(kāi)發(fā) 后端
本篇文章則介紹如何使用Python進(jìn)行數(shù)據(jù)驅(qū)動(dòng)。這里以pytest測(cè)試框架為例,重點(diǎn)講解pytest參數(shù)化相關(guān)知識(shí)

[[382621]]

 本篇文章則介紹如何使用Python進(jìn)行數(shù)據(jù)驅(qū)動(dòng)。這里以pytest測(cè)試框架為例,重點(diǎn)講解pytest參數(shù)化相關(guān)知識(shí)。(關(guān)于pytest的環(huán)境配置以及基礎(chǔ)使用不在本文的討論范圍)

pytest中使用標(biāo)簽@pytest.mark.parametrize 實(shí)現(xiàn)參數(shù)化功能,在執(zhí)行用例的時(shí)候該標(biāo)簽迭代中的每組數(shù)據(jù)都會(huì)作為一個(gè)用例執(zhí)行。

一組參數(shù)化數(shù)據(jù)

定義參數(shù)化數(shù)據(jù),代碼如下:

  1. class TestDemo1: 
  2. @pytest.mark.parametrize('actual_string, expect_string', [(1, 1), ('BB''BB'),('AA''BB')]) 
  3.  
  4.       def test_1(self, actual_string, expect_string): 
  5.  
  6.            assert (expect_string == actual_string) 

 運(yùn)行結(jié)果如下,三組數(shù)據(jù)在三條測(cè)試用例中運(yùn)行,其中數(shù)據(jù)('AA', 'BB')運(yùn)行失敗!


多組參數(shù)化數(shù)據(jù)

在一個(gè)測(cè)試類(lèi)中,可以定義多組參數(shù)化數(shù)據(jù)(參數(shù)化數(shù)據(jù)個(gè)數(shù)不同,test_1二個(gè),test_2三個(gè)),代碼如下:

  1. class TestDemo1: 
  2.  
  3.    @pytest.mark.parametrize('actual_string, expect_string', [(1, 1), ('BB''BB'),('AA''BB')]) 
  4.  
  5.    def test_1(self, actual_string, expect_string): 
  6.  
  7.        assert (expect_string == actual_string) 
  8.  
  9.  
  10.    @pytest.mark.parametrize('result, a,b', [(1, 1,0),(2, 1,0) ]) 
  11.  
  12.    def test_2(self, result, a,b): 
  13.  
  14.        assert (result == a+b) 

 運(yùn)行結(jié)果如下,二組數(shù)據(jù)分別在test_1和test_2中運(yùn)行!


從excel中讀取數(shù)據(jù)作為參數(shù)

我們可以自定義一些方法,對(duì)外部文件進(jìn)行讀取,然后把讀取的數(shù)據(jù)作為參數(shù)在pytest

中引用。把測(cè)試數(shù)據(jù)保存在excel中,如下圖


寫(xiě)一個(gè)讀取excel類(lèi)文件的方法,使用模塊pandas ,使用命令pip install pandas 安裝模塊,源碼如下:

  1. import pandas as pd 
  2.  
  3. # 讀取Excel文件 -- Pandas 
  4.  
  5. def read_data_from_pandas(excel_file, sheet_name): 
  6.  
  7.     if not os.path.exists(excel_file): 
  8.  
  9.         raise ValueError("File not exists"
  10.  
  11.     s = pd.ExcelFile(excel_file) 
  12.  
  13.     df = s.parse(sheet_name)#解析sheet頁(yè)的數(shù)據(jù) 
  14.  
  15.     return df.values.tolist()#數(shù)據(jù)返回為list 

 從excel中讀取數(shù)據(jù),并賦值給變量進(jìn)行參數(shù)化,代碼如下:

  1. @pytest.mark.parametrize('actual_string, expect_string', read_data_from_pandas('E:/TestData.xls''data1')) 
  2.  
  3. def test_3(self, actual_string, expect_string): 
  4.  
  5.     assert (expect_string == actual_string) 

 運(yùn)行結(jié)果如下,三組數(shù)據(jù)在三條測(cè)試用例中運(yùn)行!


注意:excel中的首行,默認(rèn)不會(huì)作為測(cè)試數(shù)據(jù)處理。

 

責(zé)任編輯:姜華 來(lái)源: 今日頭條
相關(guān)推薦

2021-02-04 07:30:14

測(cè)試驅(qū)動(dòng)技術(shù)excel讀取數(shù)據(jù)

2021-02-04 07:12:15

測(cè)試excelapi

2021-01-19 07:46:48

TestNG測(cè)試驅(qū)動(dòng)TDD

2009-10-10 10:55:48

TDD技術(shù)

2014-04-09 11:13:37

測(cè)試驅(qū)動(dòng)開(kāi)發(fā)

2023-09-11 11:05:49

軟件開(kāi)發(fā)TDD

2010-01-28 09:07:50

Visual Stud

2023-02-23 19:28:09

ODD測(cè)試

2025-05-23 02:00:00

RAGAI人工智能

2018-05-11 13:39:05

PythonCSV接口測(cè)試

2018-05-11 08:29:10

Python自動(dòng)化測(cè)試數(shù)據(jù)驅(qū)動(dòng)

2013-06-07 19:04:15

測(cè)試

2013-06-27 10:34:08

準(zhǔn)備性能測(cè)試數(shù)據(jù)

2009-12-11 15:13:15

VS 2010驅(qū)動(dòng)

2023-07-28 10:27:48

Java單元測(cè)試

2011-07-22 09:29:54

裸線(xiàn)測(cè)試

2021-12-30 07:33:03

數(shù)據(jù)庫(kù)

2023-12-25 09:52:32

2013-02-27 15:24:45

Calxeda測(cè)試數(shù)據(jù)ARM架構(gòu)

2009-02-12 09:55:28

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美国产精品久久久 | 成人免费视频 | 亚洲精品资源 | av黄色国产 | 久久久久久久电影 | 中国人pornoxxx麻豆 | 成人二区 | 日韩精品视频在线播放 | 国产国语精品 | 国产真实乱全部视频 | 国产综合一区二区 | 亚洲一区三区在线观看 | 国产精品三级 | 秋霞电影院午夜伦 | 久久精品二区亚洲w码 | 久久天堂 | 亚洲 精品 综合 精品 自拍 | 久久99视频免费观看 | 三级黄色片在线观看 | 午夜精品久久久久久久久久久久久 | 一级黄色大片 | 久久精品国产一区二区 | 欧美最猛黑人xxxⅹ 粉嫩一区二区三区四区公司1 | 国产色婷婷精品综合在线手机播放 | 国产成人久久精品一区二区三区 | 日韩在线看片 | 青青草av在线播放 | 欧美成视频 | 国产成人精品久久 | 成人国产精品视频 | 欧美精品在欧美一区二区少妇 | 久久一区二区av | 美女久久 | 天天插天天舔 | 国产欧美性成人精品午夜 | 天天干天天干 | 精品一区二区三区在线视频 | www.亚洲精品| 91在线看片 | 中文天堂网 | 午夜欧美 |