DDT+EXCEL數(shù)據(jù)驅(qū)動

  1. 什么是DDT
    data driver test數(shù)據(jù)驅(qū)動測試。就是從數(shù)據(jù)文件中:Excel乌叶,csv, yaml凤巨,讀取測試數(shù)據(jù)砚作,然后把讀取到的數(shù)據(jù)傳入到用例里面纱控,通過改變數(shù)據(jù)文件中的數(shù)據(jù)來驅(qū)動自動化測試用例去執(zhí)行
  2. 為什么要用DDT
    能夠讓我門的用例覆蓋正反例
  3. DDT使用方式(通過裝飾器來使用)
    在函數(shù)或者類上面加一個裝飾器用來實現(xiàn)一些特定的功能
    @ddt :裝飾類,用于聲明當前類使用ddt數(shù)據(jù)驅(qū)動
    @data:裝飾函數(shù),給函數(shù)傳值
    @unpack:裝飾函數(shù),給數(shù)據(jù)解包
    @file_data:裝飾函數(shù)黍氮,直接讀取yaml, json文件
  4. 代碼實例
    exel測試數(shù)據(jù)
    data
    -loginweb_data.xlsx


    image.png
# testcase
#-test_loginweb.py
from ddt import ddt, data, unpack

from base.base_util import BaseUtil
from commons.excel_util import ExcelUtil
from pageobject.login_page import LoginPage

@ddt
class TestLoginWeb(BaseUtil):
    @data(*ExcelUtil().read_excel())
    @unpack
    def test_01_open_page(self, index, username, password):
        lp = LoginPage(self.driver)
        lp.login_web(username, password)
        if index == 1:
            print('正例')
# commons
# -excel_util.py
import os.path

import openpyxl


class ExcelUtil:

    def get_object_path(self):
        return os.path.abspath(os.path.dirname(__file__)).split('commons')[0]

    def read_excel(self):
        # openpyxl, xlrd
        # 加載excel工作簿
        wb = openpyxl.load_workbook(self.get_object_path()+'data/loginweb_data.xlsx')
        # 加載sheet對象
        sheet = wb['login']
        # 獲得excel的行數(shù)和列數(shù)
        print(sheet.max_row, sheet.max_column)
        # 循環(huán)
        all_list = []
        for rows in range(2, sheet.max_row+1):
            temp_list = []
            for cols in range(1, sheet.max_column+1):
                temp_list.append(sheet.cell(rows, cols).value)
            all_list.append(temp_list)
        return all_list
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市浅浮,隨后出現(xiàn)的幾起案子沫浆,更是在濱河造成了極大的恐慌,老刑警劉巖滚秩,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件专执,死亡現(xiàn)場離奇詭異,居然都是意外死亡叔遂,警方通過查閱死者的電腦和手機他炊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來已艰,“玉大人,你說我怎么就攤上這事蚕苇×ú簦” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵涩笤,是天一觀的道長嚼吞。 經(jīng)常有香客問我,道長蹬碧,這世上最難降的妖魔是什么舱禽? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮恩沽,結(jié)果婚禮上誊稚,老公的妹妹穿的比我還像新娘。我一直安慰自己罗心,他們只是感情好里伯,可當我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著渤闷,像睡著了一般疾瓮。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上飒箭,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天狼电,我揣著相機與錄音蜒灰,去河邊找鬼。 笑死肩碟,一個胖子當著我的面吹牛强窖,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播腾务,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼毕骡,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了岩瘦?” 一聲冷哼從身側(cè)響起未巫,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎启昧,沒想到半個月后叙凡,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡密末,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年握爷,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片严里。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡新啼,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出刹碾,到底是詐尸還是另有隱情燥撞,我是刑警寧澤,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布迷帜,位于F島的核電站物舒,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏戏锹。R本人自食惡果不足惜冠胯,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望锦针。 院中可真熱鬧荠察,春花似錦、人聲如沸伞插。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽媚污。三九已至舀瓢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間耗美,已是汗流浹背京髓。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工航缀, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人堰怨。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓芥玉,卻偏偏與公主長得像,于是被迫代替她去往敵國和親备图。 傳聞我的和親對象是個殘疾皇子灿巧,可洞房花燭夜當晚...
    茶點故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容