Agent skill

Configuring Test Dependencies

by skydoves in skydoves/android-testing-skills

A skill your agent uses to wire the correct Gradle dependency matrix for Jetpack Compose UI tests.

Apache-2.0Auto-check passedMobile

Install Configuring Test Dependencies

skills CLI
$ npx skills add skydoves/android-testing-skills --skill configuring-test-dependencies -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install skydoves/android-testing-skills configuring-test-dependencies --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/skydoves/android-testing-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/compose/setup/configuring-test-dependencies .claude/skills/configuring-test-dependencies && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
configuring-test-dependencies
GitHub stars
333
Token cost
~4.1k tokens
SKILL.md length
1,070 words
Files
1
Skills in repo
50
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses to wire the correct Gradle dependency matrix for Jetpack Compose UI tests.

  • Wire the correct Gradle dependency matrix for Jetpack Compose UI tests
  • SKILL.md covers When to use this skill, When NOT to use this skill, Prerequisites and Workflow, plus 4 more sections
  • Reaches schemas.android.com
  • The user reports ActivityNotFoundException: ComponentActivity

What it does

Configuring Test Dependencies is an agent skill from skydoves/android-testing-skills. Use this skill to wire the correct Gradle dependency matrix for Jetpack Compose UI tests. Covers androidTestImplementation("androidx.compose.ui:ui-test-junit4"), the debugImplementation("androidx.compose.ui:ui-test-manifest") requirement that makes createComposeRule() work, the host-test (Robolectric) trio, the accessibility add-ons (ui-test-accessibility, ui-test-junit4-accessibility), and the TestManifestGradleConfiguration lint warning. Use when the user reports ActivityNotFoundException: ComponentActivity…

Its SKILL.md is about 4.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile, covering Android development, Linting and formatting and Accessibility. It works with Jetpack Compose, Gradle and Android. The repository describes itself as: ⚡️ A set of skills for Android testing: Compose UI, AndroidX Test, JVM unit tests, and ADB. The licence is Apache-2.0.

When your agent uses it

  • Wire the correct Gradle dependency matrix for Jetpack Compose UI tests
  • The user reports ActivityNotFoundException: ComponentActivity
  • CreateComposeRule unresolved
  • Lint warning ui-test-manifest

Example prompts

  • “androidx.compose.ui:ui-test-junit4”
  • “androidx.compose.ui:ui-test-manifest”
  • “what dependencies do I need for Compose UI tests”
  • “/configuring-test-dependencies”

What it can do on your machine

Read from SKILL.md and the folder at commit 8665ed5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are kotlin and xml).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • schemas.android.com

    Also links to:

    • developer.android.com
    • jetbrains.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Configuring Test Dependencies loads about 4.1k tokens when it runs. Until then it costs about 187 tokens; SKILL.md has 1,070 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~187
When it runs · the whole SKILL.md, loaded when a task matches
~4.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from skydoves/android-testing-skills at commit 8665ed5, republished under its Apache-2.0 licence (© skydoves). 1,070 words, ~4,149 tokens.

