waveさんの技術日誌

wave1008の日記の新館です。

Shiratesクイックスタート

本記事は github.com の日本語訳です。

ソフトウェアのインストール

前提となる以下のツールをインストールします。

注意事項

ツールが正常に動作しない場合があるので、以下の文字を含むOSのアカウント名は使用しないでください。

  • ASCII文字以外の文字を含む (例:テスト太郎)
  • 空白文字を含む (例:test taro )

IntelliJ IDEA

インストールしていない場合はダウンロードしてインストールしてください。Ultimateは有償製品、Communityはオープンソース製品です。 https://www.jetbrains.com/idea/

Android Studio

インストールしていない場合はダウンロードしてインストールしてください。 https://developer.android.com/studio

Xcodemacのみ)

インストールしていない場合はApp Storeで検索してインストールしてください。

Command Line Tools for Xcodemacのみ)

インストールしていない場合はターミナルを開いて以下のコマンドを実行してください。

xcode-select --install

Homebrew(macのみ)

インストールしていない場合は https://brew.sh/ を参照してインストールしてください。

Node Package Manager (NPM)

インストールしていない場合はインストールしてください。 すでにインストールしている場合、バージョンが古いとAppiumが正常に動作しない場合があるので、比較的新しいバージョンにアップグレードしてください。

macの場合

Homebrewを使用してインストールできます。ターミナルを開いて以下のコマンドを実行してください。 (新規インストールの場合)

brew install node
node -v

(アップグレードの場合)

brew update
brew upgrade node

Windowsの場合

インストールパッケージを入手してインストールしてください。

https://nodejs.org/en/download/

注意事項

インストールしたバージョンが古い場合はAppiumが正常に動作しない場合があるので、比較的新しいバージョンをインストールしてください。

Appium 2.0

インストールしていない場合はインストールしてください。

すでに利用中の場合はバージョンをチェックしてください。

appium -v


Appium 1.xがインストールされている場合はアンインストールしてください。

npm uninstall -g appium


Appium 2.0をnpmでインストールしてください。

npm install -g appium@next
appium -v

補足

  • Appium 2.0はリリース準備中です。2.0をインストールするには"@next"を指定する必要があります。
  • テスト済みの環境を参考にしてください

実行例

appium -v
npm uninstall -g appium
npm install -g appium@next
appium -v

実行結果

wave1008@SNB-M1 ~ % appium -v
2.0.0-beta.33
wave1008@SNB-M1 ~ % npm uninstall -g appium

removed 437 packages, and audited 1 package in 816ms
found 0 vulnerabilities
wave1008@SNB-M1 ~ % npm install -g appium@next

added 426 packages, and audited 427 packages in 16s

62 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
wave1008@SNB-M1 ~ % appium -v                 
2.0.0-beta.35
wave1008@SNB-M1 ~ % 

UIAutomator2 driver

インストールしていない場合はインストールしてください。

appium driver install uiautomator2@2.7.1


すでにインストールしている場合は再インストールしてください。

appium driver list
appium driver uninstall uiautomator2
appium driver install uiautomator2@2.7.1
appium driver list

テスト済みの環境を参考にしてください

XCUITest driver(macのみ)

インストールしていない場合はインストールしてください。

appium driver install xcuitest@4.12.0


すでにインストールしている場合は再インストールしてください。

appium driver list
appium driver uninstall xcuitest
appium driver install xcuitest@4.12.0
appium driver list

テスト済みの環境を参考にしてください

環境変数macの場合)

初期化スクリプト(.zshrcなど)で環境変数を設定してください。

設定例

export ANDROID_SDK_ROOT=/Users/$USER/Library/Android/sdk
export PATH=$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools:$PATH

設定変更を有効にするにはログオフしてからログオンし直してください。

環境変数Windowsの場合)

  1. Android Studioを開きます。
  2. メニューから Tools > SDK Manager > Appearance & Behavior > System Settings > Android SDKを選択します。
  3. Android SDK Locationの値をコピーします。
  4. システム環境変数ANDROID_SDK_ROOT を設定します。上記でコピーした値を設定します。
  5. システム環境変数Pathを編集し、以下のパスを設定します。
%ANDROID_SDK_ROOT%\platform-tools
%ANDROID_SDK_ROOT%\tools


6. PCを再起動します。

AVD(Android Virtual Device)のセットアップ

デモ用のAVDを作成する

  1. Android Studioを開きます。
  2. メニューから Tools > Device Manager を選択します。
  3. Create Device をクリックします。
  4. Pixel 3a を選択し、Nextをクリックします。
  5. S/API Level 31/Android 12.0 (Google Play) を選択し、Nextをクリックします (電卓アプリをデモで使用するのでGoogle Play Storeが必要となります)。 なお、M1 Macの場合は arm64を、それ以外の場合はx86_64を選択します。
  6. AVDの名前をPixel 3a API 31(Android 12)に設定してFinishをクリックします。

デモンストレーション

デモを実行しましょう

言語設定

shirates-coreに付随しているデモを実行する際はAndroid OSの言語をEnglish(United States)に設定してください。

shirates-coreプロジェクトを開く

  1. shirates-coreプロジェクトのディレクトリをFinderまたはExlorerで開きます。
  2. build.gradle.ktsを右クリックしてIntelliJ IDEAで開きます。

右クリックでのテスト実行を有効にする

  1. IntelliJ IDEA > Preferences (または File > Settings)を選択します。
  2. Build, Execution, Deployment > Build Tools > Gradleを選択します。
  3. Build and run tests usingを IntelliJ IDEAに設定します。
  4. Run tests usingをIntelliJ IDEAに設定します。

AndroidSettingsDemoを実行する

  1. Device ManagerからPixel 3a API 31(Android 12)のAVDを起動します。
  2. IntelliJでshirates-coreプロジェクトを開き、src/test/Kotlin/demo/AndroidSettingsDemoを右クリックしてDebugを選択します。

    3.以下のようなログがIntelliJ IDEAのコンソールに出力されます。

出力されたレポートを確認する

  1. IntelliJ IDEAのコンソールに出力されたログのハイパーリンクをクリックしてログのディレクトリを表示します。
  2. ログとレポートファイルが出力されていることが確認できます。
  3. _Report(simple).htmlを開きます。テストの実行結果をHTMLで確認できます。行をクリックすると対応するスクリーンショット画像がハイライトされます。行をダブルクリックするとイメージが拡大表示されます。
  4. _Report(detail).htmlを開きます。ログタイプがinfoの情報が追加で出力されていることが確認できます。
  5. AndroidSettingsDemo@a.xlsxを開きます。テストの実行結果を表形式で確認できます。
  6. TestList_androidSettingsConfig.xlsxを開きます。一覧でテスト結果を確認できます。

CalculatorDemoを実行する

  1. Device ManagerからPixel 3a API 31(Android 12)のAVDを起動します。
  2. Google Play Storeを開き、Calculator(Google LLC)をインストールします。
  3. IntelliJでshirates-coreプロジェクトを開き、src/test/Kotlin/demo/CalculatorDemoを右クリックしてDebugを選択します。
  4. 電卓のテストが実行されることを確認します。

iOSSettingsDemoを実行する

  1. Xcodeを開きメニューからWindow > Devices and Simulatorsを選択します。iPhone 13 iOS 15.5が存在することを確認します。
  2. IntelliJ IDEAでshirates-coreプロジェクトを開きます。src/test/Kotlin/demo/iOSSettingsDemoを右クリックしてDebugを選択します。
  3. iOS設定画面のテストが実行されることを確認します。