文档 TestBench
一个示例Android应用程序和Node.js后端,用于对基于MCP的移动测试工具进行基准测试。该应用程序模拟了一个有四个选项卡的拼车服务,每个选项卡都由不同的HTTP库(Volley、Retrofit、OkHttp、HttpURLConnection)支持。应用程序中植入了两个bug,这两个bug在屏幕上都是看不见的。
阅读完整的基准测试报告: 在3个Android安全带上进行80次测试
存储库结构
android-testbench/ Android app (Kotlin)
nodejs-testbench/ Express API server
benchmark/
TEST_PLAN.md 11 end-to-end test cases
apks/ Pre-built APKs (place yours here)先决条件
- Node.js 18+
- 安卓SDK 34,JDK 17
- Android设备或模拟器
- 尾鳞 安装在您的计算机上(用于服务器和云/远程设备之间的网络连接)
1.设置Tailscale
安装Tailscale并验证:
# macOS
brew install tailscale
# or download from https://tailscale.com/download
tailscale up注意你的Tailscale IP——你需要它来配置应用程序:
tailscale ip -4从获取身份验证密钥 Tailscale管理控制台 如果您需要以编程方式对设备进行身份验证。
2.启动后端服务器
在单独的终端中:
cd nodejs-testbench
npm install
node server.js
# => TestBench API server running on http://0.0.0.0:3000在测试期间保持此运行状态。
3.在应用程序中配置服务器URL
应用程序需要访问Node.js服务器。默认值为 http://10.0.2.2:3000,当服务器与Android模拟器在同一台机器上运行时,它就可以工作。
对于其他设置(物理设备、云模拟器、Tailscale隧道):
cd android-testbench
./scripts/set-server-url.sh http://:30004.构建APK
cd android-testbench
./scripts/setup.sh # first time only — sets up Gradle and local.properties
./scripts/build.sh # builds a debug APKAPK将在 android-testbench/app/build/outputs/apk/debug/app-debug.apk.
将通用APK复制到基准文件夹中:
cp android-testbench/app/build/outputs/apk/debug/app-debug.apk benchmark/apks/5.安装并运行
adb install -r benchmark/apks/app-debug.apk
adb shell am start -n com.testbench.app/.ConfigSelectionActivity6.安装MCP线束
安装一个或多个要进行基准测试的线束:
Doksi MCP --通过MCP托管安卓设备
# Get your API key from https://doksi.ai
npx @anthropic-ai/claude-code --add-mcp '{"type":"npx","package":"doksi-mcp","args":["--apiKey","YOUR_DOKSI_API_KEY"]}'移动mcp --本地仿真器控制
https://github.com/mobile-next/mobile-mcp代理设备 --本地仿真器控制
https://github.com/callstackincubator/agent-device7.运行基准测试
对于Doksi MCP运行,导出您的Tailscale认证密钥,以便代理可以启动到您服务器的隧道:
export TAILSCALE_AUTH_KEY=tskey-auth-...从 benchmark/ 目录,从中选择适当的提示 PROMPTS.md 对于要测试的线束和配置,请启动代理:
cd benchmark
claude粘贴所选线束的提示。测试计划位于 TEST_PLAN.md -11个测试案例,涵盖每个选项卡、每个API调用和完整的登录到注销生命周期。
如果您的线束报告11/11通过,则它错过了种植的虫子。
许可证
麻省理工学院
