第四種方法:By CssSelector
這種方法據說比用xpath要快,性能比用xpath要好"很多",在這里我想說,如果真的要鉆牛角尖,那真比用xpath要快,但是差距可能也就是0.X秒,但是cssSelector比xpath更容易維護倒是真的,個人也比較喜歡這個方法,也比較容易上手,推薦大家看看css的東西對于加深UI的理解還是很有幫助的(http://www.w3school.com.cn/css/css_syntax_attribute_selector.asp)這里還要提下怎么樣找到元素更簡單就怎么用,至于腳本開發效率和以后的維護和性能自己權衡利弊,重要的是達成一致的規范,把簡單的事情做復雜了那不是牛逼那是×××,貌似扯淡了。。。。
基本語法為
driver.findElement(By.cssSelector("****"));這里介紹一個工具叫firefind,firebug下的插件,這個插件可以幫助你用cssSelector識別元素,舉個例子比如說我要找百度首頁的那個百度logo,首先用firefox打開百度頁面,然后按下F12打開firebug,切換到FireFinder,然后輸入CSS屬性去匹配,如果屬性描述正確,百度logo將被高亮出來如圖:
第五種方法:By linkText
這種方法就更直白了,就是根據link的名稱來識別元素,比如百度首頁有一個地圖的link,只要根據link 的名字"地圖"就可以識別了,基本語法為
driver.findElement(By.linkText("地圖"));
第六種方法: By className
這種方法就是根據元素的class屬性來識別元素的,但是可能有好多的元素的class name 是一樣的,這樣取到的就是元素的集合,基本語法為
driver.findElement(By.className("**"));
第七種方法為: By TagName
這種方法就是根據元素的TagName來識別元素的,比如有一元素html代碼為:<iframe. src="..."></iframe>
就可以用這樣的語法來識別該元素:
driver.findElement(By.tagName("iframe"));
當然還有很多其他的方法,這里就不一一描述了,方法是死的,能用好,能好用才有價值!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。