国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

宿松網(wǎng)站建設(shè)青島關(guān)鍵詞排名哪家好

宿松網(wǎng)站建設(shè),青島關(guān)鍵詞排名哪家好,免備案虛擬主機(jī)哪家好,如何編寫一個(gè)軟件😏作者簡介:博主是一位測試管理者,同時(shí)也是一名對(duì)外企業(yè)兼職講師。 📡主頁地址:【Austin_zhai】 🙆目的與景愿:旨在于能幫助更多的測試行業(yè)人員提升軟硬技能,分享行業(yè)相關(guān)最新信息?!?article class="baidu_pl">

在這里插入圖片描述

?
?

😏作者簡介:博主是一位測試管理者,同時(shí)也是一名對(duì)外企業(yè)兼職講師。
📡主頁地址:【Austin_zhai】
🙆目的與景愿:旨在于能幫助更多的測試行業(yè)人員提升軟硬技能,分享行業(yè)相關(guān)最新信息。
💎聲明:博主日常工作較為繁忙,文章會(huì)不定期更新,各類行業(yè)或職場問題歡迎大家私信,有空必回。

在這里插入圖片描述

?
?

閱讀目錄

  • 1. 目的
  • 2. 管理方法
  • 3. 配置方法
  • 4. 方法實(shí)現(xiàn)
  • 5. 使用注意點(diǎn)

1. 目的

??web自動(dòng)化測試作為軟件自動(dòng)化測試領(lǐng)域中繞不過去的一個(gè)“香餑餑”,通常都會(huì)作為廣大測試從業(yè)者的首選學(xué)習(xí)對(duì)象,相較于C/S架構(gòu)的自動(dòng)化來說,B/S有著其無法忽視的諸多優(yōu)勢,從行業(yè)發(fā)展趨、研發(fā)模式特點(diǎn)、測試工具支持,其整體的完整生態(tài)已經(jīng)遠(yuǎn)遠(yuǎn)超過了C/S架構(gòu)方面的測試價(jià)值。

??接下來我們在上一次的基礎(chǔ)之上,對(duì)已經(jīng)初具雛形的自動(dòng)化代碼進(jìn)行補(bǔ)充和優(yōu)化,利用python的特性來對(duì)定位元素的管理方法進(jìn)行設(shè)計(jì)并講解其中的思路與注意點(diǎn)。

?
?

2. 管理方法

??一般來說,界面元素的信息管理方法比較常見的有配置文件、持久化、專項(xiàng)平臺(tái)和工具等。如何取舍大家也是眾說紛紜,但既然我們使用了python這門語言,那么就要好好利用其優(yōu)勢,將管理的成本(人力、耗時(shí)等)降到最低。相較于一般文本,我們可以使用ini格式的配置文件來對(duì)已知曉具體信息的元素進(jìn)行統(tǒng)一的管理,將業(yè)務(wù)代碼與界面元素進(jìn)行有效分離,減少后期因需求變動(dòng)而發(fā)生的大量維護(hù)工作。

??通過以上所說的方法,我們可以將大部分常用的元素信息錄入進(jìn)配置文件,即使后期產(chǎn)品或項(xiàng)目發(fā)生了變更,我們也可以靈活應(yīng)對(duì)。舉個(gè)例子,如果產(chǎn)品或項(xiàng)目發(fā)生了邏輯與功能的變更,那么我們只修改業(yè)務(wù)代碼即可;若是發(fā)生了UI變更,我們也只需要修改對(duì)應(yīng)的配置文件。這樣的低耦合自動(dòng)化框架才可以有效的提升日常的測試團(tuán)隊(duì)工作效率。

??另外,鑒于大部分團(tuán)隊(duì)內(nèi)會(huì)有多名測開角色的存在,在定義配置文件之初,也應(yīng)該有效的開展團(tuán)隊(duì)內(nèi)的討論,將配置文件的一些總要因素(編寫與命名規(guī)范、存放路徑等)進(jìn)行充分的認(rèn)知統(tǒng)一與整合。以防在后期使用時(shí)出現(xiàn)元素名不同而無法找到等等諸如此類的低級(jí)錯(cuò)誤。

?
?

3. 配置方法

??接下來我們先來看下一般的配置文件內(nèi)都需要寫哪些內(nèi)容,下圖展示的是登錄頁面的相關(guān)元素定位信息,這里還是給大家說一下,如果系統(tǒng)的規(guī)模不是太大的話建議還是把所有的元素信息放在一個(gè)配置文件內(nèi)進(jìn)行管理,不宜進(jìn)行多路徑多文件的分散處理。

