seleniumer’s diary

「手動でExcelにスクショ貼付け」地獄からきました。テスト自動化しか望みがありません。java + selenium(since 2015/5)

seleniumテストコードを書く

テストコードを書いてみます。

って公開用コードを書くのもなんなので、こちらのサイトがとても詳しく解説されています。

quesqa.com

 

段取りとしては

DesiredCapabilitiesを設定してから、WebDriverを起動

WebDriver driver = new RemoteWebDriver(new URL("{ノードURL}"), capability);

URLにアクセス

driver.get({行き先URL});

findElementでロケータを指定してWebElement(コントロールっすね)を取得。

WebElement element = driver.findElement(By.cssLocator("input#hoge"));

んで、そのElementにアクセス

element.sendKeys("こんにちは");

とか

element.click();

ってな感じです。

Webブラウザの自動化テストあるあるで待機時間のおきかたが悩ましいところなのですが、httpリクエスト後の画面表示は、いちおうWebDriverの方で待機してくれるみたいです。Ajax非同期通信的なやつは難しいみたいですが

待機条件の指定とかはこの記事がとても参考になりました。

softwaretest.jp

 

さらに深いところだとこのページがとても参考になりました。

ExpectedConditionsクラスは、待機条件をピンポイントで指定できるので便利なのですが、これだけでは足りない場合は自分で条件を書いたりしました。

WebDriver Wait Commands | Assert Selenium

 

ここまでで、基本的なブラウザ・アクセスはできるようになったので

次にちょっと踏み込んだところに言ってみたいと思います。