Download SKILL.mdSave it as .claude/skills/configuring-test-dependencies/SKILL.md (or your agent's skills folder).
name
configuring-test-dependencies
description
Use this skill to wire the correct Gradle dependency matrix for Jetpack Compose UI tests. Covers `androidTestImplementation("androidx.compose.ui:ui-test-junit4")`, the `debugImplementation("androidx.compose.ui:ui-test-manifest")` requirement that makes `createComposeRule()` work, the host-test (Robolectric) trio, the accessibility add-ons (`ui-test-accessibility`, `ui-test-junit4-accessibility`), and the `TestManifestGradleConfiguration` lint warning. Use when the user reports `ActivityNotFoundException: ComponentActivity`, `createComposeRule unresolved`, `lint warning ui-test-manifest`, `Cannot find test rule`, or asks "what dependencies do I need for Compose UI tests" / "why won't my Compose test compile".
license
Apache-2.0. See LICENSE for complete terms.
metadata.author
Jaewoong Eum (skydoves)
metadata.keywords
jetpack-compose, ui-testing, gradle-dependencies, ui-test-manifest, debug-implementation, createComposeRule, ComponentActivity, ui-test-junit4, robolectric…

Configuring Test Dependencies — Get the Gradle Matrix Right

Compose UI tests fail at the dependency layer in three predictable ways: the JUnit4 surface is on the wrong source set, the ui-test-manifest artifact is missing or on the wrong configuration, or the host-test trio is incomplete. This skill encodes the exact matrix and the lint warning that polices it. Subsequent skills (choosing-test-rule-vs-runtest/SKILL.md, setting-up-host-vs-device-tests/SKILL.md) assume the dependencies are correct.

When to use this skill

  • The user reports java.lang.RuntimeException: Could not launch activity within 45 seconds. Examined activities: ... androidx.activity.ComponentActivity or ActivityNotFoundException.
  • The IDE flags createComposeRule as unresolved or import androidx.compose.ui.test.junit4.createComposeRule as red.
  • Lint surfaces TestManifestGradleConfiguration (severity WARNING) on a build.gradle.kts line.
  • The user wants to add Robolectric / host (JVM) tests for Compose and asks which artifacts to depend on.
  • The user wants to opt into enableAccessibilityChecks(...) and is unsure which artifact owns it.

When NOT to use this skill

  • Dependencies are already correct and the user is choosing between createComposeRule() and runComposeUiTest { } — use ./choosing-test-rule-vs-runtest/SKILL.md.
  • Dependencies compile but the test runs in the wrong source set (test/ vs androidTest/) — use ./setting-up-host-vs-device-tests/SKILL.md.
  • The test compiles and runs but is flaky/timing-out — start with ../../synchronization/synchronizing-with-idle/SKILL.md.

Prerequisites

  • Android Gradle Plugin with the com.android.application or com.android.library plugin applied.
  • A Compose-enabled module (the org.jetbrains.kotlin.plugin.compose plugin or buildFeatures.compose = true).
  • A JUnit4 dependency on the test classpath (Compose's ui-test-junit4 artifact still uses JUnit4; JUnit5 requires a third-party Vintage engine bridge and is out of scope).

Workflow

  • 1. Decide which test surfaces the module needs. A typical Compose feature module wants three: instrumentation tests for screenshot/RenderThread/full-stack coverage, host (Robolectric) tests for fast logic checks, and the manifest helper for createComposeRule(). Pick from the matrix in step 2.

  • 2. Add dependencies on the correct configurations. Copy this into the module's build.gradle.kts:

kotlin
dependencies {
    // --- Instrumentation tests (src/androidTest/) ---
    androidTestImplementation("androidx.compose.ui:ui-test-junit4")
    // MUST be debugImplementation (see Pattern: WRONG vs RIGHT for ui-test-manifest below)
    debugImplementation("androidx.compose.ui:ui-test-manifest")

    // --- Host tests with Robolectric (src/test/) ---
    testImplementation("androidx.compose.ui:ui-test")            // common test API
    testImplementation("androidx.compose.ui:ui-test-junit4")     // ComposeTestRule + createComposeRule
    testImplementation("androidx.compose.ui:ui-test-manifest")   // ComponentActivity manifest entry
    testImplementation("org.robolectric:robolectric:4.13")       // pin a version

    // --- Optional: accessibility validation (API 34+) ---
    androidTestImplementation("androidx.compose.ui:ui-test-junit4-accessibility")
    // Or, when using runComposeUiTest { } (no Rule):
    androidTestImplementation("androidx.compose.ui:ui-test-accessibility")
}

The exact GA versions come from the Compose UI BOM or the developer's chosen composeVersion. Pin Robolectric independently — it does not ship in the Compose BOM.

  • 3. If the test fails with ActivityNotFoundException for androidx.activity.ComponentActivity, the manifest artifact is the cause 99 percent of the time. That artifact is a single-file library that merges this <activity> entry into the test APK manifest, taken from compose/ui/ui-test-manifest/src/main/AndroidManifest.xml:
xml
<activity android:theme="@android:style/Theme.Material.Light.NoActionBar"
    android:name="androidx.activity.ComponentActivity" android:exported="true" />

Without that entry, createComposeRule() and runComposeUiTest { } (which both default to launching androidx.activity.ComponentActivity via ActivityScenario.launch) crash at launch time. Diagnosis:

  • Confirm ui-test-manifest is in the dependency list at all.

  • Confirm it is on debugImplementation (or testImplementation for host tests). If it is on androidTestImplementation, lint flags it and Gradle still wires it in — but the AGP variant model intentionally separates debug and androidTest manifest merging, and putting it on androidTestImplementation does NOT merge the <activity> into the host APK that the instrumentation runs against. The lint check exists precisely to catch this.

  • 4. Address the TestManifestGradleConfiguration lint warning by moving the dependency to debugImplementation. The lint check lives in compose/ui/ui-test-manifest-lint/src/main/java/androidx/compose/ui/test/manifest/lint/GradleDebugConfigurationDetector.kt. Severity is Severity.WARNING and the quick fix replaces the configuration name with debugImplementation. The check fires when the artifact appears on implementation, api, compileOnly, runtimeOnly, androidTestImplementation, testImplementation, or any custom configuration whose name starts with android / test / one of the supported config names.

  • 5. Decide whether the manifest artifact is needed at all. It is required when:

    • The test uses createComposeRule() (no type parameter — defaults to androidx.activity.ComponentActivity).
    • The test uses runComposeUiTest { } (no type parameter — same default).

    It is NOT required when:

    • The test uses createAndroidComposeRule<MyActivity>() AND the developer declares <activity android:name=".MyActivity" .../> themselves in src/androidTest/AndroidManifest.xml (or src/debug/AndroidManifest.xml).
    • The test uses createEmptyComposeRule() and launches its own ActivityScenario against an Activity already declared in the production manifest.
  • 6. For host tests, ensure all three artifacts are on testImplementation. Robolectric drives the JVM Looper, but Compose's idling/clock implementations require ui-test (common) plus ui-test-junit4 (ComposeTestRule interface and createComposeRule actual). Without ui-test-manifest on testImplementation, Robolectric throws the same ActivityNotFoundException because it parses the same manifest. The host source set in androidx itself uses this configuration — see compose/ui/ui-test/src/androidHostTest/kotlin/androidx/compose/ui/test/RobolectricComposeTest.kt.

  • 7. Add accessibility artifacts only if the developer plans to call enableAccessibilityChecks. They are independent of the JUnit4 surface:

    • ui-test-accessibility extends ComposeUiTest (the receiver of runComposeUiTest { }).
    • ui-test-junit4-accessibility extends ComposeTestRule / AndroidComposeTestRule. Both are @RequiresApi(34), both are no-op on Robolectric (Build.FINGERPRINT == "robolectric" triggers a logged warning) — see the accessibility skill in this repo for follow-up.
  • 8. Sync Gradle and re-run the test. A clean ./gradlew :app:connectedDebugAndroidTest (instrumentation) or ./gradlew :app:testDebugUnitTest (host) should compile and locate ComponentActivity.

Show full SKILL.md (364 more words)Show less

Patterns

Pattern: WRONG vs RIGHT — ui-test-manifest configuration
kotlin
// WRONG
dependencies {
    androidTestImplementation("androidx.compose.ui:ui-test-junit4")
    androidTestImplementation("androidx.compose.ui:ui-test-manifest")
}
// WRONG because: lint emits TestManifestGradleConfiguration (WARNING) and the manifest
// merger does not pull the <activity> entry into the merged APK manifest from the
// androidTest source set. createComposeRule() crashes with ActivityNotFoundException.
kotlin
// RIGHT
dependencies {
    androidTestImplementation("androidx.compose.ui:ui-test-junit4")
    debugImplementation("androidx.compose.ui:ui-test-manifest")
}

The lint check explicitly allows debugImplementation and warns on every other configuration. From GradleDebugConfigurationDetector.kt:

text
"The androidx.compose.ui:ui-test-manifest dependency is needed for launching a
 Compose host, such as with createComposeRule. However, it only needs to be present
 in testing configurations therefore use this dependency with the debugImplementation
 configuration"
Pattern: WRONG vs RIGHT — host-test dependencies
kotlin
// WRONG
dependencies {
    testImplementation("androidx.compose.ui:ui-test-junit4")
    testImplementation("org.robolectric:robolectric:4.13")
    // Missing ui-test-manifest -> ActivityNotFoundException at runComposeUiTest launch
    // Missing ui-test          -> linker errors on common test API symbols
}
kotlin
// RIGHT
dependencies {
    testImplementation("androidx.compose.ui:ui-test")
    testImplementation("androidx.compose.ui:ui-test-junit4")
    testImplementation("androidx.compose.ui:ui-test-manifest")
    testImplementation("org.robolectric:robolectric:4.13")
}
Pattern: WRONG vs RIGHT — custom Activity without its own manifest entry
kotlin
// WRONG
@get:Rule val rule = createAndroidComposeRule<MyHostActivity>()
// build.gradle.kts has only debugImplementation("androidx.compose.ui:ui-test-manifest")
// and src/androidTest/AndroidManifest.xml does NOT declare MyHostActivity.
// WRONG because: ui-test-manifest only declares ComponentActivity. Custom activities
// must be declared in the test APK manifest by the developer. Result: ActivityNotFoundException.
xml
<!-- RIGHT — src/androidTest/AndroidManifest.xml -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
    <application>
        <activity android:name=".MyHostActivity" android:exported="true" />
    </application>
</manifest>
Pattern: complete sample build.gradle.kts
kotlin
plugins {
    id("com.android.library")
    id("org.jetbrains.kotlin.android")
    id("org.jetbrains.kotlin.plugin.compose")
}

android {
    namespace = "com.example.feature"
    compileSdk = 35
    defaultConfig {
        minSdk = 23
        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
    }
    buildFeatures { compose = true }
    testOptions {
        unitTests.isIncludeAndroidResources = true   // required for Robolectric + Compose
    }
}

dependencies {
    val composeBom = platform("androidx.compose:compose-bom:2025.06.00")
    implementation(composeBom)
    androidTestImplementation(composeBom)
    testImplementation(composeBom)

    // Production
    implementation("androidx.compose.ui:ui")
    implementation("androidx.activity:activity-compose")

    // Instrumentation
    androidTestImplementation("androidx.compose.ui:ui-test-junit4")
    debugImplementation("androidx.compose.ui:ui-test-manifest")
    androidTestImplementation("androidx.test.ext:junit:1.2.1")
    androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1")

    // Host (Robolectric)
    testImplementation("androidx.compose.ui:ui-test")
    testImplementation("androidx.compose.ui:ui-test-junit4")
    testImplementation("androidx.compose.ui:ui-test-manifest")
    testImplementation("org.robolectric:robolectric:4.13")
    testImplementation("junit:junit:4.13.2")
}

testOptions.unitTests.isIncludeAndroidResources = true is required so Robolectric can read merged resources during host tests of Compose content.

Mandatory rules

  • MUST put androidx.compose.ui:ui-test-manifest on debugImplementation for instrumentation tests, and on testImplementation for host tests. Never on androidTestImplementation, implementation, or api.
  • MUST keep ui-test-junit4 on the same source set as the test that imports createComposeRule / ComposeTestRule. Mixing androidTestImplementation (instrumentation) and testImplementation (host) in the same module is fine; mixing them on the wrong test class is a compile error.
  • MUST declare any non-ComponentActivity test host (custom Activity) in the test APK manifest at src/androidTest/AndroidManifest.xml or src/debug/AndroidManifest.xml. The ui-test-manifest artifact only declares androidx.activity.ComponentActivity.
  • MUST NOT remove the TestManifestGradleConfiguration lint check via lintOptions { disable("TestManifestGradleConfiguration") }. Apply the quick fix instead — the check exists to prevent silent test failures.
  • MUST NOT put ui-test-manifest on a release configuration (releaseImplementation, implementation). The artifact is purely a test scaffold and bloats production APKs with an unwanted <activity> entry.
  • PREFERRED: rely on the Compose BOM (androidx.compose:compose-bom) so all ui-test-* artifacts share a coherent version. Robolectric is independent and pins separately.
  • PREFERRED: when in doubt about which artifact owns a symbol, search androidx/compose/ui/ui-test* paths from the corpus rather than guessing — see References.

Verification

  • ./gradlew :<module>:connectedDebugAndroidTest compiles and runs without ActivityNotFoundException for androidx.activity.ComponentActivity.
  • ./gradlew :<module>:lint does NOT report TestManifestGradleConfiguration.
  • ./gradlew :<module>:testDebugUnitTest compiles when host tests use runComposeUiTest { } or createComposeRule().
  • The dependency block visibly separates androidTestImplementation (instrumentation), debugImplementation (manifest), testImplementation (host trio).
  • If the developer added accessibility artifacts, enableAccessibilityChecks(...) resolves at compile time inside an instrumentation test.
  • The test APK manifest contains exactly one <activity android:name="androidx.activity.ComponentActivity"/> entry (run ./gradlew :app:processDebugAndroidTestManifest and inspect build/intermediates/.../AndroidManifest.xml).

References

  • Compose testing setup (Android Developers): https://developer.android.com/develop/ui/compose/testing#setup
  • Compose testing overview: https://developer.android.com/develop/ui/compose/testing
  • Compose UI release notes: https://developer.android.com/jetpack/androidx/releases/compose-ui
  • Compose Multiplatform testing: https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-test.html
  • compose/ui/ui-test-manifest-lint/src/main/java/androidx/compose/ui/test/manifest/lint/GradleDebugConfigurationDetector.kt — TestManifestGradleConfiguration issue definition (severity WARNING, quick-fix to debugImplementation).
  • compose/ui/ui-test-manifest/src/main/AndroidManifest.xml — the merged <activity android:name="androidx.activity.ComponentActivity"> entry that createComposeRule() depends on.
  • compose/ui/ui-test/src/androidMain/kotlin/androidx/compose/ui/test/ComposeUiTest.android.kt — runComposeUiTest launches ComponentActivity::class.java by default (lines 184-197).
  • compose/ui/ui-test/src/androidHostTest/kotlin/androidx/compose/ui/test/RobolectricComposeTest.kt — canonical host-test class skeleton with Robolectric (@RunWith(AndroidJUnit4::class) @Config(minSdk = RobolectricMinSdk)).
  • compose/ui/ui-test/src/androidHostTest/kotlin/androidx/compose/ui/test/Constants.kt — internal const val RobolectricMinSdk = 23.

© skydoves, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in compose/setup/configuring-test-dependencies of skydoves/android-testing-skills.

Open the folder on GitHubat commit 8665ed5

Compare with similar skills

Configuring Test Dependencies next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Configuring Test Dependencies compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Configuring Test Dependencies this skillskydoves/android-testing-skills333—~4.1kAutomated safety check: PassApache-2.0
Accessible Mobile DeveloperFerroxLabs/wayland608—~3.6kAutomated safety check: PassApache-2.0
Android Developmentdpconde/claude-android-skill336—~1.7kAutomated safety check: PassMIT
Claude Android NinjaDrjacky/claude-android-ninja124—~5.2kAutomated safety check: PassApache-2.0
Compose Agenthamen/compose_skill373—~4kAutomated safety check: NotesMIT
Guided PR Fixupalexvanyo/composelife267—~1kAutomated safety check: PassApache-2.0

Similar skills

  • Accessible Mobile Developer

    FerroxLabs/wayland

    Mobile accessibility development expertise covering iOS VoiceOver and Android TalkBack integration, accessibility APIs for SwiftUI and Jetpack Compose, touch target sizing, gesture alternatives…

    608 GitHub stars~3.6k tokensUpdated 2 days ago
    MobileAuto-check passed
  • Android Development

    dpconde/claude-android-skill

    Create production-quality Android applications following Google's official architecture guidance and NowInAndroid best practices.

    336 GitHub stars~1.7k tokensUpdated 10 mo ago
    MobileAuto-check passed
  • Claude Android Ninja

    Drjacky/claude-android-ninja

    Build and migrate Android apps with Kotlin, Jetpack Compose, MVVM, Hilt, Room 3 (KSP, SQLiteDriver, Flow/suspend DAOs), Navigation3, and multi-module Gradle.

    124 GitHub stars~5.2k tokensUpdated 9 days ago
    MobileAuto-check passed
  • Compose Agent

    hamen/compose_skill

    Helps AI coding assistants write modern Jetpack Compose: correct state, side effects, performance-aware modifiers, Navigation 3, Paging 3 in Compose, coroutines on lifecycle, animations, UI tests…

    373 GitHub stars~4k tokensUpdated 2 mo ago
    MobileAuto-check: notes
  • Guided PR Fixup

    alexvanyo/composelife

    Performs a guided fixup of a given GitHub PR. An agent skill from alexvanyo/composelife.

    267 GitHub stars~1k tokensUpdated today
    MobileAuto-check passed
  • Flake Triage

    yschimke/compose-ai-tools

    Decide whether a preview the visual-diff bot flagged actually regressed or is simply nondeterministic, using a repeat-render oracle at a single commit.

    117 GitHub stars~1.5k tokensUpdated today
    MobileAuto-check passed

More from skydoves/android-testing-skills

All 50 skills in this repo
  • Asserting Bounds And Dimensions

    skydoves/android-testing-skills

    A skill your agent uses to verify Compose layout measurements from a UI test using assertWidthIsEqualTo, assertHeightIsEqualTo, assertWidthIsAtLeast, assertHeightIsAtLeast…

    333 GitHub stars~3.3k tokensUpdated 4 mo ago
    Auto-check passed
  • Asserting Node State And Text

    skydoves/android-testing-skills

    A skill your agent uses to verify a Compose semantics node's properties from a UI test using assertExists, assertDoesNotExist, assertIsDisplayed, assertIsNotDisplayed, assertIsDeactivated…

    333 GitHub stars~3.6k tokensUpdated 4 mo ago
    Auto-check passed
  • Capturing Preview Screenshots In CI

    skydoves/android-testing-skills

    A skill your agent uses to render every Jetpack Compose @Preview as a screenshot on a real Android device or emulator and publish a browsable HTML catalog from CI.

    333 GitHub stars~4.5k tokensUpdated 4 mo ago
    Auto-check: notes
  • Capturing Screenshots And Screenrecord

    skydoves/android-testing-skills

    A skill your agent uses to capture visual artefacts from a device for test failures, golden image generation, QA repro, and demo videos.

    333 GitHub stars~3.7k tokensUpdated 4 mo ago
    Auto-check passed
  • Choosing Test Rule Vs Runtest

    skydoves/android-testing-skills

    A skill your agent uses to pick the correct Compose UI test entry point.

    333 GitHub stars~4.5k tokensUpdated 4 mo ago
    Auto-check passed
  • Choosing What To Test

    skydoves/android-testing-skills

    A skill your agent uses to pick which behaviors to cover in an Android test suite using Google's five-category state vocabulary plus the explicit "what NOT to test" list from…

    333 GitHub stars~4.6k tokensUpdated 4 mo ago
    Auto-check passed

Questions about Configuring Test Dependencies

What does Configuring Test Dependencies do?

A skill your agent uses to wire the correct Gradle dependency matrix for Jetpack Compose UI tests. Configuring Test Dependencies is an agent skill from skydoves/android-testing-skills. Use this skill to wire the correct Gradle dependency matrix for Jetpack Compose UI tests.

When should I use Configuring Test Dependencies?

Configuring Test Dependencies fits situations like: wire the correct Gradle dependency matrix for Jetpack Compose UI tests; the user reports ActivityNotFoundException: ComponentActivity; createComposeRule unresolved; lint warning ui-test-manifest.

How do I install Configuring Test Dependencies in Claude Code?

Run `npx skills add skydoves/android-testing-skills --skill configuring-test-dependencies -a claude-code`. Or copy the skill folder (compose/setup/configuring-test-dependencies in skydoves/android-testing-skills) into .claude/skills/configuring-test-dependencies in your project. Claude Code loads it when a task matches its description.

How do I install Configuring Test Dependencies in Codex?

Run `npx skills add skydoves/android-testing-skills --skill configuring-test-dependencies -a codex`. Or copy the skill folder (compose/setup/configuring-test-dependencies in skydoves/android-testing-skills) into .agents/skills/configuring-test-dependencies in your project. Codex loads it when a task matches its description.

Can I use Configuring Test Dependencies in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add skydoves/android-testing-skills --skill configuring-test-dependencies -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/configuring-test-dependencies, .gemini/skills/configuring-test-dependencies, .github/skills/configuring-test-dependencies and .opencode/skills/configuring-test-dependencies in your project.

What does Configuring Test Dependencies need to run?

SKILL.md names no scripts, command-line tools or credentials: Configuring Test Dependencies is instructions for the agent only.

Does Configuring Test Dependencies access the network?

SKILL.md names 3 domains. In commands or code: schemas.android.com; the agent is likely to contact it when it follows the instructions. As links in the text: developer.android.com and jetbrains.com. This is read from the text; nothing was executed.

Is Configuring Test Dependencies safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Configuring Test Dependencies use?

Configuring Test Dependencies is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Configuring Test Dependencies use?

About 4.1k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Configuring Test Dependencies?

Skills that share tags, products or a category with Configuring Test Dependencies: Accessible Mobile Developer (FerroxLabs/wayland, 608 stars), Android Development (dpconde/claude-android-skill, 336 stars), Claude Android Ninja (Drjacky/claude-android-ninja, 124 stars) and Compose Agent (hamen/compose_skill, 373 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Configuring Test Dependencies?

skydoves (a GitHub user) maintains it in skydoves/android-testing-skills, which has 333 GitHub stars. The repository holds 50 skills in this directory. The repository was last updated on May 25, 2026.

Source: skydoves/android-testing-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.