??文件的格式基本就是ini的配置格式,內(nèi)容由多個(gè)section構(gòu)成(方括號(hào)內(nèi)),每個(gè)section內(nèi)可以存在多個(gè)配置項(xiàng),每一條配置項(xiàng)由配置項(xiàng)名稱、定位方法、定位值組成。配置項(xiàng)名稱不用多解釋,在代碼中會(huì)直接使用到,可以簡單的理解為類似變量名,后面的id則是定位方法,這里不拘泥于id,如果要使用其他的定位方式,改成對(duì)應(yīng)的方法即可,具體的定位方法可以參看前一篇中的get_element方法。當(dāng)中的冒號(hào)則只是方便后期在業(yè)務(wù)代碼中進(jìn)行取值的分割,不強(qiáng)制使用冒號(hào),其他符號(hào)均可。最后的是定位值,也就是開發(fā)同學(xué)在開發(fā)界面中各類元素的對(duì)應(yīng)屬性的屬性值,這里要注意的是,值必須和你前面指定的方法相對(duì)應(yīng),千萬不能搞錯(cuò)。

在這里插入圖片描述
?

這里舉個(gè)簡單的例子,比如LoginPageElement類中有一個(gè)get_element的方法,那我們將原有的業(yè)務(wù)代碼內(nèi)元素轉(zhuǎn)化為配置文件的方法為:

log_pg_ele = LoginPageElement('chrome')
log_pg_ele.get_element('id', 'transaction_log_treaty')

在這里插入圖片描述
?

??是不是很簡單,因?yàn)樵谠械膅et_element方法內(nèi),我們已經(jīng)定義了相關(guān)的定位方法與定位值這兩個(gè)參數(shù),所以根據(jù)配置文件的配置項(xiàng)組成方式可以進(jìn)行無縫轉(zhuǎn)換,無須再進(jìn)行額外的操作。

?
?

4. 方法實(shí)現(xiàn)

??有了對(duì)應(yīng)的配置文件,我們就可以使用python來設(shè)計(jì)實(shí)現(xiàn)相關(guān)的配置解析與元素調(diào)用方法。這里我們先將對(duì)應(yīng)的ini文件創(chuàng)建在各自項(xiàng)目指定的目錄中,再啰嗦一次,如果是團(tuán)隊(duì)公用,文件名與存放路徑需要統(tǒng)一。

??假設(shè)我的配置文件名為FundManSys.ini,存放在項(xiàng)目的conf文件夾下。我們在使用python解析配置文件之前,需要先安裝對(duì)應(yīng)的功能模塊。這里我們使用configparser這個(gè)庫,它可以讀取解析我們一般的ini類配置文件。

??無論是python interpreter亦或是pip install都可以,安裝完成之后我們開始進(jìn)行整體的功能設(shè)計(jì)與實(shí)現(xiàn)。

??首先,我們先將讀取配置文件的功能進(jìn)行實(shí)現(xiàn)。這里我創(chuàng)建了一個(gè)類,但沒有寫出來,我們直接展示其內(nèi)的方法,名字什么的大家可以自由發(fā)揮, 構(gòu)造函數(shù)中將需要指定的節(jié)點(diǎn)名稱帶入,如果不指定名稱,則帶入特定值。第二段代碼通過調(diào)用方法ConfigParser來讀取解析配置文件,read()內(nèi)填寫配置文件的路徑與文件名,這里設(shè)置了變量,最后將整個(gè)對(duì)象返回出來。

def __init__(self, section=None):if section:self.section = sectionelse:self.section = 'business_log_v2'def load_ini(self):cf = configparser.ConfigParser()cf.read(ini_file)return cf

?
??那么取得對(duì)象之后我們?nèi)绾握{(diào)用里面的信息呢,接下來就需要對(duì)其內(nèi)進(jìn)行進(jìn)一步的處理實(shí)現(xiàn)。這里使用了鏈?zhǔn)綄懛?#xff0c;不這么寫的話也可以在構(gòu)造函數(shù)中的定義一個(gè)變量來接收load_ini方法中返回的對(duì)象。section和key兩個(gè)參數(shù)也不用多說了吧,分別對(duì)應(yīng)的已經(jīng)很明顯了。

def get_data(self, key):data = self.load_ini().get(self.section, key)return data

?
??基本的配置文件解析功能就設(shè)計(jì)封裝好了,是不是很簡單?那么我們拿到想要數(shù)據(jù)之后如何實(shí)際結(jié)合至現(xiàn)有的元素操作代碼中去呢,緊接著我們就可以開始將業(yè)務(wù)代碼與實(shí)際配置功能進(jìn)行對(duì)接了。

??我們把之前設(shè)計(jì)的get_element方法進(jìn)行優(yōu)化,添加取得數(shù)據(jù)并處理的操作。
這里實(shí)例化的load_ini因?yàn)闆]有指定節(jié)點(diǎn)名,就會(huì)默認(rèn)使用business_log_v2節(jié)點(diǎn)名。這里已經(jīng)將原來的方法參數(shù)進(jìn)行變更,可以看到變更后的參數(shù)變少了,原有的by與ele兩個(gè)參數(shù)也被配置項(xiàng)中的定位方法與定位值所替代,這也就是我們要達(dá)到的目的。具體變化大家可以對(duì)比前一篇中的get_element方法。

def get_element(self, key):element = Noneload_ini = EleConfiguration()data = load_ini.get_data(key)by, ele = data.split(':')try:if by == 'id':element = self.driver.find_element(By.ID, ele)elif by == 'name':element = self.driver.find_element(By.NAME, ele)elif by == 'css':element = self.driver.find_element(By.CSS_SELECTOR, ele)elif by == 'class':element = self.driver.find_element(By.CLASS_NAME, ele)else:element = self.driver.find_element(By.XPATH, ele)except:session.add(ele_err_msg)session.commit()return element

?
??至此我們的整體配置管理設(shè)計(jì)已經(jīng)完成,真實(shí)的使用過程中我們只需要根據(jù)自己的實(shí)際場景進(jìn)行頁面業(yè)務(wù)邏輯的代碼編寫即可,無論是何種界面業(yè)務(wù)操作都可以直接實(shí)例化并調(diào)用get_element方法來進(jìn)行元素定位了,并且由于真實(shí)元素信息與業(yè)務(wù)代碼分開的關(guān)系,整體的可讀性與維護(hù)性也是大大提升。

?
?

5. 使用注意點(diǎn)

1.python2與3的版本內(nèi)configparser模塊的名字不同,有大小寫之分,需要注意,2是ConfigParser,3是configparser;
2.配置項(xiàng)內(nèi)的鍵值對(duì)如果連接符號(hào)使用冒號(hào),注意中英文狀態(tài),以免出現(xiàn)使用中文冒號(hào)而意外報(bào)錯(cuò)的情況出現(xiàn);
3.配置文件中不要設(shè)置過多的section名,過多的名稱容易讓配置文件的內(nèi)容過于混亂,不予與維護(hù);
4.與其說注意更不如說是規(guī)范,配置文件內(nèi)的各類名稱盡量都使用英文來定義,和編寫代碼的命名意義差不多,拼音不應(yīng)該出現(xiàn)在此類的配置文件內(nèi)。

http://m.aloenet.com.cn/news/38599.html

相關(guān)文章:

  • 北京上海網(wǎng)站建設(shè)無經(jīng)驗(yàn)?zāi)茏鰏em專員
  • dremrever怎么做網(wǎng)站網(wǎng)店如何做推廣
  • 網(wǎng)站怎么做構(gòu)成網(wǎng)址查詢工具
  • 網(wǎng)站建設(shè)教程多少錢sem和seo有什么區(qū)別
  • 單頁面網(wǎng)站好優(yōu)化嗎成人職業(yè)技能培訓(xùn)有哪些項(xiàng)目
  • 動(dòng)漫制作專業(yè)簡介桂林網(wǎng)站優(yōu)化
  • 南陽最新通知今天我贏網(wǎng)seo優(yōu)化網(wǎng)站
  • 大數(shù)據(jù)對(duì)網(wǎng)站建設(shè)教育的影響企業(yè)推廣宣傳方案
  • 做網(wǎng)站主機(jī)客戶管理系統(tǒng)
  • yourphp企業(yè)網(wǎng)站管理系統(tǒng)360優(yōu)化大師舊版本
  • 為什么網(wǎng)站需要維護(hù)怎樣免費(fèi)推廣自己的網(wǎng)站
  • 蘇州公司辦理深圳seo論壇
  • 有趣網(wǎng)站開發(fā)手機(jī)百度助手
  • 游戲網(wǎng)頁版谷歌廣告優(yōu)化師
  • 網(wǎng)上做涉黃網(wǎng)站怎么判北京網(wǎng)聘咨詢有限公司
  • 網(wǎng)站首頁輪播百度搜索指數(shù)的數(shù)據(jù)來源
  • 國際網(wǎng)站賣東西怎么做新手怎么做電商
  • wordpress網(wǎng)站360搜索收錄排行榜
  • 中國機(jī)械加工外協(xié)網(wǎng)最新訂單seo優(yōu)化方法有哪些
  • 案例學(xué) 網(wǎng)頁設(shè)計(jì)與網(wǎng)站建設(shè)做網(wǎng)站流程
  • 網(wǎng)站開發(fā)哪好軟文代寫公司
  • 一個(gè)教做網(wǎng)頁的網(wǎng)站網(wǎng)站如何推廣運(yùn)營
  • 重慶網(wǎng)站seo方法網(wǎng)站優(yōu)化技巧
  • 網(wǎng)站建設(shè)與制作這個(gè)行業(yè)怎么樣呢百度廣告怎么投放
  • 信息技術(shù)八年級(jí)上冊網(wǎng)站建設(shè)鄭州seo實(shí)戰(zhàn)培訓(xùn)
  • 甘肅省建設(shè)廳執(zhí)業(yè)資格注冊中心網(wǎng)站拉新推廣
  • 如何把自己做的網(wǎng)站windows優(yōu)化大師怎么使用
  • 做策劃的人經(jīng)常瀏覽的網(wǎng)站百度網(wǎng)址大全首頁鏈接
  • 凡科自助建站靠譜嗎百度推廣獲客
  • 做網(wǎng)站是個(gè)什么行業(yè)安卓優(yōu)化清理大師