WebDriver始めました

Slenium WebDriver始めました。 完全に自分向け

要素を取得する(cssSelector)

WebDriver.findElement(By.cssSelector("body"));
WebDriver.findElements(By.cssSelector("li"));

特定番目を取得する

WebDriver.findElements(By.cssSelector("li")).get(0);

数を取得する

WebDriver.findElements(By.cssSelector("li")).getSize();

クリック

WebElement button = WebDriver.findElements(By.cssSelector("button")).get(0);
click(button);

セレクトボックス

Select selectBox = new Select(WebElement);
selectBox.selectByValue(String);
selectBox.selectByIndex(int);

チェックボックス

public void setCheckBox(WebElement checkBox, Boolean check) {
  if (checkBox.isSelected() != check) {
    click(checkBox);
  }
}
WebElement checkBox = WebDriver.findElement(By.cssSeletor("#agree"));
setCheckBox(checkBox, true);

文字を入力

WebElement input = WebDriver.findElement(By.cssSeletor("input#sample"));
input.sendKeys("hogehoge");

//BackSpace
input.sendKeys(Keys.BACK_SPACE);
//ENTER
input.sendKeys(Keys.ENTER);

// 削除する
input.clear();

待つ

// 押せるようになるまで待つ
WebElement button = WebDriver.findElement(By.cssSelector("button"));
wait.until(ExpectedConditions.elementToBeClickable(button));

// 見えるまで待つ
WebElement header = WebDriver.findElement(By.cssSelector("header"));
wait.until(ExpectedConditions.visibilityOf(header));

// 見えなくなるまで待つ
WebEkenebt indicator = WebDriver.findElement(By.cssSelector(".indicator"));
wait.until(ExpectedConditions.invisibilityOf(indicator));

// 消えるまで待つ
WebEkenebt indicator = WebDriver.findElement(By.cssSelector(".indicator"));
wait.until(ExpectedConditions.stalenessOf(indicator));

// テキストの文字列になるまで待つ
WebElement h1 = WebDriver.findElement(By.cssSelector("h1"));
wait.until(ExpectedConditions.textToBePresentInElement(h1, "riririusei99"));

Cookieの操作

// 追加
WebDriver.manage().add_cookie({'name': 'foo', 'value': 'bar'});
// 名前で削除
WebDriver.manage().deleteCookieNamed("foo");
// 全削除
WebDriver.manage().deleteAllCookies();