欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python自動化之?dāng)?shù)據(jù)驅(qū)動讓你的腳本簡潔10倍【推薦】

 更新時間:2019年06月04日 11:22:36   投稿:mrr  
數(shù)據(jù)驅(qū)動是一種思想,讓數(shù)據(jù)和代碼進行分離。這篇文章主要介紹了Python自動化之?dāng)?shù)據(jù)驅(qū)動,讓你的腳本簡潔10倍,需要的朋友可以參考下

前言

數(shù)據(jù)驅(qū)動是一種思想,讓數(shù)據(jù)和代碼進行分離,比如爬蟲時,我們需要分頁爬取數(shù)據(jù)時,我們往往把頁數(shù) page 參數(shù)化,放在 for 循環(huán) range 中,假如沒有 range 這個自帶可以生產(chǎn)數(shù)字序列的方法可以用,我們是不是得手動逐個添加?

現(xiàn)實場景中就存在大量這樣的例子,比如我之前寫的爬取上海各地區(qū)房租情況的時候,對地區(qū)進行遍歷的時候,為了偷懶,我直接把這些地區(qū)的拼音全稱放在了列表里,組合成各地區(qū)房源的鏈接。最后文章寫完了,有讀者反饋,少了徐匯區(qū)的統(tǒng)計數(shù)據(jù)。這種小數(shù)量的數(shù)據(jù)都出現(xiàn)了紕漏,可想而知,對于大量的數(shù)據(jù),怎么保證數(shù)據(jù)的完整和準(zhǔn)確性?我們需要把兩者分離,數(shù)據(jù)專門儲存在特定文件(比如 Excel 文件)。

舉一個小栗子:登錄流程,在測試的時候,除了測試登錄成功的場景,我們往往需要測到各種登錄異常的場景。

寫幾條很常見的案例如下:

比如上面寫了 5 條案例,數(shù)據(jù)和腳本不做分離的話,我們寫自動化測試腳本需要寫 5 條。

5 條案例中,腳本都是基本一樣的,只是輸入框輸入的數(shù)據(jù)不一樣罷了。

數(shù)據(jù)分離

我們完全可以把數(shù)據(jù)存儲在 Excel 表中,我們通過循環(huán)讀取 Excel 表中的數(shù)據(jù)來實現(xiàn)一條腳本執(zhí)行多條數(shù)據(jù)。

我們先封裝一個操作 Excel 文件的類,需要先安裝導(dǎo)入包 openpyxl。

我們用這個庫可以做一下功能:讀取表格數(shù)據(jù)、保存執(zhí)行結(jié)果。

我們先在類下寫一個打開 Excel 文件的初始化方法,構(gòu)造方法的作用是,當(dāng)類被實例化后,會立即調(diào)用構(gòu)造方法。

讀取表格數(shù)據(jù)

然后我們寫一個讀取 Excel 數(shù)據(jù)的方法,讀取數(shù)據(jù)后返回數(shù)據(jù)列表,以便之后調(diào)用獲取對應(yīng)的數(shù)據(jù),因為第 1 列數(shù)據(jù)是序號,所以直接返回第 2 列之后的數(shù)據(jù)。

保存執(zhí)行結(jié)果

實際結(jié)果和預(yù)期結(jié)果對比后,我們需要標(biāo)記執(zhí)行結(jié)果是 pass 或者 fail,我們需要保存結(jié)果,保存到對應(yīng)的單元格中。

我們看看我們的案例格式:

這樣的話,我們腳本就不用寫 5 條了,調(diào)用 Excel 文件的數(shù)據(jù),循環(huán)執(zhí)行案例即可,不僅邏輯清晰,還方便了后期的維護。

這樣,測試數(shù)據(jù)和腳本分離后,不同的測試數(shù)據(jù)用不同的 Excel 文件保存即可。

吃飯時或者下班時執(zhí)行下測試腳本,吃完飯后或者第二天上班時,查看下 Excel 里的執(zhí)行結(jié)果,有 fail 再手動看看能否復(fù)現(xiàn),是不是很高效?

總結(jié)

以上所述是小編給大家介紹的Python自動化之?dāng)?shù)據(jù)驅(qū)動讓你的腳本簡潔10倍,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • 詳解Python字符串切片

    詳解Python字符串切片

    這篇文章主要介紹了Python字符串切片,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • pytest配置文件pytest.ini的具體使用

    pytest配置文件pytest.ini的具體使用

    本文主要介紹了pytest配置文件pytest.ini的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Python技法-序列拆分詳解

    Python技法-序列拆分詳解

    Python中的任何序列(可迭代的對象)都可以通過賦值操作進行拆分,包括但不限于元組、列表、字符串、文件、迭代器、生成器等。
    2021-10-10
  • Python字符串逆序輸出的實例講解

    Python字符串逆序輸出的實例講解

    今天小編就為大家分享一篇關(guān)于Python字符串逆序輸出的實例講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Python如何判斷Excel單元格的值是否為空

    Python如何判斷Excel單元格的值是否為空

    在Python中,你可以使用openpyxl庫來處理Excel文件,這篇文章主要介紹了Python判斷Excel單元格的值是否為空,需要的朋友可以參考下
    2024-06-06
  • Python編程itertools模塊處理可迭代集合相關(guān)函數(shù)

    Python編程itertools模塊處理可迭代集合相關(guān)函數(shù)

    本篇博客將為你介紹Python函數(shù)式編程itertools模塊中處理可迭代集合的相關(guān)函數(shù),有需要的朋友可以借鑒參考下,希望可以有所幫助
    2021-09-09
  • Python實現(xiàn)FTP文件定時自動下載的步驟

    Python實現(xiàn)FTP文件定時自動下載的步驟

    這篇文章主要介紹了Python實現(xiàn)FTP文件定時自動下載的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-12-12
  • Python調(diào)用SQLPlus來操作和解析Oracle數(shù)據(jù)庫的方法

    Python調(diào)用SQLPlus來操作和解析Oracle數(shù)據(jù)庫的方法

    這篇文章主要介紹了Python調(diào)用SQLPlus來操作和解析Oracle數(shù)據(jù)庫的方法,這樣用SQL*Plus方式來分析Oracle中的數(shù)據(jù)就變得十分方便,需要的朋友可以參考下
    2016-04-04
  • python vertibi算法實現(xiàn)原理解析

    python vertibi算法實現(xiàn)原理解析

    這篇文章主要為大家介紹了python vertibi算法實現(xiàn)原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • 在pycharm下設(shè)置自己的個性模版方法

    在pycharm下設(shè)置自己的個性模版方法

    今天小編就為大家分享一篇在pycharm下設(shè)置自己的個性模版方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07

最新評論