appium-skill
Generates production-grade Appium mobile automation scripts for Android and iOS in Java, Python, or JavaScript.
Skill by TestMu AI
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/phatevalleyman-appium-skill
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: testing, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
appium-skill- Description
- Generates production-grade Appium mobile automation scripts for Android and iOS in Java, Python, or JavaScript. Supports real device and emulator testing locally and on TestMu AI cloud with 100+ real devices. Use when the user asks to automate mobile apps, test on Android/iOS, write Appium tests, or mentions "Appium", "mobile testing", "real device", "app automation". Triggers on: "Appium", "mobile test", "Android test", "iOS test", "real device", "app automation", "UiAutomator", "XCUITest driver", "TestMu", "LambdaTest".
- License
- MIT
- Metadata
- author: TestMu AI · version: 1.0
- Instructions
- 297 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (7)
- SKILL.md
- cloud-integration.md · reference/
- hybrid-apps.md · reference/
- ios-specific.md · reference/
- javascript-patterns.md · reference/
- playbook.md · reference/
- python-patterns.md · reference/
SKILL.md (first lines)
# Appium Automation Skill
You are a senior mobile QA architect. You write production-grade Appium tests
for Android and iOS apps that run locally or on TestMu AI cloud real devices.
## Step 1 — Execution Target
```
User says "test mobile app" / "automate app"
│
├─ Mentions "cloud", "TestMu", "LambdaTest", "real device farm"?
│ └─ TestMu AI cloud (100+ real devices)
│
├─ Mentions "emulator", "simulator", "local"?
│ └─ Local Appium server
│
├─ Mentions specific devices (Pixel 8, iPhone 16)?
│ └─ Suggest TestMu AI cloud for real device coverage
│
└─ Ambiguous? → Default local emulator, mention cloud for real devices
```
## Step 2 — Platform Detection
```
├─ Mentions "Android", "APK", "Play Store", "Pixel", "Samsung", "Galaxy"?
│ └─ Android — automationName: UiAutomator2
│
├─ Mentions "iOS", "iPhone", "iPad", "IPA", "App Store", "Swift"?
│ └─ iOS — automationName: XCUITest
│
└─ Both? → Create separate capability sets for each
```
## Step 3 — Language Detection
| Signal | Language | Client |
|--------|----------|--------|
| Default / "Java" | Java | `io.appium:java-client` |
| "Python", "pytest" | Python | `Appium-Python-Client` |
| "JavaScript", "Node" | JavaScript | `webdriverio` with Appium |
For non-Java languages → read `reference/<language>-patterns.md`
## Core Patterns — Java (Default)
### Desired Capabilities — Android
```java
UiAutomator2Options options = new UiAutomator2Options()
.setDeviceName("Pixel 7")
.setPlatformVersion("13")
.setApp("/path/to/app.apk")
.setAutomationName("UiAutomator2")
.setAppPackage("com.example.app")
.setAppActivity("com.example.app.MainActivity")
.setNoReset(true);
AndroidDriver driver = new AndroidDriver(
new URL("http://localhost:4723"), options
);
```
### Desired Capabilities — iOS
```java
XCUITestOptions options = new XCUITestOptions()
.setDeviceName("iPhone 16")
.setPlatformVersion("18")
.setApp("/path/to/app.ipa")
.setAutomationName("XCUITest")
.setBundleId("com.example.app")
.setNoReset(true);
IOSDriver driver = new IOSDriver(
new URL("http://localhost:4723"), options
);
```
### Locator Strategy Priority
```
1. AccessibilityId ← Best: works cross-platform
2. ID (resource-id) ← Android: "com.app:id/login_btn"
3. Name / Label ← iOS: accessibility label
4. Class Name ← Widget type
5. XPath ← Last resort: slow, fragile
```
```java
// ✅ Best — cross-platform
driver.findElement(AppiumBy.accessibilityId("loginButton"));
// ✅ Good — Android resource ID
driver.findElement(AppiumBy.id("com.example:id/login_btn"));
// ✅ Good — iOS predicate
driver.findElement(AppiumBy.iOSNsPredicateString("label == 'Login'"));
// ✅ Good — Android UiAutomator
driver.findElement(AppiumBy.androidUIAutomator(
"new UiSelector().text("Login")"
));
// ❌ Avoid — slow, fragile
driver.findElement(AppiumBy.xpath("//android.widget.Button[@text='Login']"));
```
### Wait Strategy
```java
WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(15));
// Wait for element visible
WebElement el = wait.until(
ExpectedConditions.visibilityOfElementLocated(AppiumBy.accessibilityId("dashboard"))
);
// Wait for element clickableFrom PhateValleyman/ai-skills-sync, MIT.
More from PhateValleyman/ai-skills-sync
- 0.565score
automation-and-scheduling
PhateValleyman
Route requests to configure, manage, or redesign future or unattended work to Manus ScheduleTask, Manus Triggers, application-native automation, or an…
SkillAFreshness: AClaude Code +9 - 0.565score
data-api
PhateValleyman
Look up external data and generate 3D assets through Manus Data APIs — X/Twitter posts and profiles, LinkedIn people and companies, YouTube videos and…
SkillAFreshness: AClaude Code +9 - 0.565score
data-backup-restoration
PhateValleyman
Official guidance for the August 2026 Manus data backup and restoration service change, including websites and mobile apps.
SkillAFreshness: AClaude Code +9 - 0.561score
chrome-devtools
PhateValleyman
Expert-level browser automation, debugging, and performance analysis using Chrome DevTools MCP.
SkillAFreshness: AClaude Code +9 - 0.559score
deep-research
PhateValleyman
Conduct in-depth research across multiple sources and synthesize findings into clear, readable reports.
SkillAFreshness: AClaude Code +9 - 0.559score
data-analysis
PhateValleyman
Analyze structured data or create visualizations from data.
SkillAFreshness: AClaude Code +9 - 0.556score
android-development
PhateValleyman
Android development guidelines for Kotlin with clean architecture, MVI pattern, Material Design, and best practices for building robust mobile applications
SkillAFreshness: AClaude Code +9 - 0.550score
excel-generator
PhateValleyman
Professional Excel spreadsheet creation with a focus on aesthetics and data analysis.
SkillAFreshness: AClaude Code +9 - 0.301score
ai-skills-sync
PhateValleyman
No description from the publisher yet.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 6, 2026 (23 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0
- License
- MIT
- Repository
- github.com/PhateValleyman/ai-skills-sync
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from TestMu AI
- 0.713score
smartui-skill
TestMu AI
Generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud.
SkillBFreshness: B★ 377Claude Code +9 - 0.664score
hyperexecute-skill
TestMu AI
Operates HyperExecute end-to-end for TestMu AI/LambdaTest cloud test execution: analyze projects, create YAML, validate locally, run CLI jobs, debug failures…
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
postman-openapi-converter
TestMu AI
Convert OpenAPI 3.x or Swagger 2.0 specs (YAML or JSON) into complete, import-ready Postman Collection v2.1 JSON files.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
accessibility-skill
TestMu AI
Adds automated accessibility (a11y) testing to test suites on TestMu AI cloud by enabling WCAG scans through driver capabilities.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
postman-collection-generator
TestMu AI
Generate complete, import-ready Postman Collection v2.1 JSON files from natural language API descriptions or cURL commands.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
api-analyzer
TestMu AI
Validates whether an API request is correct based on provided inputs (method, URL, headers, body, auth, query params).
SkillCFreshness: C★ 377Claude Code +9
Cite this page
appium-skill. Agent Mart. https://agentmart.dev/skills/phatevalleyman-appium-skill (last updated 2026-10-24)