Mobile Testing AI Agent MCP Server
MCP-сервер AI-агента для мобильного тестирования и автоматизации
Мобильное тестирование, мобильная автоматизация, мобильный QA и фреймворк для автоматизации мобильного тестирования на базе ИИ-агентов и инструментов MCP.
Обзор проекта: мобильное тестирование, мобильная автоматизация и мобильный QA
Этот репозиторий предоставляет фреймворк на базе ИИ для мобильного тестирования и автоматизации мобильного тестирования (плюс проверка веб-сайтов) с использованием:
Агент планирования: исследует целевое приложение или сайт и создает структурированный план тестирования в формате Markdown для мобильного QA.
Агент генерации: преобразует план тестирования Markdown в исполняемые тесты Playwright или Mobilewright для рабочих процессов мобильной автоматизации.
Агент восстановления: запускает тесты, обнаруживает сбои и пытается выполнить циклы автоматического восстановления для повышения стабильности автоматизации мобильного тестирования.
Оркестраторы Android и iOS: запускают Planner -> Generator -> Healer в качестве сквозных конвейеров для каждой платформы и жизненного цикла мобильного тестирования.
MCP-сервер: предоставляет фреймворк в виде вызываемых инструментов MCP через stdio для ИИ-клиентов и платформ автоматизации.
Фреймворк разработан для ускорения написания мобильных тестов, повышения стабильности тестов и обеспечения расширяемой базы для рабочих процессов мобильного QA с поддержкой ИИ.
Быстрая настройка для автоматизации мобильного тестирования (одна команда)
Для быстрой настройки веб-тестирования:
npm install && npx playwright install chromiumЗатем запустите веб-тест по умолчанию:
npm run test:webДополнительная настройка окружения:
cp .env.example .envВ Windows PowerShell:
Copy-Item .env.example .envЗависимости для мобильной автоматизации и мобильного QA
Обязательно
Node.js 18+
npm 9+
Браузер Playwright Chromium
Основные NPM-пакеты
mobilewright
@playwright/test
playwright
@modelcontextprotocol/sdk
zod
openai
dotenv
fs-extra
chalk
axios
cheerio
Предварительные требования к платформе
Веб
Дополнительная настройка после установки зависимостей и Chromium не требуется.
Android
Установлен Android SDK
ADB доступен в PATH
Настроен ANDROID_HOME
Подключено хотя бы одно устройство Android или эмулятор
Полезные проверки:
npm run doctor
npm run devicesiOS
Хост macOS для локальной автоматизации iOS
Xcode + Command Line Tools
Запущенный симулятор iOS (или совместимый облачный провайдер мобильных устройств)
Структура репозитория для проектов мобильного тестирования
Mobile-App-Testing-AI-Agent-MCP-Server/
├── agents/
│ ├── planner.js
│ ├── generator.js
│ └── healer.js
├── mcp/
│ └── server.js
├── orchestrators/
│ ├── android-orchestrator.js
│ └── ios-orchestrator.js
├── tests/
│ ├── generated/
│ └── uselessweb/
│ ├── uselessweb.spec.js
│ ├── uselessweb-android.test.js
│ └── uselessweb-ios.test.js
├── plans/
│ └── uselessweb-org--web-test-plan.md
├── reports/
├── mobilewright.config.js
├── playwright.config.js
├── .env.example
└── package.jsonЗа что отвечает каждая область в мобильном тестировании и автоматизации
agents: реализации ИИ-агентов для планирования, генерации и восстановления в конвейерах автоматизации мобильного тестирования.
mcp: stdio MCP-сервер, предоставляющий инструменты планировщика, генератора, восстановителя и оркестратора.
orchestrators: платформо-зависимые исполнители конвейеров для мобильной автоматизации Android и iOS.
tests: исполняемые спецификации, включая сгенерированные тесты и отобранные примеры для мобильного QA.
plans: планы тестирования в формате Markdown, используемые в качестве исходных данных для генерации кода.
reports: артефакты выполнения мобильного тестирования и восстановления.
Руководство по использованию для мобильного тестирования и мобильного QA
1. Запуск набора веб-тестов
npm run test:web2. Запуск проектов мобильных видовых экранов в Playwright (мобильное тестирование)
npm run test:mobile-chrome
npm run test:mobile-safari3. Запуск тестов Mobilewright для Android или iOS для мобильной автоматизации
npm run test:android
npm run test:ios4. Использование отдельных ИИ-агентов
Планировщик
npm run agent:planner
npm run agent:planner:android
npm run agent:planner:iosПример прямого CLI:
node agents/planner.js --url=https://uselessweb.org/ --platform=web --out=plans/Генератор
npm run agent:generator
npm run agent:generator:android
npm run agent:generator:iosПример прямого CLI:
node agents/generator.js --plan=plans/uselessweb-org--web-test-plan.md --platform=web --out=tests/generated/Восстановитель
npm run agent:healer
npm run agent:healer:android
npm run agent:healer:iosПример прямого CLI:
node agents/healer.js --spec=tests/uselessweb/uselessweb.spec.js --platform=web --retries=35. Добавление нового теста с агентами Android и iOS (процесс автоматизации мобильного тестирования)
Используйте этот процесс, если хотите создать тесты для нового целевого URL в вашем процессе мобильного QA.
Процесс агента Android (планирование -> генерация -> запуск -> восстановление)
Создайте план тестирования Android:
node agents/planner.js --url=https://uselessweb.org --platform=android --out=plans/Сгенерируйте тесты Android из плана:
node agents/generator.js --plan=plans/example-com-android-test-plan.md --platform=android --out=tests/generated/Запустите сгенерированный тест Android:
npx mobilewright test tests/generated/example-com-android-test-plan.test.jsАвтоматически восстановите сбойные тесты Android:
node agents/healer.js --spec=tests/generated/example-com-android-test-plan.test.js --platform=android --retries=3Процесс агента iOS (планирование -> генерация -> запуск -> восстановление)
Создайте план тестирования iOS:
node agents/planner.js --url=https://uselessweb.org --platform=ios --out=plans/Сгенерируйте тесты iOS из плана:
node agents/generator.js --plan=plans/example-com-ios-test-plan.md --platform=ios --out=tests/generated/Запустите сгенерированный тест iOS:
npx mobilewright test tests/generated/example-com-ios-test-plan.test.jsАвтоматически восстановите сбойные тесты iOS:
node agents/healer.js --spec=tests/generated/example-com-ios-test-plan.test.js --platform=ios --retries=3Дополнительно: используйте оркестраторы вместо ручного запуска каждого шага
npm run orchestrate:android -- --url=https://uselessweb.org --retries=3
npm run orchestrate:ios -- --url=https://uselessweb.org --retries=36. Запуск конвейеров оркестрации для мобильной автоматизации
Конвейер Android
npm run orchestrate:androidКонвейер iOS
npm run orchestrate:ios7. Запуск полного веб-конвейера ИИ
npm run pipeline:webЭто выполняет Planner -> Generator -> Healer для веба.
7b. Запуск полных конвейеров мобильного QA
Для сквозной автоматизации мобильного тестирования на каждой платформе:
npm run orchestrate:android
npm run orchestrate:ios8. Запуск MCP-сервера
npm run mcp:startСервер работает через stdio и предоставляет инструменты, включая:
health_check
run_planner
run_generator
run_healer
run_orchestrator
list_repo_commands
9. Локальная проверка инструментов MCP
npm run mcp:inspect10. Пример конфигурации клиента MCP
Используйте это в файле конфигурации клиента, поддерживающего MCP:
{
"mcpServers": {
"mobile-testing-ai-agent": {
"command": "node",
"args": ["mcp/server.js"],
"cwd": "."
}
}
}11. CI/CD конвейер (GitHub Actions)
Этот репозиторий теперь включает рабочий процесс CI/CD в .github/workflows/ci-cd.yml.
Поведение CI:
Запускается при пушах в main и pull-запросах, направленных в main.
Устанавливает зависимости с помощью npm ci.
Устанавливает Playwright Chromium.
Выполняет веб-набор с помощью npm run test:web.
Загружает артефакты отчетов Playwright, если они доступны.
Поведение CD:
Запускается после CI при пушах в main.
Запускает развертывание только в том случае, если DEPLOY_WEBHOOK_URL настроен как секрет репозитория.
Безопасно пропускает развертывание, если секрет не установлен.
Чтобы включить развертывание, добавьте этот секрет репозитория:
DEPLOY_WEBHOOK_URL
Вклад в мобильное тестирование и мобильную автоматизацию
Вклад приветствуется. Пожалуйста, следуйте приведенному ниже рабочему процессу:
Сделайте форк репозитория.
Создайте ветку функции из main.
Сохраняйте изменения сфокусированными и четко определенными.
Добавляйте или обновляйте тесты для нового поведения.
Выполните соответствующие проверки перед открытием PR:
npm run test:web
npm run test:all
npm run doctor (для мобильных сред)
Откройте pull-запрос с:
четким описанием проблемы
кратким изложением реализации
доказательством проверки (логи, вывод тестов, скриншоты, где это полезно)
Рекомендации по внесению вклада
Предпочитайте небольшие, проверяемые pull-запросы.
Избегайте несвязанных рефакторингов в одном PR.
Сохраняйте соглашения об именовании скриптов и папок.
Документируйте новые команды и поведение агентов в этом README.
Благодарности
Этот проект построен на базе отличной экосистемы Mobilewright.
Фреймворк Mobilewright: https://github.com/mobile-next/mobilewright
Документация Mobilewright: https://mobilewright.dev
Особая благодарность сопровождающим и участникам Mobilewright за обеспечение практических рабочих процессов мобильной автоматизации для Android и iOS.
Лицензия
ISC
Часто задаваемые вопросы о мобильном тестировании (SEO)
Что такое автоматизация мобильного тестирования?
Автоматизация мобильного тестирования — это практика использования инструментов и скриптов для автоматической проверки мобильных приложений и мобильных веб-интерфейсов на Android и iOS.
Как этот репозиторий помогает в мобильном QA?
Этот проект поддерживает мобильный QA с помощью планирования на базе ИИ, генерации тестов и выполнения самовосстановления, а также процессов оркестрации Android и iOS.
Подходит ли это для команд мобильной автоматизации?
Да. Он создан для команд, которым нужна масштабируемая мобильная автоматизация, повторяемые конвейеры тестирования и более быстрые циклы обратной связи для релизов.
На какие ключевые слова мобильного тестирования ориентирован этот фреймворк?
Этот фреймворк фокусируется на практических рабочих процессах для мобильного тестирования, мобильной автоматизации, мобильного QA и автоматизации мобильного тестирования.
Есть вопросы?
Если у вас есть вопросы:
💬 Откройте GitHub Discussion
🐛 Сообщайте об ошибках через GitHub Issues
📧 Email: padmaraj dot nidagundi at gmail.com
Время ответа: Обычно 24-48 часов
Приветствуем новых участников! 👋
Новичок в open source? Нет проблем! Ищите задачи с тегами good-first-issue или help-wanted. Мы предоставляем наставничество и руководство, чтобы помочь вам добиться успеха.
Спасибо, что делаете автоматизацию тестирования лучше для всех! 🚀
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/padmarajnidagundi/Mobile-App-Testing-AI-Agent-MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server