[Sy] Selenium WebDriver (Ruby) にて、要素の width と height を取得する方法
2016/08/21
Webサイトのテスト自動化などに便利な Selenium WebDriver を Ruby で使ってみてます。
要素の幅と高さ( width と height )を取得する必要があったのですが、パッとわからなかったのでメモです。
まずは要素を取得する必要があるので、今回はclass名(例としてclass="target"
)を指定して要素を取得します。なお、Chromeのドライバを使用します。
require 'selenium-webdriver'
# Chromeのドライバを使用
driver = Selenium::WebDriver.for :chrome
# ページを取得
driver.get "http://example.com/aaa/bbb"
# 幅と高さを知りたい要素をclass名を指定して取得
element = driver.find_element(:css, ".target")
これでclass名がtarget
となっている要素が一つ取れたので、幅と高さを取得します。
# elementの幅を取得
width = element.size.width
# elementの高さを取得
height = element.size:height
いきなりelement.width
といった取得はできないので、まずはsize
メソッドを呼び出して、その返り値からwidth
とheight
をそれぞれ取る必要があります。