OSS探訪

WebDriver互換APIでAndroid・iOS・desktop appのE2E testを自動化する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
22,040
主要言語
TypeScript
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/03
ページ内ナビ

概要

Appiumは、W3C WebDriver protocolを基盤にAndroid、iOS、macOS、Windowsなどのapplicationを自動操作するtest automation frameworkです。core serverとplatform固有driverを分離し、Java・Python・Ruby・C#などのclientから同じWebDriver型のAPIで操作できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

W3C WebDriverのclient/server構成でapplicationを操作する

test codeはWebDriver clientからAppium serverへcommandを送り、serverがdriverを通じて端末やapplicationを操作します。native、hybrid、mobile webなどを同じautomation modelで扱えます。

出典:[1][2]

platformごとのdriverを必要な分だけ追加する

Appium 2以降はcore serverとdriverが分離され、AndroidのUiAutomator2、iOSのXCUITestなどをExtension CLIで個別install・updateします。不要なplatform dependencyをserver本体へ抱えずに構成できます。

出典:[1][3]

pluginでserverのcommandやroutingを拡張する

pluginはdriverとは別にserver機能を拡張し、必要なpluginをinstallして起動時に有効化できます。application固有のtest infrastructureに合わせてAppium serverの振る舞いを追加できます。

出典:[1][4]

向いている用途

mobile・desktop applicationのcross-platform E2E testに向く

AndroidとiOSを同じtest方針で検証したいteamや、WebDriver系のclient/toolingを活かして端末testをCIへ組み込みたい場合に適しています。

出典:[1][2]

導入前の確認

stableは3.8.0で4.0はbeta段階

repositoryのstable packageは3.8.0で、4.0.0-beta.2はpre-releaseです。productionのtest基盤では3.x stableと4.x betaを混在させず、migration guideとdriver互換性を確認します。

出典:[7][8]

Appium 3はNode.js 20.19以上の指定rangeとnpm 10以上を必要とする

Appium 3のpackageはNode.js ^20.19.0 || ^22.12.0 || >=24.0.0、npm 10以上を要求します。CI imageやdeveloper machineのNode.js versionを先に揃えてください。

出典:[6][5]

driverごとにAndroid SDKやXcodeなど追加要件がある

core serverのinstallだけではautomationを実行できません。UiAutomator2、XCUITestなど各driverが要求するSDK、toolchain、emulatorまたは実機、OS権限を別途準備します。

出典:[1][5]

参考にした公式資料

  1. [1]Appium README(2026-10-03)
  2. [2]Appium introduction(2026-10-03)
  3. [3]Appium drivers(2026-10-03)
  4. [4]Appium plugins(2026-10-03)
  5. [5]Appium 3 system requirements(2026-10-03)
  6. [6]Appium package.json(2026-10-03)
  7. [7]Appium CHANGELOG(2026-10-03)
  8. [8]Appium releases(2026-10-03)
編集部からの補足

Appium本体だけでは端末を操作できず、対象platformごとのdriverが必要です。導入時はserver versionだけでなく、driver・SDK・emulator/実機の組み合わせを一つの互換性matrixとして固定すると再現性を保ちやすくなります。

3ステップで試す

  1. 1

    Appium 3.8.0をinstallする

    Node.js ^20.19.0 || ^22.12.0 || >=24.0.0 とnpm 10以上の環境でstable版をinstallします。

    npm install -g appium@3.8.0
  2. 2

    Android向けUiAutomator2 driverを追加する

    Appium coreだけではautomationできないため、例としてofficial Android driverを追加します。実行にはAndroid SDK等のdriver要件が別途必要です。

    appium driver install uiautomator2
  3. 3

    Appium serverを起動する

    serverが起動し、installed driverが認識されればcore側の最小確認は完了です。実際のsession作成にはclient codeとdevice/emulator設定が必要です。

    appium
公式READMEで確認

成長

成長の推移 · 直近30日

22,040 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
63
Open PR
8

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • appium
  • webdriver
  • android
  • ios
  • windows
  • automation
  • macos
  • test-automation
Stars
22,040
Forks
6,288
Watchers
845
Open Issues
37
Contributors
354
所有者種別
Organization
主要言語
TypeScript
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/03

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?