第四種方法:By CssSelector

這種方法據(jù)說比用xpath要快,性能比用xpath要好"很多",在這里我想說,如果真的要鉆牛角尖,那真比用xpath要快,但是差距可能也就是0.X秒,但是cssSelector比xpath更容易維護倒是真的,個人也比較喜歡這個方法,也比較容易上手,推薦大家看看css的東西對于加深UI的理解還是很有幫助的(http://www.w3school.com.cn/css/css_syntax_attribute_selector.asp)這里還要提下怎么樣找到元素更簡單就怎么用,至于腳本開發(fā)效率和以后的維護和性能自己權衡利弊,重要的是達成一致的規(guī)范,把簡單的事情做復雜了那不是牛逼那是×××,貌似扯淡了。。。。
基本語法為
driver.findElement(By.cssSelector("****"));這里介紹一個工具叫firefind,firebug下的插件,這個插件可以幫助你用cssSelector識別元素,舉個例子比如說我要找百度首頁的那個百度logo,首先用firefox打開百度頁面,然后按下F12打開firebug,切換到FireFinder,然后輸入CSS屬性去匹配,如果屬性描述正確,百度logo將被高亮出來如圖:

第五種方法:By linkText
這種方法就更直白了,就是根據(jù)link的名稱來識別元素,比如百度首頁有一個地圖的link,只要根據(jù)link 的名字"地圖"就可以識別了,基本語法為
driver.findElement(By.linkText("地圖"));
第六種方法: By className
這種方法就是根據(jù)元素的class屬性來識別元素的,但是可能有好多的元素的class name 是一樣的,這樣取到的就是元素的集合,基本語法為
driver.findElement(By.className("**"));
第七種方法為: By TagName
這種方法就是根據(jù)元素的TagName來識別元素的,比如有一元素html代碼為:<iframe. src="..."></iframe>
就可以用這樣的語法來識別該元素:
driver.findElement(By.tagName("iframe"));
當然還有很多其他的方法,這里就不一一描述了,方法是死的,能用好,能好用才有價值!
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
文章題目:LocatingElements(二)-創(chuàng)新互聯(lián)
文章路徑:http://chinadenli.net/article0/spjoo.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站設計、網站營銷、虛擬主機、品牌網站制作、網站維護、網站改版
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容