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

Python通過Pillow實現(xiàn)圖片對比

 更新時間:2020年04月29日 10:25:49   作者:蟲師  
這篇文章主要介紹了Python Pillow實現(xiàn)圖片對比,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

 在編寫Web自動化測試用例的時候,如何寫斷言使新手不解,嚴格意義上來講,沒有斷言的自動化腳本不能叫測試用例。就像功能測試一樣,當測試人員做了一些操作之后必然會判斷實際結果是否等于預期結果,只不過,這個過程由測試人員的眼睛完成。而自動化測試腳本必然要通過一此信息來斷定用例是否成功。

這其中常用的三種信息分別是:

title :頁面不同或顯示不同時往往title也會有所變化。

url :與title類似,當頁面發(fā)生變化時,跟著url也會改變。

text:相比前者應用更廣泛,因為通過它可以獲取頁面上的任意標識性文本,用于“證明”用例執(zhí)行是成功的。例如,登陸之后人用戶名,查詢的結果等。

但是,在有些情況下,無法獲取這些信息來證明用例是成功的怎么辦?當然,下策是不寫斷言,腳本運行沒有報錯來證明用例執(zhí)行成功,這當然是無奈之舉。除此之外還可以選擇斷言兩張圖片,在用例執(zhí)行正確的情況下對當前頁面進行截圖,在用例執(zhí)行的過程中再次進行截圖。通過對兩張圖片進行比較,從而判斷用例是否運行成功。

Pillow下載:https://pypi.python.org/pypi/Pillow/3.0.0

根據(jù)自己的操作系統(tǒng)以及python版本選擇下載。

安裝:

> python3 -m pip install Pillow-3.0.0-cp35-none-win_amd64.whl

Processing c:\selenium\pillow-3.0.0-cp35-none-win_amd64.whl

Installing collected packages: Pillow

Successfully installed Pillow-3.0.0

  注意,因為我本機同時安裝了Python2.7和Python3.5,所以,這里特意指定安裝在Python3的下面。

from PIL import Image
import math
import operator
from functools import reduce


def image_contrast(img1, img2):

  image1 = Image.open(img1)
  image2 = Image.open(img2)

  h1 = image1.histogram()
  h2 = image2.histogram()

  result = math.sqrt(reduce(operator.add, list(map(lambda a,b: (a-b)**2, h1, h2)))/len(h1) )
  return result

if __name__ == '__main__':
  img1 = "./img1.jpg" # 指定圖片路徑
  img2 = "./img2.jpg"
  result = image_contrast(img1,img2)
  print(result)

  如果兩張圖片完全相等,則返回結果為浮點類型“0.0”,如果不相同則返回結果值越大。

  這樣就可以在自動化測試用例中調用該方法來斷言執(zhí)行結果。

關于Pillow庫的詳細文檔:

http://pillow.readthedocs.org/en/latest/index.html

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Python OpenCV直方圖均衡化詳解

    Python OpenCV直方圖均衡化詳解

    本文中將介紹如何使用OpenCV函數(shù)執(zhí)行直方圖均衡,并將其應用于灰度和彩色圖像,以及將亮度歸一化并提高圖像的對比度。感興趣的小伙伴可以了解一下
    2022-02-02
  • 利用Python自動監(jiān)控網站并發(fā)送郵件告警的方法

    利用Python自動監(jiān)控網站并發(fā)送郵件告警的方法

    這篇文章介紹的是通過定時執(zhí)行python腳本,可以實現(xiàn)定期批量訪問網站,如果發(fā)現(xiàn)網站打不開,第一時間發(fā)郵件到管理員郵箱進行預警。有需要的可以參考借鑒。
    2016-08-08
  • Python如何優(yōu)雅的實現(xiàn)自增枚舉類

    Python如何優(yōu)雅的實現(xiàn)自增枚舉類

    枚舉類型在編程中扮演著重要的角色,它們?yōu)樽兞抠x予了更加清晰的含義,然而,在Python中,實現(xiàn)自增的枚舉類并非直接而簡單的任務,本文將深入討論如何通過不同的方式優(yōu)雅地實現(xiàn)自增的枚舉類,需要的朋友可以參考下
    2023-12-12
  • python實現(xiàn)斐波那契數(shù)列的方法示例

    python實現(xiàn)斐波那契數(shù)列的方法示例

    每個碼農大概都會用自己擅長的語言寫出一個斐波那契數(shù)列出來,斐波那契數(shù)列簡單地說,起始兩項為0和1,此后的項分別為它的前兩項之后。下面這篇文章就給大家詳細介紹了python實現(xiàn)斐波那契數(shù)列的方法,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2017-01-01
  • 基于Python實現(xiàn)m3u8視頻下載

    基于Python實現(xiàn)m3u8視頻下載

    m3u8?是一種基于文本的媒體播放列表文件格式,通常用于指定流媒體播放器播放在線媒體流,本文將利用Python實現(xiàn)m3u8視頻下載器,感興趣的可以了解一下
    2023-05-05
  • Python代碼太長換行的實現(xiàn)

    Python代碼太長換行的實現(xiàn)

    這篇文章主要介紹了Python代碼太長換行的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-07-07
  • Python中字典映射類型的學習教程

    Python中字典映射類型的學習教程

    這篇文章主要介紹了Python中字典映射類型的學習教程,是Python入門學習中的基礎知識,需要的朋友可以參考下
    2015-08-08
  • Python實現(xiàn)把回車符\r\n轉換成\n

    Python實現(xiàn)把回車符\r\n轉換成\n

    這篇文章主要介紹了Python實現(xiàn)把回車符\r\n轉換成\n,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-04-04
  • 基于Python制作GIF表情包生成工具

    基于Python制作GIF表情包生成工具

    在當前無表情包不會聊天的時代,怎么也不能輸在表情包數(shù)量不足上啊,今天咱們就來基于Python制作一個?gif?生成工具,用來制作表情包也太好用啦
    2023-07-07
  • Python操作SQLite數(shù)據(jù)庫的方法詳解【導入,創(chuàng)建,游標,增刪改查等】

    Python操作SQLite數(shù)據(jù)庫的方法詳解【導入,創(chuàng)建,游標,增刪改查等】

    這篇文章主要介紹了Python操作SQLite數(shù)據(jù)庫的方法,簡單說明了sqlite數(shù)據(jù)庫的相關概念,并結合實例形式較為詳細的分析了Python針對sqlite數(shù)據(jù)庫的導入,創(chuàng)建,游標,增刪改查等操作技巧,需要的朋友可以參考下
    2017-07-07

最新評論