jpskill.com
🛠️ 開発・MCP コミュニティ

mobile-app-testing

Comprehensive mobile app testing strategies for iOS and Android. Covers unit tests, UI tests, integration tests, performance testing, and test automation with Detox, Appium, and XCTest.

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o mobile-app-testing.zip https://jpskill.com/download/21470.zip && unzip -o mobile-app-testing.zip && rm mobile-app-testing.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/21470.zip -OutFile "$d\mobile-app-testing.zip"; Expand-Archive "$d\mobile-app-testing.zip" -DestinationPath $d -Force; ri "$d\mobile-app-testing.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して mobile-app-testing.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → mobile-app-testing フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
6

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

モバイルアプリテスト

目次

概要

単体テスト、UIテスト、統合テスト、パフォーマンステストを含む、モバイルアプリケーション向けの包括的なテスト戦略を実装します。

使用場面

  • テストカバレッジを備えた信頼性の高いモバイルアプリケーションの作成
  • iOSおよびAndroid全体でのUIテストの自動化
  • パフォーマンステストと最適化
  • バックエンドサービスとの統合テスト
  • リリース前の回帰テスト

クイックスタート

最小限の動作例:

// Unit test with Jest
import { calculate } from "../utils/math";

describe("Math utilities", () => {
  test("should add two numbers", () => {
    expect(calculate.add(2, 3)).toBe(5);
  });

  test("should handle negative numbers", () => {
    expect(calculate.add(-2, 3)).toBe(1);
  });
});

// Component unit test
import React from "react";
import { render, screen } from "@testing-library/react-native";
import { UserProfile } from "../components/UserProfile";

describe("UserProfile Component", () => {
  test("renders user name correctly", () => {
    const mockUser = { id: "1", name: "John Doe", email: "john@example.com" };
    render(<UserProfile user={mockUser} />);

    expect(screen.getByText("John Doe")).toBeTruthy();
  });
// ... (see reference guides for full implementation)

リファレンスガイド

references/ ディレクトリ内の詳細な実装:

ガイド 内容
React Native Testing with Jest & Detox Jest & Detox を使用した React Native テスト
iOS Testing with XCTest XCTest を使用した iOS テスト
Android Testing with Espresso Espresso を使用した Android テスト
Performance Testing パフォーマンステスト

ベストプラクティス

✅ 実施すべきこと

  • まずビジネスロジックのテストを作成する
  • テスト容易性のために依存性注入を使用する
  • 外部API呼び出しをモックする
  • 成功パスと失敗パスの両方をテストする
  • 重要なフローのUIテストを自動化する
  • 実機でテストを実行する
  • ターゲットデバイスでパフォーマンスを測定する
  • テストを分離し、独立させる
  • 意味のあるテスト名を使用する
  • 80%以上のコードカバレッジを維持する

❌ 実施すべきでないこと

  • UIが重要なフローのテストをスキップする
  • ハードコードされたテストデータを使用する
  • パフォーマンスの回帰を無視する
  • 実装の詳細をテストする
  • テストを不安定にしたり、信頼できないものにしたりする
  • 実際のデバイスでのテストをスキップする
  • アクセシビリティテストを無視する
  • 相互依存するテストを作成する
  • APIをモックせずにテストする
  • テストされていないコードをデプロイする
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Mobile App Testing

Table of Contents

Overview

Implement comprehensive testing strategies for mobile applications including unit tests, UI tests, integration tests, and performance testing.

When to Use

  • Creating reliable mobile applications with test coverage
  • Automating UI testing across iOS and Android
  • Performance testing and optimization
  • Integration testing with backend services
  • Regression testing before releases

Quick Start

Minimal working example:

// Unit test with Jest
import { calculate } from "../utils/math";

describe("Math utilities", () => {
  test("should add two numbers", () => {
    expect(calculate.add(2, 3)).toBe(5);
  });

  test("should handle negative numbers", () => {
    expect(calculate.add(-2, 3)).toBe(1);
  });
});

// Component unit test
import React from "react";
import { render, screen } from "@testing-library/react-native";
import { UserProfile } from "../components/UserProfile";

describe("UserProfile Component", () => {
  test("renders user name correctly", () => {
    const mockUser = { id: "1", name: "John Doe", email: "john@example.com" };
    render(<UserProfile user={mockUser} />);

    expect(screen.getByText("John Doe")).toBeTruthy();
  });
// ... (see reference guides for full implementation)

Reference Guides

Detailed implementations in the references/ directory:

Guide Contents
React Native Testing with Jest & Detox React Native Testing with Jest & Detox
iOS Testing with XCTest iOS Testing with XCTest
Android Testing with Espresso Android Testing with Espresso
Performance Testing Performance Testing

Best Practices

✅ DO

  • Write tests for business logic first
  • Use dependency injection for testability
  • Mock external API calls
  • Test both success and failure paths
  • Automate UI testing for critical flows
  • Run tests on real devices
  • Measure performance on target devices
  • Keep tests isolated and independent
  • Use meaningful test names
  • Maintain >80% code coverage

❌ DON'T

  • Skip testing UI-critical flows
  • Use hardcoded test data
  • Ignore performance regressions
  • Test implementation details
  • Make tests flaky or unreliable
  • Skip testing on actual devices
  • Ignore accessibility testing
  • Create interdependent tests
  • Test without mocking APIs
  • Deploy untested code

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。