python自動化之函數封裝


函數最重要的目的是方便我們重復使用相同的一段程序。

將一些操作隸屬於一個函數,以后你想實現相同的操作的時候,只用調用函數名就可以,而不需要重復敲所有的語句。

前面一些記錄了selenium的各種API,包括它的安裝,以及unittest框架中的testcase,testsuite等的操作,還有元素定位的知識點。

(學會元素定位,特別是xpath與css的定位方法,然后准備一份API文檔,方便自己查閱。)

掌握了這些知識后,基本上的線性自動化測試模型可以操作了。對於一個系統也可以做冒煙測試了。

剩下的就是模塊化與數據化了。(模塊化與數據參數化有利於開發與維護自動化腳本,線性重復,維護成本高。)

所謂模塊化就是把相同步驟的封裝成一個模塊。例如,登錄就可以封裝成一個模塊了。因為它只是用戶名與密碼不一樣,但是操作步驟是一樣的。

而且如果以后登錄模塊發生變化了,我們只要更改登錄那個模塊就可以了,其它調用登錄模塊的地方都不需要去修改了。

在學習這一塊的時候,就會涉及到開發語言的函數這一塊知識了。

總之,樹立一個思想,模塊化就是把重復使用的操作步驟的定義成一個函數,然后后續其它部分需要使用的話,就調用這個函數名。

具體涉及的一些函數的語法,規范,參數等知識,如何調用等,自己去深入學習。

我自己對編程語言的掌握也不夠扎實,正在努力中。

望諸君共勉。

寫一個例子吧:

定義一個LOGIN1函數:

 from selenium import webdriver

def login1(driver,username,password):
    driver.find_element_by_css_selector("input.userInput").send_keys(username)
driver.find_element_by_css_selector("ul.submitContent.mglr30.regMain>li:nth-child(2)>input").send_keys(password)
driver.find_element_by_css_selector("a.mainColorBtn.submitBtnBig.ClickShade").click()
link=driver.find_element_by_css_selector("a._personalInfo>i").is_displayed()
print (link)
print (u"登陸成功")

調用這個LOGIN1函數:
 from selenium import webdriver
# from login3 import login1 #此處說明一下,PACKAGE的名稱是LOGIN3
# driver=webdriver.Chrome()
# driver.maximize_window()
# driver.implicitly_wait(10)
# driver.get("http://**************")
#
# username="ccc44400" ####此處我們可以設置不同的用戶名與密碼,來分別測試登錄的功能。
# password="ccc444"
#
# login1(driver,username,password) ####此處直接調用LOGIN1函數,
# driver.quit()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM