Selenide(fastSetValue=true)でSeleniumのフォーム入力を高速化できる!?JavaSeleniumSelenide 今回は、Seleniumのフォーム入力を高速化する方法を紹介します。 Seleniumを使ってフォーム入力を行なう場合は、通常はWebElementのclearやsendKeysメソッドを使いますが、入力文字数に比例して入力速度が遅くなる傾向があります。少ない文字数だと入力速度が遅くなることを体感するのは難しいですが、テキストエリアなどに大量の文字を入力すると、入力速度が遅くなることを体感することができます。 一般的なフォーム入力の方法 Seleniumでの一般的なフォーム入力の方法は、以下のような感じです。
遅れてスミマセン Chromium Browser Advent Calendar 2017の7日目の記事です。 背景 E2E テストの構成をあらためて作り直す中で、最新の Chrome Headless を Java 環境で使うための手段が気になりました。 環境は Mac を前提としていますが、幸い Linux でも動作に問題は無いはずです。 記事は 2017/12 ベースの最新バージョンを利用しています。 今日ベースの最新は Selenide: 4.9 Selenium Java Driver (org.seleniumhq.seleniu.selenium-chrome-driver): 3.8.1 SeleniumWebDriver 2.34 です。 結論から言うと、少なくとも現時点では ChromeWebDriver Java 版も対応が終わっており、更に言語に応じた適切な Se
はじめに E2EテストをSelenideで実装していたので、簡単に使い方のメモを残しておきます。 Selenideとは WebページをUIテストのためのSeleniumをWrapperしたJavaライブラリ ブラウザの設定などはライブラリ内でデフォルトを設定している 公式サイト(http://selenide.org/) UIテストの流れ UIテストの大まかな流れとしては以下の順番になります。 1. ページを表示 2. 画面操作 3. 結果を確認 UIテストの流れをSelenideでコード化すると以下の通り Selenide.open("URL"); // ページを表示 Selenide.$("#textarea").setValue("Hello World"); // テキストエリアに文字を挿入 Selenide.$("#button").click(); // ボタンをクリック Se
Webアプリケーションのテスト自動化に特化したJava用のフレームワーク「Selenide」は、人気のある「Selenium」と比べて大きなアドバンテージがある。使い方やコードを交えて解説しよう。 ブラウザテストに特化したフレームワーク「Selenide」 Webアプリケーションのブラウザテストを自動化するツールとして、「Selenium」がよく知られています。@ITの読者でも使っている方は多いのではないでしょうか。人気のあるSeleniumですが、実際に使っていると不満に思う点もあると思います。SeleniumはWebブラウザの操作を自動化するためのツールであり、Webアプリケーションのテストに特化したツールではありません。そのため、Seleniumを使ったテストコードには、冗長になってしまう部分がありました。 特に、非同期処理についてSeleniumは苦手としており、「Selenium
Selenideとは Selenideとは、Seleniumをより進化させたWebの自動テストフレームワークです。 以下のような特徴があります。 WebDriverを直接操作しない Seleniumでは画面を開いたり、要素を探したりするのにWebDriverを直接操作する必要がありました。 しかし、SelenideではWebDriverをフレームワークで隠蔽しており、使用者がSelenideの単純なメソッドを呼び出すだけで 各操作を実現できるようになっています。 Ajaxのサポート Ajaxを使用しているアプリを操作するためには、各操作ごとに待機時間が必要です。 Seleniumでは、各操作をするごとに使用者がwaitを記述しないといけませんでしたが、Selenideではフレームワークが自動で待機してくれます。 デフォルトでは、最大4秒間待機するようになっています。 ただし、これはすべての
以下記事の続きです。 Selenide~Javaで超簡単・簡潔にUIテストを書く~ http://qiita.com/tatesuke/items/589e30ab9b3dc7037e26 SelenideではPageオブジェクトパターンを利用することを薦められているようです。 なんだか仰々しい感じがしますが、 1つのページを1つのオブジェクトとして表現しよう ということです。つまり /* 検索ページ */ open("/login"); //"selenide"で検索 $(By.name("q")).setValue("selenide").pressEnter(); /* 検索結果ページ */ // 検索結果が10件あること $$("#ires li.g").shouldHave(size(10)); // 先頭の結果がSelenideのページであること。 $$("#ires li.g
はじめに Selenideを触ってみたら簡単なUIテストがサクッと書けて感動したので、使い方をまとめました。 Selenideとは SelenideはUIテストのためのSeleniumラッパーです。 Selenide: concise UI tests in Java http://selenide.org/ Java界隈でUIテストといえばSelenium(WebDriver)が有名で、大変優れたツールです。ですが、SeleniumはUIテストのためのツールではなく、ブラウザ操作のためのツールです1。 一方、Selenideは初めからUIテストのために設計されていて、UIテストを「スラスラ」書いて実行できます。ブラウザの閉じ方とか、タイムアウトとか、StaleElement Exceptionsの扱い方などを考える必要はなく、ユーザはテストに集中できるのが売りです。 Three simp
概要 Selenideとは、Junitベースのテストの中で ブラウザを操作し想定の画面遷移やデータが表示されるかの確認を行えるもの 初期設定 環境 言語:JDK 1.8 Mavenの記載 pom.xmlに以下の記載を追加 <dependencies> <!-- 中略 --> <dependency> <groupId>com.codeborne</groupId> <artifactId>selenide</artifactId> <version>4.9</version> <scope>test</scope> </dependency> </dependencies> 4.9:2018/3/12時点でのSelenideの最新バージョン SpringBootの場合 SpringBootを導入している場合、Selenideが参照しているライブラリ(Selenium)のバージョンが古いため
Selenium/Appium Advent Calendar 2016の15日目です。 今年から業務でSelenideを使い始めました。と言っても現在のところ先行して一人で使っているだけなので、チームメンバーへの共有と自分用のリファレンス目的でまとめてみました。 ※この記事は当初v4.1をベースに書きましたが、その後v4.8の変更を追記しています。 セットアップ ライブラリの設定 例えばGradleの場合はbuild.gradleに追加するだけです。 WebDriverの指定 Chromeを例に上げます。実際に使う時はシステムプロパティ経由で指定することが多いのかなと思いますが、お試しでJUnitで動かす場合は@BeforeClassにでもブラウザの指定を書いておけば良いかと思います。 chromedriverはここからをダウンロードしておきましょう。 上記のように自分でダウンロードして
Selenide Java Library:簡単なことは簡単に,Web UI テスト自動化の敷居を下げ,生産性をあげる魔法の WrapperJavaSeleniumテスト自動化Selenide プログラム上からブラウザの操作を支援する Selenium Library を利用して,jUnit / TestNG の文脈でより使いやすい機能を追加した Selenium Library を紹介します. Selenium (WebDriver) のちょっといけていない所 最初に Selenium WebDriver を触った瞬間に「これはすごい技術だ!」と感動したことを覚えています. 当時は Firefox Driver だけを利用していましたが,その後, Chrome Driver にもほとんどコードを書き換えることなく移行でき,その力を更に感じました. しかし現在,WebDriver を使うに
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く