selenium
の編集
http://java.boy.jp/pukiwiki/index.php?p=8e00596a
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
Markdown
]
-- 雛形とするページ --
StringTemplate
<!-- markdown --> # 目次 [TOC] # 趣旨 Selenium の WebDriverとかいろいろ、つまるので、メモする # pom.xml pom.xmlで追加する依存関係について、それぞれ説明します。 - 1. **Selenium WebDriver** (`selenium-java`) <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>4.18.1</version> </dependency> - ブラウザの自動操作を行うためのコアライブラリ - ブラウザの要素の検索、クリック、入力などの操作が可能 - 最新の4.18.1では、Chrome、Firefox、Edgeなどの主要ブラウザをサポート - 非同期処理の待機機能も提供 - 2. **JUnit Jupiter** (`junit-jupiter-api`, `junit-jupiter-engine`) <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <version>5.10.2</version> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <version>5.10.2</version> </dependency> - Javaの標準的なテストフレームワーク - テストケースの記述、実行、アサーションを提供 - `@Test`、`@BeforeEach`などのアノテーションを提供 - テストのライフサイクル管理機能を提供 - `junit-jupiter-api`: テスト記述用API - `junit-jupiter-engine`: テスト実行エンジン - 3. **WebDriverManager** (`webdrivermanager`) <dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.7.0</version> </dependency> - ブラウザドライバーの自動管理ツール - ChromeDriver、GeckoDriver(Firefox用)などを自動でダウンロード・設定 - ブラウザバージョンに適合したドライバーを自動選択 - 手動でのドライバー管理が不要になる - 4. **AssertJ** (`assertj-core`) <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>3.25.3</version> </dependency> - より流暢なアサーション記述を可能にするライブラリ - JUnitの標準アサーションより読みやすい文法を提供 - 例: // JUnitの場合 assertEquals(expected, actual); // AssertJの場合 assertThat(actual).isEqualTo(expected); ``` - 5. **Maven Surefire Plugin** (`maven-surefire-plugin`) <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.2.5</version> </plugin> - Mavenプロジェクトのテスト実行を管理するプラグイン - `mvn test`コマンドでテストを実行する際に使用 - テストレポートの生成 - テスト実行の設定(パターンによる実行するテストのフィルタ、並列実行など) それぞれの依存関係で`<scope>test</scope>`を指定しているのは: - これらのライブラリがテスト時のみ必要で、本番環境には不要なため - 最終的なアプリケーションのサイズを抑制 - テストコードと本番コードの依存関係を明確に分離 これらのライブラリを組み合わせることで: - 1. ブラウザの自動操作(Selenium) - 2. テストケースの記述と実行(JUnit) - 3. ドライバーの自動管理(WebDriverManager) - 4. 読みやすいアサーション(AssertJ) - 5. テスト実行の管理(Maven Surefire) という一連のテスト自動化が実現できます。 # その他 webdriverを使いはじめたので、メモする。 http://www.storklab.com/seleniumhq.org/docs/04_webdriver_advanced.html inputボックスに日本語を入れる http://ykmc09.blogspot.jp/2012/10/selenium-2-webdriver-input.html clickでとまってしまう対策 http://richtext.jp/pukiwiki/index.php?%B3%D0%BD%F1%A4%AD%2FSelenium2.0#f720d8ff なんか、confirmボタンを無理やりスキップする、ハック術がいまのところ有効 (2013/06/18時点でchromeDriverで確認した。) Web画面の自動テストの導入に失敗する理由とその対策 http://d.hatena.ne.jp/dkfj/20120531/1338422274 # webDriver ant単体で動くがJenkins通してantするとChromeWebDriverが起動しない。 なんでやねん WebDriverのchromeとfirefoxを使ってみて思ったことがある。 それは、WebDriverの作者はfirefoxをメインで使っているだろう。ということ、 動作の安定性、速度、chromeDriverよりも勝っているのだ。 ## firefoxの設定 Custom Firefox profile for Selenium http://www.qaautomation.net/?p=45 ## chromedriver.exeのオプション http://stackoverflow.com/questions/15822803/silencing-chromedriver-exe-logging # Selenium を使用して Web テストを自動化する http://www.ibm.com/developerworks/jp/opensource/library/os-webautoselenium/?ccy=jp&cmp=dw&cpb=dwope&cr=dwrss&csr=010612&ct=dwrss AutoItを使って、ファイル選択の自動化について述べられています。 # seleniumIDE ## わかりやすいseleniumIDEの日本語の解説ページ http://d.hatena.ne.jp/rti7743/20090913 http://iflaglabs.jp/original7.html Firefox のアドオンとして、配布されています。Web アプリケーションに対するユーザ操作を記録し、Selenium テストとして保存・再生します。FireFox上の操作を録画し、テストケースとして保存する機能があります。
SPAMではありません
タイムスタンプを変更しない
<!-- markdown --> # 目次 [TOC] # 趣旨 Selenium の WebDriverとかいろいろ、つまるので、メモする # pom.xml pom.xmlで追加する依存関係について、それぞれ説明します。 - 1. **Selenium WebDriver** (`selenium-java`) <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>4.18.1</version> </dependency> - ブラウザの自動操作を行うためのコアライブラリ - ブラウザの要素の検索、クリック、入力などの操作が可能 - 最新の4.18.1では、Chrome、Firefox、Edgeなどの主要ブラウザをサポート - 非同期処理の待機機能も提供 - 2. **JUnit Jupiter** (`junit-jupiter-api`, `junit-jupiter-engine`) <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <version>5.10.2</version> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <version>5.10.2</version> </dependency> - Javaの標準的なテストフレームワーク - テストケースの記述、実行、アサーションを提供 - `@Test`、`@BeforeEach`などのアノテーションを提供 - テストのライフサイクル管理機能を提供 - `junit-jupiter-api`: テスト記述用API - `junit-jupiter-engine`: テスト実行エンジン - 3. **WebDriverManager** (`webdrivermanager`) <dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.7.0</version> </dependency> - ブラウザドライバーの自動管理ツール - ChromeDriver、GeckoDriver(Firefox用)などを自動でダウンロード・設定 - ブラウザバージョンに適合したドライバーを自動選択 - 手動でのドライバー管理が不要になる - 4. **AssertJ** (`assertj-core`) <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>3.25.3</version> </dependency> - より流暢なアサーション記述を可能にするライブラリ - JUnitの標準アサーションより読みやすい文法を提供 - 例: // JUnitの場合 assertEquals(expected, actual); // AssertJの場合 assertThat(actual).isEqualTo(expected); ``` - 5. **Maven Surefire Plugin** (`maven-surefire-plugin`) <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.2.5</version> </plugin> - Mavenプロジェクトのテスト実行を管理するプラグイン - `mvn test`コマンドでテストを実行する際に使用 - テストレポートの生成 - テスト実行の設定(パターンによる実行するテストのフィルタ、並列実行など) それぞれの依存関係で`<scope>test</scope>`を指定しているのは: - これらのライブラリがテスト時のみ必要で、本番環境には不要なため - 最終的なアプリケーションのサイズを抑制 - テストコードと本番コードの依存関係を明確に分離 これらのライブラリを組み合わせることで: - 1. ブラウザの自動操作(Selenium) - 2. テストケースの記述と実行(JUnit) - 3. ドライバーの自動管理(WebDriverManager) - 4. 読みやすいアサーション(AssertJ) - 5. テスト実行の管理(Maven Surefire) という一連のテスト自動化が実現できます。 # その他 webdriverを使いはじめたので、メモする。 http://www.storklab.com/seleniumhq.org/docs/04_webdriver_advanced.html inputボックスに日本語を入れる http://ykmc09.blogspot.jp/2012/10/selenium-2-webdriver-input.html clickでとまってしまう対策 http://richtext.jp/pukiwiki/index.php?%B3%D0%BD%F1%A4%AD%2FSelenium2.0#f720d8ff なんか、confirmボタンを無理やりスキップする、ハック術がいまのところ有効 (2013/06/18時点でchromeDriverで確認した。) Web画面の自動テストの導入に失敗する理由とその対策 http://d.hatena.ne.jp/dkfj/20120531/1338422274 # webDriver ant単体で動くがJenkins通してantするとChromeWebDriverが起動しない。 なんでやねん WebDriverのchromeとfirefoxを使ってみて思ったことがある。 それは、WebDriverの作者はfirefoxをメインで使っているだろう。ということ、 動作の安定性、速度、chromeDriverよりも勝っているのだ。 ## firefoxの設定 Custom Firefox profile for Selenium http://www.qaautomation.net/?p=45 ## chromedriver.exeのオプション http://stackoverflow.com/questions/15822803/silencing-chromedriver-exe-logging # Selenium を使用して Web テストを自動化する http://www.ibm.com/developerworks/jp/opensource/library/os-webautoselenium/?ccy=jp&cmp=dw&cpb=dwope&cr=dwrss&csr=010612&ct=dwrss AutoItを使って、ファイル選択の自動化について述べられています。 # seleniumIDE ## わかりやすいseleniumIDEの日本語の解説ページ http://d.hatena.ne.jp/rti7743/20090913 http://iflaglabs.jp/original7.html Firefox のアドオンとして、配布されています。Web アプリケーションに対するユーザ操作を記録し、Selenium テストとして保存・再生します。FireFox上の操作を録画し、テストケースとして保存する機能があります。
テキスト整形のルールを表示する