外部 css ファイルで定義されている Web ページ要素の css プロパティをテストするにはどうすればよいですか。たとえば、次のようにします。
<div id="some-div" style="opasity: 10;"></div>
style
属性の値を取得することもできますが、すべての css プロパティが外部の ccs ファイルで定義されています。そのような要素とそのプロパティをテストするにはどうすればよいですか?
外部 css ファイルで定義されている Web ページ要素の css プロパティをテストするにはどうすればよいですか。たとえば、次のようにします。
<div id="some-div" style="opasity: 10;"></div>
style
属性の値を取得することもできますが、すべての css プロパティが外部の ccs ファイルで定義されています。そのような要素とそのプロパティをテストするにはどうすればよいですか?
IWebElement.GetCssValue を使用する
計算された CSS スタイルを取得する方法があります。私はそれがIWebElement.GetCssValueメソッドであると信じています。
Ruby と Java のこのメソッドのドキュメントには、次のように記載されていることに注意してください。言及されていなくても、C#に当てはまると思います。
DOM CSS2 仕様に従って、簡略化された CSS プロパティ (例: background、font、border、border-top、margin、margin-top、padding、padding-top、list-style、outline、pause、cue) は返されないことに注意してください。- 目的の値にアクセスするには、ロングハンド プロパティ (背景色など) に直接アクセスする必要があります。
例 (ルビ)
私は ruby で selenium-webdriver しか実行していないので、ruby の例を示すことしかできません (API はわずかに異なりますが、考え方は同じです)。
require "selenium-webdriver"
driver = Selenium::WebDriver.for :firefox
driver.navigate.to "http://yourpage.com"
element = driver.find_element(:id, 'id')
puts element.css_value('color')