CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/appium-testing

Runs and repairs mobile UI suites driven by Appium - sessions that stop launching after an Appium server upgrade, an iOS or Android half switched off in CI because the simulator or emulator will not boot, unstable waits around one-time codes and other out-of-app steps, and locators that break on every redesign. Covers the WebDriver protocol, driver choice per platform (XCUITest for iOS, UiAutomator2 / Espresso for Android, Mac2 for macOS, Windows for desktop), `desiredCapabilities`, client bindings in JS / Python / Java / Ruby / .NET, and running against simulators, emulators, and device farms. Use when a mobile suite fails, flakes, or only runs on one platform, or when one suite must cover both iOS and Android.

74

Quality

93%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Overview
Quality
Evals
Security
Files

Quality

Content

82%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body delivers an actionable, well-sequenced setup-to-CI workflow with copy-paste commands and a complete test example, plus useful anti-pattern and limitations tables. Its main weaknesses are the absence of troubleshooting feedback loops (the description promises repair guidance the body doesn't sequence) and minor duplication/version-detail verbosity. Structure is good but everything lives inline in one file.

Suggestions

Add a short troubleshooting/repair section with an error-recovery loop matching the description's failure scenarios (e.g., session won't launch after a server upgrade: check driver list -> check server URL/capability format -> retry), which would also close the gap with the 'Use when a suite fails or flakes' triggers.

Trim duplication: the client-library list (JS / Python / Java / Ruby / .NET) appears in both the intro paragraph and the References section; state it once.

Replace the "...iosCaps" / "...androidCaps" placeholders in the Step 6 multi-capability config with one complete example capability per platform so it is copy-paste ready.

DimensionReasoningScore

Conciseness

The body is mostly commands, tables, and executable code with little padding, but there is minor duplication (client libraries "JS / Python / Java / Ruby / .NET" appear in both the intro and the References section) and version-numbered detail ("actions/checkout@v5", "iPhone 15", "macos-15") that could be trimmed or consolidated. Not 5 because a few tokens don't earn their place; not 3 because the over-explanation is minor, not pervasive.

4 / 5

Actionability

The primary workflow is fully copy-paste ready: "npm install -g appium", "appium driver install xcuitest", "appium server -p 4723", and a complete executable WebdriverIO test (imports, before/after hooks, assertions), plus concrete selector examples and a capabilities catalog. The only placeholders ("...iosCaps", "...androidCaps") sit in the advanced multi-platform config, so the common cases are covered exactly as the 5 anchor requires.

5 / 5

Workflow Clarity

Steps 1-7 are clearly sequenced (install -> server -> author -> capabilities -> selectors -> run -> CI) with an explicit verify checkpoint ("# Verify: appium driver list"), but there are no error-recovery or troubleshooting feedback loops despite the description promising repair guidance for failing suites. Not 5 because checkpoints beyond the driver-list verify are missing; not 3 because the sequence is explicit and the operation is not destructive/batch (so the cap-at-3 rule doesn't apply).

4 / 5

Progressive Disclosure

The single-file skill is well organized with clear section headers and an explicit References section (Appium docs link plus sibling skills), and there are no bundle files to reference. Not 5 because at ~215 lines the capabilities catalog and CI matrix examples are inlined in the main body rather than split into reference files, and the scoring note's 5-with-sections-only exception applies only to skills under 50 lines.

4 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: it states concrete capabilities (run, repair, specific failure modes), covers the driver/capability/client landscape, and closes with an explicit 'Use when...' clause containing natural trigger phrases. It is dense but every clause carries information rather than padding. No changes needed.

DimensionReasoningScore

Specificity

"Runs and repairs mobile UI suites driven by Appium" plus enumerated concrete failure scenarios ("sessions that stop launching after an Appium server upgrade", "simulator or emulator will not boot", "locators that break on every redesign") and specifics like "driver choice per platform (XCUITest for iOS, UiAutomator2 / Espresso for Android...)" and "client bindings in JS / Python / Java / Ruby / .NET" give multiple specific concrete actions with comprehensive coverage, matching the 5 anchor rather than the 4 anchor's 'minor gaps'.

5 / 5

Completeness

The what is explicit ("Runs and repairs mobile UI suites driven by Appium - sessions that stop launching... locators that break on every redesign") and the when is explicit with concrete trigger phrases ("Use when a mobile suite fails, flakes, or only runs on one platform..."), exactly matching the 5 anchor.

5 / 5

Trigger Term Quality

"Use when a mobile suite fails, flakes, or only runs on one platform, or when one suite must cover both iOS and Android" plus "simulator or emulator will not boot" and "locators that break on every redesign" are natural phrases users would say, with synonym coverage (fails/flakes) and no missing common variations for this domain.

5 / 5

Distinctiveness Conflict Risk

"driven by Appium" pins a clear niche with distinct triggers; related alternatives (detox, xcuitest) are never invoked as triggers, so overlap risk is minimal.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents