91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用自動化測試工具實現元素定位?

發布時間:2020-05-23 13:51:57 來源:億速云 閱讀:330 作者:鴿子 欄目:移動開發

1、selenium元素定位樣例

 以下是一段Python+ selenium的用例樣例,對元素的操作是以元素id為基礎的

 from selenium import webdriver
 url = "http://10.98.110.44/egov-portal/egov/shIndex.html"
 # 打開瀏覽器,最大化瀏覽器
 driver = webdriver.Chrome()
 driver.get( url )
 driver.implicitly_wait( 10 )
 driver.maximize_window()
 #輸入賬號
 driver.find_element_by_id("username").send_keys(“zhangsan")
 #輸入密碼
 driver.find_element_by_id("password").send_keys("ww1234")
 #點擊登錄按鈕
 driver.find_element_by_id("submitButton").click()

 2、robotFramwork+seleniuLibrary元素定位樣例

如何用自動化測試工具實現元素定位?

3、UFT工具元素定位方法樣例

Dialog("Login").WinEdit("AgentName:").Set "mercury"
Dialog("Login_2").WinButton("Help").Click
Dialog("Login_2").Dialog("FlightReservations").Static("The password is 'MERCURY'").CheckCheckPoint("The password is 'MERCURY'")
Dialog("Login_2").Dialog("FlightReservations").WinButton("確定").Click
Dialog("Login").WinButton("OK").Click
Window("FlightReservation").Activate
Window("FlightReservation").ActiveX("MaskEdBox").Type "102715"
#選擇日期
Window("Flight Reservation").WinComboBox("FlyFrom:").Select "Frankfurt"

 從以上信息我看到,元素的定位都是通過元素的屬性定位,元素屬性主要有以下8種:

 1、id定位: driver.find_element_by_id("kw")

 2、name定位: driver.find_element_by_name("wd")

 3、class定位: driver.find_element_by_class_name("s_ipt")

 4、tag定位:driver.find_element_by_tag_name("input")

 5、link定位:driver.find_element_by_link_text("新聞")

 6、partial_link定位:driver.find_element_by_partial_link_text()

 7、xpath定位: driver.find_element_by_xpath("/html/body/div[2]/div/form/div/input")

 8、CSS定位:driver.find_element_by_css_selector

在現有的自動化軟件當中,都是以上述8種定位方式中的一種對元素進行定位。現在現實的測試環境經常不是我們想象的那樣平靜。頁面中出現id,name,tag 重復的很多。也許在我們寫用例的不重復,經過一輪版本修改后很可能變得重復了。xpath是最不可能失效的,但是經常因父節點的修改而導致失效是常有的事。因此自動化設計人員疲于奔命的維護用例,工作量非常的巨大。

 2008年市場上出現一款kylinTOP的軟件,支持智能元素定位, 我比較感興趣就去研究了一下,該軟件的用例主要通過錄制生成,錄制生成一些可視化的腳本,如下所示:錄制腳本是打開一個頁面,擊點一個按鈕。如何用自動化測試工具實現元素定位?

上圖是點按鈕的步驟,步驟中記錄了按鈕的多個屬性:title|alt、src、border、alt、xpath以及它的孩子信息。有些屬性并不能唯一定位元素(頁面中存在重復),如:border。kylinTOP記錄下了按鈕元素的所有身份信息。當筆者嘗試修改頁面代碼中title|alt的值 ,使頁面中title|alt的值有重復。在腳本回放時,仍然可以正常運行。恢復title|alt值 ,重復上述修改步驟,逐個修改其它屬性值,仍然不影響腳本運行。通過測試發現,修改按鈕任何屬性都不影響腳本執行。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

连江县| 虎林市| 东山县| 永平县| 南阳市| 永州市| 河源市| 贺州市| 民县| 望奎县| 南木林县| 吉林省| 台东市| 邵武市| 玛纳斯县| 普兰县| 中江县| 海安县| 和平县| 乌兰县| 绥中县| 长葛市| 田林县| 甘孜县| 子长县| 精河县| 新和县| 巴里| 楚雄市| 易门县| 曲水县| 鄯善县| 瓮安县| 黄梅县| 阳新县| 九江市| 根河市| 民勤县| 兴安县| 鄂托克前旗| 高雄县|