Selenium 網頁自動化測試 – 網頁元件定位技巧

Selenium 網頁自動化測試 – 網頁元件定位技巧

這篇文章主要說明在進行網頁自動畫測試時,如何有效定位找到網頁元件?

有效的定位找到網頁元件是自動化測試的第一步驟,我們討論幾種小技巧減少網頁元件定位錯誤。

 

1. 直接定位

考慮下列幾種方式的定位方式,其中筆者建議使用 Xpath

為什麼呢? 因為這樣就不用特別去注意到底是使用 ID or Name

全部使用 Xpath 後,可以在 Xpath 中指定使用 ID or Name

  • Id=Password
  • Name=Password_Field
  • Value=Password_Value
  • Link=Contact Us
  • Xpath=//*[@name=’Password_Field’]
  • Xpath=//*[@Id=’Password’]

2. Xpath 常用使用方式

下列是幾種 Xpath 常用的使用方式定位網頁元件

  • //*[contains(text(), ‘Partially Matched Contents’)]
  • //input[contains(@id, ‘myTextField’)]
  • //*[@name=’Password_Field’]
  • //*[@Id=’Password’]

舉例來說,有某些檔案下載的網址是隨機的亂數,但是附檔名都是 DOC ,這時候就可以利用 Xpath 小技巧來定位

http://www.fileconvoy.com/dfl.php?id=g9002d9ff1e9b6ddd999753374cf7af895e9a7d4d0
  • //*[contains(text(), ‘http://www.fileconvoy.com/dfl.php?id=’)]

如果找到多個網頁元件怎麼辦? 可以透過陣列的方式選取第1個、第2個..

  • (//*[contains(text(), ‘http://www.fileconvoy.com/dfl.php?id=’)])[1]
  • (//*[contains(text(), ‘http://www.fileconvoy.com/dfl.php?id=’)])[2]

 

 

xPath v/s CSS Locator Selenium

滑鼠與鍵盤操作

  • Click and ClickAt (當 Click 無法成功時才使用 ClickAt)
  • MouseDown and MouseDownAt
  • MouseUp and MouseUpAt
  • MouseMove and MouseMoveAt
  • DragDrop 
  • KeyDown and KeyUp (很少用。當上述方式都無法成功時才使用)

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *