Back to list
AnySoftKeyboard

create-unit-test

by AnySoftKeyboard

Android (f/w 2.1+) on screen keyboard for multiple languages.

3,220🍴 901📅 Jan 23, 2026

Use Cases

Efficient Code Generation

Auto-generate boilerplate code to reduce development time.

🔍

Code Review Assistance

Analyze PR changes and suggest improvements.

🔧

Refactoring Suggestions

Suggest refactoring options to improve code quality.

🧪

Test Code Generation

Auto-generate unit tests and E2E tests.

SKILL.md


name: create-unit-test description: Create and run unit tests following the project's architecture and guidelines (Robolectric, naming, location).

Create Unit Test

This skill guides the creation of unit tests to ensuring consistency and correctness.

Workflow

  1. Analyze and Plan:

    • Goal: Understand what needs testing.
    • Action: Examine the source code.
    • Action: Identify "happy path" cases (core functionality).
    • Action: Identify "error cases" and "edge cases" based on likelihood.
    • Action: Do not suggest implementation details unless asked; focus on behavior.
  2. Setup Test File:

    • Naming: [OriginalClassName]Test.kt.
    • Location: [module]/src/test/java/[package/path]/.
    • Runner: If testing Android components, you MUST use Robolectric.
    • Mocking: Prefer creating Fakes over Mocks or patches. Use Mocks only if Fakes are too complex.
  3. Implement Tests:

    • Write clear, descriptive test methods.
    • Follow the "Arrange-Act-Assert" pattern.
    • Ensure all resources (strings, themes) are properly mocked or provided via Robolectric.
  4. Run Tests:

    • Command: ./gradlew :[module]:testDebugUnitTest
    • Example: ./gradlew :database:testDebugUnitTest
    • Tip: Before any commit, run ./gradlew testDebugUnitTest to ensure everything passes.
  5. Handle Failures:

    • Goal: Diagnose and fix issues.
    • Action: If a test fails, locate the full error report.
    • Path: [module]/build/test-results/testDebugUnitTest/TEST-[package.name.TestClassName].xml.
    • Example: app/build/test-results/testDebugUnitTest/TEST-com.anysoftkeyboard.janus.app.MainActivityTest.xml.

Guidelines

  • Consistency: Always place tests in the test source set, not androidTest (unless specifically writing instrumentation tests, which is rare for this skill).
  • Reliability: Avoid flaky tests. Ensure deterministic behavior.

Score

Total Score

80/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 1000以上

+15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

+5
Issue管理

オープンIssueが50未満

0/5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon