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

基于python全局設(shè)置id 自動(dòng)化測(cè)試元素定位過(guò)程解析

 更新時(shí)間:2019年09月04日 11:44:12   作者:橋南小院  
這篇文章主要介紹了基于python全局設(shè)置id 自動(dòng)化測(cè)試元素定位過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

背景:

在自動(dòng)化化測(cè)試過(guò)程中,不方便準(zhǔn)確獲取頁(yè)面的元素,或者在重構(gòu)過(guò)程中方法修改造成元素層級(jí)改變,因此通過(guò)設(shè)置id準(zhǔn)備定位。

一、python準(zhǔn)備工作:

功能:用自動(dòng)化的方式進(jìn)行批量處理。 比如,你想要在大量的文本文件中執(zhí)行查找/替換,或者以復(fù)雜的方式對(duì)大量的圖片進(jìn)行重命名和整理。

語(yǔ)法用例:

#!/usr/bin/python //腳本語(yǔ)言的第一行,只對(duì) Linux/Unix 用戶適用,用來(lái)指定本腳本用什么解釋器來(lái)執(zhí)行,即:調(diào)用 /usr/bin 下的 python 解釋器,推薦使用#!/usr/bin/env python 會(huì)去環(huán)境設(shè)置尋找 python 目錄,可以增強(qiáng)代碼的可移植性,不要寫(xiě)死路徑
 
print "Hello, World!" // 輸出內(nèi)容

python script.py // 使用python變量調(diào)用腳本:#!/usr/bin/python 被忽略,等同于注釋
python3 hello.py // pyhton3版本執(zhí)行
 ./script.py // 在python程序執(zhí)行:#!/usr/bin/python 指定解釋器的路徑

中文編碼:Python3.X 源碼文件默認(rèn)使用utf-8編碼,所以可以正常解析中文,無(wú)需指定 UTF-8 編碼。查看:python -V

#!/usr/bin/python
# -*- coding: UTF-8 -*- //默認(rèn)的編碼格式是 ASCII 格式無(wú)法輸出漢字
 print "你好,世界";
#!/usr/bin/python3 // python3版本
 print("Hello, World!")

下載:Python官網(wǎng):https://www.python.org/

設(shè)置環(huán)境變量(一般自動(dòng)設(shè)置cmd):

path=%path%;C:\Python //注意: C:\Python 是指Python的安裝目錄

下面幾個(gè)重要的環(huán)境變量,它應(yīng)用于Python:

變量名 描述
PYTHONPATH PYTHONPATH是Python搜索路徑,默認(rèn)我們import的模塊都會(huì)從PYTHONPATH里面尋找。
PYTHONSTARTUP Python啟動(dòng)后,先尋找PYTHONSTARTUP環(huán)境變量,然后執(zhí)行此變量指定的文件中的代碼。
PYTHONCASEOK 加入PYTHONCASEOK的環(huán)境變量, 就會(huì)使python導(dǎo)入模塊的時(shí)候不區(qū)分大小寫(xiě).
PYTHONHOME 另一種模塊搜索路徑。它通常內(nèi)嵌于的PYTHONSTARTUP或PYTHONPATH目錄中,使得兩個(gè)模塊庫(kù)更容易切換。

擴(kuò)展:

1.集成開(kāi)發(fā)環(huán)境(IDE:Integrated Development Environment): PyCharm

2.對(duì)于 Python 學(xué)習(xí)的新手來(lái)說(shuō),安裝 Anaconda 包管理軟件 是一個(gè)不錯(cuò)的選擇

3.cmd 美化參考:https://zhuanlan.zhihu.com/p/31904974

二、實(shí)際應(yīng)用:對(duì)指定元素添加id屬性

正則函數(shù):

re.match(pattern, string, flags=0) // 參數(shù)說(shuō)明:正則規(guī)則,字符串,標(biāo)志位,如果字符串不符合正則表達(dá)式,則匹配失敗
re.search(pattern, string, flags=0) // 匹配整個(gè)字符串,直到找到一個(gè)匹配。

例:

#!/usr/bin/python3
import re 
line = "Cats are smarter than dogs"; // 貓比夠更小
 matchObj = re.match( r'dogs', line, re.M|re.I)
if matchObj:
  print ("match匹配 : ", matchObj.group()) // No match
else:
  print ("No match!!")
matchObj = re.search( r'dogs', line, re.M|re.I)
if matchObj:
  print ("search匹配: ", matchObj.group()) // dogs
else: print ("No match!!")

實(shí)例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
import re
import random
count=0
allbutton=set()
def buttonid(m):
  return "<el-button id='kp_but_%s' " % str(round(random.random()*10000))

for root, dirs, files in os.walk(".\src", topdown=False):
  for name in files:
    
    if os.path.splitext(name)[-1] == ".vue":
      
      # print( os.path.splitext(name)[-1])
      # print(name)
      filePath=os.path.join(root, name)
      file=open(filePath, mode='r+',encoding='UTF-8')
      content=file.read()
      searchObj=re.search( r'<el-button\s+', content, re.M|re.I)
      if searchObj:
        
        content = re.sub(r'<(el-button\s+)(?![a-zA-Z=\'\.;\%\-:"\s0-9@]*:?id=[a-zA-Z;=\'\.\%\-:"+$\s0-9@]*)',buttonid , content)
        count+=1
        # allbutton.add(searchObj.group())

        file=open(filePath, mode='w',encoding='UTF-8')
        lent=file.write(content)
        print(lent)
      else:
        print('None')
        
      # print(content)
  # for name in dirs:
  #   print(os.path.join(root, name))
print(count)

使用說(shuō)明:

1.將當(dāng)前文件test.py放在項(xiàng)目根目錄(與./src同級(jí));

2.下載python執(zhí)行該文件即可:

python test.py

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python實(shí)現(xiàn)的基于優(yōu)先等級(jí)分配糖果問(wèn)題算法示例

    Python實(shí)現(xiàn)的基于優(yōu)先等級(jí)分配糖果問(wèn)題算法示例

    這篇文章主要介紹了Python實(shí)現(xiàn)的基于優(yōu)先等級(jí)分配糖果問(wèn)題算法,涉及Python針對(duì)列表的遍歷、判斷、計(jì)算等相關(guān)操作技巧,需要的朋友可以參考下
    2018-04-04
  • Python實(shí)現(xiàn)windows下模擬按鍵和鼠標(biāo)點(diǎn)擊的方法

    Python實(shí)現(xiàn)windows下模擬按鍵和鼠標(biāo)點(diǎn)擊的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)windows下模擬按鍵和鼠標(biāo)點(diǎn)擊的方法,涉及Python模擬實(shí)現(xiàn)鼠標(biāo)及鍵盤(pán)事件的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • python放大圖片和畫(huà)方格實(shí)現(xiàn)算法

    python放大圖片和畫(huà)方格實(shí)現(xiàn)算法

    這篇文章主要為大家詳細(xì)介紹了python放大圖片和畫(huà)方格實(shí)現(xiàn)算法,實(shí)現(xiàn)圖片的放大縮小功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • python OpenCV實(shí)現(xiàn)答題卡識(shí)別判卷

    python OpenCV實(shí)現(xiàn)答題卡識(shí)別判卷

    這篇文章主要為大家詳細(xì)介紹了python OpenCV實(shí)現(xiàn)答題卡識(shí)別判卷,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • pandas pd.cut()與pd.qcut()的具體實(shí)現(xiàn)

    pandas pd.cut()與pd.qcut()的具體實(shí)現(xiàn)

    本文主要介紹了pandas pd.cut()與pd.qcut()的具體實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • Pytorch 如何加速Dataloader提升數(shù)據(jù)讀取速度

    Pytorch 如何加速Dataloader提升數(shù)據(jù)讀取速度

    這篇文章主要介紹了Pytorch 加速Dataloader提升數(shù)據(jù)讀取速度的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python線程、進(jìn)程和協(xié)程詳解

    python線程、進(jìn)程和協(xié)程詳解

    Python被人詬病最多的大概就是性能差,在這里講一下 Python 的多進(jìn)程,多線程與協(xié)程。首先聲明這不是教程,看完這篇文章,大概能夠?qū)?Python 的多進(jìn)程與多線程有一定的了解。
    2016-07-07
  • Django如何開(kāi)發(fā)簡(jiǎn)單的查詢接口詳解

    Django如何開(kāi)發(fā)簡(jiǎn)單的查詢接口詳解

    這篇文章主要給大家介紹了使用Django如何開(kāi)發(fā)簡(jiǎn)單的查詢接口的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Django具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 如何安裝并在pycharm使用selenium的方法

    如何安裝并在pycharm使用selenium的方法

    這篇文章主要介紹了如何安裝并在pycharm使用selenium,本文給大家提到了selenium安裝并導(dǎo)入pycharm的教程,本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Python3.x+pyqtgraph實(shí)現(xiàn)數(shù)據(jù)可視化教程

    Python3.x+pyqtgraph實(shí)現(xiàn)數(shù)據(jù)可視化教程

    這篇文章主要介紹了Python3.x+pyqtgraph實(shí)現(xiàn)數(shù)據(jù)可視化教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03

最新評(píng)論