1.环境准备
(1)手机一部Android 5以上,数据线连接电脑
(2)安装node.js(12以上版本),本文使用:node-v18.8.0-x64.msi(官网下载)
(3)安装appium,本文使用:Appium-Server-GUI-windows-1.22.3-4.exe(官网下载)
(4)安装Android Studio,或复制 platform-tools文件夹到项目文件夹,如需获取platform-tools请联系作者。
(5)设置环境变量ANDROID_HOME指向platform-tools
(6)设置环境变量Path指向platform-tools
(7)安装jdk8,(https://www.oracle.com/java/technologies/downloads/#java8-windows)
(8)设置环境变量JAVA_HOME指向到jdk8的安装目录。
2.启动appium
3.手机连接电脑,cmd执行命令adb devices,判断连接是否成功。
4.swathub客户端进入到设置-》高级设置,设置一下内容:
[{
"remoteURL": "http://localhost:4723/wd/hub",
"code": "Redmi Note8",
"definition": {
"os": "Android",
"osVer": "9",
"browser": "Chrome",
"browserVer": "79"
},
"capabilities": {
"automationName": "UiAutomator2",
"platformName": "Android",
"deviceName": "Android Emulator",
"skipServerInstallation": false,
"ensureWebviewsHavePages": true,
"noReset": true
}
}]
注*:和手机相关的信息请根据实际情况填写(code,osVer,browserVer)
5.获取appPackage和appActivity
(1)手机打开短信app界面
(2)打开cmd,执行
adb shell
dumpsys activity | grep -E 'mCurrentFocus|mFocusedApp'
其他方法参考*:https://blog.51cto.com/u_15127573/3257776
例如本示例获取到的是:com.android.mms/.ui.MmsTabActivity(第6步中的appPackage和appActivity会用到)
6.设置移动模型
(1)客户端点击工具-》模型获取工具-》移动-》启动移动app
(2)移动app的appium属性设置为:
{
"automationName": "UiAutomator2",
"platformName": "Android",
"appPackage": "com.android.mms",//填写第五步获取到的appPackage
"appActivity":".ui.MmsTabActivity",//填写第五步获取到的appActivity
"deviceName": "Android Emulator",
"newCommandTimeout": 0,
"noReset": true,
"ensureWebviewsHavePages": true
}
7.获取短信界面的模型,并将获取到的模型导入到在线开发平台(app模型)
8.创建一个场景。本例为短信场景
9.开发设计短信场景
(1)拖动启动app组件
(2)设置右侧属性面板的应用ID
(3)设置获取规则,和获取短信内容的输出变量
注*获取规则样例:
(一)点击json编辑器按钮
(二)选择规则模板
(三)打开上传的模型文件,点击新建操作
(四)添加一个点击命令,点击目标按钮
(五)分析模型结构,得到目标元素path:
(10)执行场景:平台选择添加的手机,点击执行按钮
(11)执行结果: