セレンおよび塩基のJUnit 5()

Gradleでは、JUnitの5和木星セレン

セレンは、支持体は、主にWebアプリケーションのテストのために、ツールを自動化することをブラウザのセットです。セレンは、クライアントライブラリを提供するセレンwebdriverを、の成分の一つである、JSONは、プロトコル(ブラウザ・ドライバと通信するためのプロトコル)とブラウザドライバ有線。主な利点のセレンwebdriverを一つは、それはほとんどすべての主要なプログラミング言語をサポートし、すべての主要なオペレーティングシステム上で実行することができるということです。

この記事では、人気との完全なJava、JUnitの5とSelenium木星で使用GradleのTodoMVCアプリケーションのテスト自動化プロジェクトの設定。あなたは学ぶことができますSelenium的PageFactoryページオブジェクトモデルを達成します。また、これに並列テスト実行、テストの実行順序、パラメトリック検定、およびについて学びます。

テストの準備

まず、JavaのJDKが必要であり、システムにインストールする必要があります。私は、OpenJDKの代わりにOracleのJDKをインストールすることをお勧めし。また、必要なGradle推奨のIntelliJ IDEAコミュニティまたはProfessional、そしてもちろんのgitの-新しいプロジェクトや、お気に入りのJava IDEを起動します。

始める前に、以下のツールがあなたにインストールして利用できることを確認してください。

  • JavaのJDKは:JavaのJDKの最新バージョンを使用することをお勧めします
  • Gradleでは:あなたが必要なプロジェクトを設定する場合にのみ、Gradleのを使用することをお勧めします5.6+
  • JavaのIDE:のIntelliJ IDEA
  • Chromeブラウザ:Seleniumテストを実行するために使用
  • ターミナル:Unixのコマンドの基本的なサポートを有する少なくとも実行するためのシェルコマンド
  • Gitは:ソースコードの履歴を追跡します

ゼロから始めます

宇宙ベースのGradleのプロジェクトを作成するには、端末と種類を開きます。

mkdir demo
cd demo
gradle init --type basic --dsl groovy复制代码

ノープラグインと依存関係のない:プロジェクトが空のDIYのプロジェクトを生成しています。これは、冗長settings.gradleで削除することができます。

rm settings.gradle

JavaとJUnitの5

基本的な使用JUnitのJava 5のプロジェクトの設定については、build.gradleに次の行を追加します。

plugins {
 id 'java'
}
 
repositories {
  mavenCentral()
}
 
dependencies {
 testImplementation('org.junit.jupiter:junit-jupiter:5.5.1')
}
 
test {
 useJUnitPlatform()
 testLogging {
  events "passed", "skipped", "failed"
 }
}
复制代码

上記のDSL構成GradleのJavaプラグイン(plugins)プラグインは、私たちはGradleのビルドJavaベースのプロジェクトの機能を使用しています。プロジェクトでは、Mavenのリポジトリ使用する(repositories)プロジェクトにダウンロードしたdependenciesプロジェクトの依存関係の声明を()テストプロジェクトの依存関係を達成するためにJUnit 5(testImplementation)、タスクを調整(test)の利用を保証するためにGradleテストを実行する際に使用しますJUnit 5

構成は、Gradleのを実行することによって確認することができる端末で構築:

./gradlew build

成功の構築:

BUILD SUCCESSFUL in 0s
1 actionable task: 1 executed复制代码

./gradlewコマンドは、GradleのGradleのラッパーではなく、世界的なリリースを実行します。このプロジェクトは、Gradleのラッパーによって生成されたので、タスクを実行し、アイテムを使用するには、グローバルな流通のGradleを実行する必要はありません。

JUnitの木星

プロジェクトの簡素化するためSelenium WebDriverの設定を、私が使用するSelenium Jupiterことを簡素化するために設計されたJUnitの5拡張、である、JUnit 5セレン(のためのテストWebDriverGrid使用を)。それは別の依存関係、以下の項目のリストに追加する依存関係が必要ですbuild.gradle

dependencies {
  testCompile('io.github.bonigarcia:selenium-jupiter:3.3.0')
}复制代码

Selenium Jupiterライブラリが提供SeleniumしてAppium統合されています。Selenium Jupiterローカルおよびリモートブラウザ、ドッカー容器ブラウザのサポートは、セレン化物をベースとブラウザの構成(ドッカーエンジンを必要とします)。内部的に使用されるWebDriverManagerブラウザのドライバを管理すること。

  • 注:ライブラリがたくさんあるプロジェクトで驚いてはいけない、Selnium木星は多くの依存関係を持っています。(推移的な依存を含む)すべてのプロジェクトの依存関係を表示するには、次のコマンドを実行します./gradlew dependencies

プロジェクトファイルとディレクトリ

項目が作成されたJavaソースファイルませんありません。初期ディレクトリと最初のテストを作成するには、次のコマンドを実行することができます。

mkdir -p src/test/java/demo/selenium/todomvc
touch src/test/java/demo/selenium/todomvc/SeleniumTest.java复制代码

SeleniumTest.javaファイルは、プロジェクトが正しく設定されている非常に基本的なテスト、確認が含まれています。用いた試験Selenium Jupiter付属JUnit 5拡張、及び唯一のテストは、何の主張がありません。

package pl.codeleak.demos.selenium.todomvc;
 
import io.github.bonigarcia.seljup.SeleniumExtension;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.openqa.selenium.chrome.ChromeDriver;
 
@ExtendWith(SeleniumExtension.class)
class SeleniumTest {
 
    @Test
    void projectIsConfigured(ChromeDriver driver) {}
}复制代码

テストを実行

Gradleのビルド、テストの実行をすることによって確認する必要があります。

./gradlew build
 
demo.selenium.todomvc.SeleniumTest > projectIsConfigured() PASSED
 
BUILD SUCCESSFUL in 1s
3 actionable tasks: 2 executed, 1 up-to-date复制代码

  • 厳粛に宣言:最初の公開番号「FunTester」に登場した記事、(テンセントクラウドを除く)第三者再生を禁止し、公開します。

技術関連記事

非技術的な選択された記事

おすすめ

転載: juejin.im/post/5e1bd14bf265da3dee21f0fb