Watir 進行物件識別方式

2021-06-01 20:15:21 字數 1231 閱讀 5272

#單屬性查詢

#當頁面中某物件可以由某個屬性唯一標識時,可以用單屬性查詢法。其語法遵循$ie.object_class(:, 「 」 ), 如

# 多屬性組合查詢

#當乙個頁面中存在多個屬性相同的物件,不能通過單個屬性來識別某個物件時,我們可以用多個屬性組合來查詢,如一資料**中有多行,每行分別有乙個 radio 按鈕,

#它們名字屬性相同,在這種情況下,我們可以通過兩個屬性,如名字 (name) 和索引 (index) 的組合來進行查詢。

$ie.radio(:name => 'employees', :index => 2).exists?

# 正規表示式匹配

# watir 支援正規表示式模糊匹配,它適合於識別動態建立的頁面物件。其語法是查詢條件為正規表示式,正規表示式由字串前後附加的兩個反斜槓 // 來標明 ,

# 如 was console 鏈結由於主機名依賴於測試環境,所以我們可以用以下幾種正規表示式查詢方法來識別。

$ie.link(:url, /9043/ibm/console/).click

#或者是

#注:* 代表任何字元,一些特殊字元,如」().」需要轉義 , 我們可以在 irb 模式下輸入 regexp.escap 「 」 , 就能得到轉義後的字串

# xpath 查詢

=begin

xpath 是 watir 提供的乙個強大查詢。我們在開發 web 自動化程式的時候可能會經常碰到,一些物件很難被乙個或一些屬性來唯一描述,

此時使用 xpath 查詢就非常必要。另外,當頁面 dom 樹結構較為複雜(如有很多巢狀的**),而查詢物件在較深的層次時,

使用 xpath 查詢會加速物件的搜尋。其表示式為$ie.object_class(:xpath, 「 xpath query 」 ),比如:

=end

$ie.table(:xpath, "//table[@id='t1']/").exists?

watir不能識別frame解決辦法

這個問題網上可以搜到很多,但是都是場面上的東西 都是要求必須要使用frame標籤,不能跳過這個而直接定位到frame下的子標籤。比如 ie.frame menu link text,click menu item click 除此之外,frame的識別如果是通過webdriver去跑用例的話,一般能...

使用Watir進行跨瀏覽器自動化測試

我們來看看開發人員如何使用watir和ruby在本地執行跨瀏覽器自動化測試 什麼是跨瀏覽器並行測試自動化?執行跨瀏覽器並行測試以同時跨多個瀏覽器組合執行單個測試。這是乙個非常實用且功能強大的自動化測試方案。跨瀏覽器並行測試自動化允許您縮短執行時間,同時不會影響檢查的覆蓋範圍,從而加快測試結果的速度。...

人臉識別 通過opencv進行人臉識別

opencv人臉識別主要有3種演算法 具體步驟 一 人臉的訓練,需要將訓練中人臉扣出 正臉 轉化灰度圖 直方圖均衡化 訓練 二 經過同樣步驟處理,然後 每個檔案裡有幾張訓練 使用官方提供的模型構建特徵提取器 predictor dlib.shape predictor predictor path ...