※社内勉強会準備の整理のための走り書きです。
ページ内の要素を表す際、IWebElementクラスを用いる。
また、そのためにはIWebDriverクラスを用いるが、導入までは割愛する。
IWebDriver driverとする。
1. ブラウザで開いているページ内の(表示領域内)要素をクリックする
driver.FindElement(By by).Click();
例1:範囲内にある最初のクラス aClass をクリックする。
driver.FindElemnt(By.ClassName("aClass")).Click();
例2:同上、ID bId をクリックする。
driver.FindElemnt(By.Id("bId")).Click();
例3:div要素上のクラス aClass 上にあるId bIdをクリックする。
driver.FindElemnt(By.CssSelector("div .aClass #bId")).Click();
2.要素A内の要素Bをクリックる
IWebElement varA = driver.FindElement(By by);
varA.FindElement(By by).Click();
例4:先ほどの例3
IWebDriver dibYouso = driver.FindElemnt(By.TagName("div"));
divYouso.FindElement(By.CssSelector(".aClass #bId")).Click();
3.条件に合致する全ての要素を取得する(表示領域外も)
ReadOnlyCollection<IWebElement> FindElments()
例5:ページ内のdiv要素を全てクリックする
ReadOnlyCollection<IWebElement> list = driver.FindElements(By.TagName("div"));
↓
foreach(IWebElement i in list){
i.Click();
}
課題: <div iroirokaitearuTagDayo style="display:none"/>の指定
hint . GetCssValue("display").Equals("none")