📱 GoKhana移动自动化框架
人工智能辅助移动测试自动化 --使用Claude AI构建,直接在IntelliJ IDEA IDE中集成MCP Server
______________________________________________________________________
🤖 AI集成亮点
该项目是使用 克劳德·艾(人类学) 直接集成到 智能J IDEA 通过 MCP(模型上下文协议)服务器大赦国际协助:
- 🏗️ 设计整个框架架构
- 🔍 实时识别和修复Appium定位器
- 🐛 从终端输出调试测试失败
- 📝 在IDE中编写和重构Java代码
- 🔄 直接通过IDE读取、编辑和创建文件
- 🧪 构建测试用例和页面对象模型
- ⚙️ 设置并行执行和报告
MCP服务器允许Claude AI直接读取文件、编辑代码、运行构建和修复IntelliJ IDEA中的错误,使整个开发过程变得对话式和人工智能驱动。
______________________________________________________________________
🛠️ 技术栈
| 技术 | 版本 | 目的 |
|---|---|---|
| Java | 22 | 编程语言 |
| Appium | 9.2.0 | 移动自动化 |
| 硒 | 4.18.1 | WebDriver基础 |
| TestNG | 7.12.0 | 测试框架 |
| Maven | 3.x | 构建工具 |
| 扩展报告 | 5.1.1 | HTML报告 |
| Claude AI | Sonnet 4.6 | AI结对编程 |
| MCP服务器 | - | IDE↔ AI集成 |
______________________________________________________________________
📁 项目结构
2026NEW_Mobile_App/
├── src/
│ └── test/
│ └── java/
│ ├── bases/
│ │ └── Base.java # Driver setup, Appium auto-start, Login
│ ├── constants/
│ │ └── Locators.java # Central locator repository
│ ├── pages/
│ │ ├── LoginPage.java # Login flow
│ │ ├── SearchPage.java # Search functionality
│ │ ├── AccountPage.java # Account management
│ │ └── FoodOutletPage.java # Food outlet interactions
│ ├── tests/
│ │ ├── LoginTest.java
│ │ ├── SearchTest.java
│ │ ├── search/
│ │ ├── account/
│ │ └── foodOutlets/
│ └── utils/
│ ├── TestListener.java # Screenshots on failure
│ └── ExtentReportManager.java # HTML reports
│ └── resources/
│ ├── testng.xml # Main test suite
│ ├── testng-parallel.xml # Parallel execution suite
│ └── config.template.properties # Config template (safe to share)
├── APP_Resource/ # APK files (gitignored)
├── screenshots/ # Auto-generated on failure
├── reports/ # ExtentReports HTML output
└── pom.xml______________________________________________________________________
✨ 特性
- ✅ 页面对象模型 --定位器和动作的干净分离
- ✅ 中央定位库 --中的所有XPath
Locators.java - ✅ Appium自动启动/停止 --无需手动管理服务器
- ✅ 设备切换 --通过配置在仿真器和物理设备之间切换
- ✅ 并行执行 --在仿真器和物理设备上同时运行
- ✅ 智能键盘操作 --物理返回按钮,点击模拟器
- ✅ 故障截图 --登录和测试失败时自动捕获
- ✅ 扩展报告HTML --美丽的深色主题测试报告
- ✅ APK自动安装 --在测试运行之前安装并验证应用程序
- ✅ 配置模板 --团队使用的安全凭证管理
______________________________________________________________________
🚀 入门指南
先决条件
- Java 22
- Maven 3.x
- Node.js+Appium(
npm install -g appium) - 安卓SDK+ADB
- 智能J IDEA
设置
- 克隆仓库
git clone https://github.com/YOUR_USERNAME/2026NEW_Mobile_App.git- 创建您的配置
cp src/test/resources/config.template.properties src/test/resources/config.properties
# Fill in your device details and credentials- 添加您的APK
Place your APK in: APP_Resource/
Update apkPath in config.properties- 运行测试
# Via Maven
mvn clean test
# Via IntelliJ — right-click testng.xml → Run______________________________________________________________________
📊 测试覆盖率
| 模块 | 测试 |
|---|---|
| 登录 | 带键盘处理的OTP登录流程 |
| 搜索 | 精确、部分、大写、小写搜索 |
| 帐户 | 添加/编辑详细信息、公司代码、收藏夹、地址、删除 |
| 食品店 | 增加/减少数量,查看购物车,柜台页面 |
______________________________________________________________________
📸 报告和截图
- HTML报告:
reports/GoKhana_Report_[timestamp].html - 故障截图:
screenshots/[testName]_[timestamp].png - 登录失败:
screenshots/LOGIN_FAILED_[timestamp].png
______________________________________________________________________
🔧 配置
在设备之间切换 config.properties:
# Use 'physical' or 'emulator'
targetDevice=physical______________________________________________________________________
🤝 人工智能辅助开发
该项目展示了现代 人工智能增强工程 在测试自动化中:
- 克劳德·艾(人类学) 已集成到 智能J IDEA 通过 MCP(模型上下文协议)服务器
- AI可以在IDE中直接读/写文件、运行构建、修复编译错误和实时调试测试失败
- 所有框架架构、定位器策略、调试和代码都与人工智能进行了对话式配对编程
- 这种方法大大缩短了开发时间,同时保持了生产质量代码标准
💡 这展示了Claude AI等人工智能工具与MCP Server集成如何改变自动化工程师构建框架的方式——更快、更智能、更高效。
______________________________________________________________________
👨💻 作者
安巴尔
- 移动自动化工程师
- 使用Claude AI+MCP Server+IntelliJ IDEA构建的AI对编程框架
