五杀摇滚小拉夫

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  188 随笔 :: 0 文章 :: 19 评论 :: 99707 阅读
复制代码
1.Appium是什么?
Appium是一个跨平台移动端自动化测试工具,可以便捷的为ios和Android平台创建自动化测试用例。
模拟app内部各种操作,点击、滑动、文本输入等,手工操作的动作appium都能完成。
ios设备:appium使用UIAutomation实现驱动
Android设备:使用UIAutomator和Selendroid来实现驱动。

2.启动Appium,监听4723端口。

3.配置Android手机通过数据线和运行的Appium的PC相连,打开手机端USB调试功能确保可以连接到手机。

adb在上一节已经配置安装完成(参照上一节)。

cmd输入adb命令测试连接情况:  adb devices -l  (连接成功如下图所示,我用的是小米5x)

这里获取的连接信息配置要用到。

 4.Appium内置驱动打开App,点击Appium 中搜索符号,如图进入配置界面配置Desired Capabilities 参数 

 platformName:平台名称

 deviceName:设备名称

 appPackage:app程序包名

 appActivity:入口Activity名,通常以.开头

5.点击保存

6.点击 start session,就可以启动Android 手机上的微信app并进入启动页面,但是我这里出现了一个问题报了一个错误。

复制代码

 

复制代码
appium界面情况:
[Appium] Welcome to Appium v1.9.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723
[HTTP] --> GET /wd/hub/sessions
[HTTP] {}
[GENERIC] Calling AppiumDriver.getSessions() with args: []
[GENERIC] Responding to client with driver.getSessions() result: []
[HTTP] <-- GET /wd/hub/sessions 200 11 ms - 40
[HTTP] 
[HTTP] --> GET /wd/hub/sessions
[HTTP] {}
[GENERIC] Calling AppiumDriver.getSessions() with args: []
[GENERIC] Responding to client with driver.getSessions() result: []
[HTTP] <-- GET /wd/hub/sessions 200 3 ms - 40
[HTTP] 
[HTTP] --> POST /wd/hub/session
[HTTP] {"desiredCapabilities":{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true},null,null]
[BaseDriver] Event 'newSessionRequested' logged at 1541407442906 (16:44:02 GMT+0800 (中国标准时间))
[Appium] Creating new AndroidDriver (v4.1.1) session
[Appium] Capabilities:
[Appium]   appActivity: .ui.LauncherUI
[Appium]   appPackage: com.tencent.mm
[Appium]   deviceName: MI_5X
[Appium]   platformName: Android
[Appium]   newCommandTimeout: 0
[Appium]   connectHardwareKeyboard: true
[BaseDriver] Creating session with MJSONWP desired capabilities: {"appActivity":".ui.Launche...
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: 1ec2b612-50a3-4a7c-b830-6cdd026cf0e4
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn't active
[BaseDriver] Event 'newSessionStarted' logged at 1541407443065 (16:44:03 GMT+0800 (中国标准时间))
[MJSONWP] Encountered internal error running command: Error: Command 'java' not found. Is it installed?
[MJSONWP]     at ChildProcess. (C:\Users\vm510\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\teen_process\lib\exec.js:39:14)
[MJSONWP]     at ChildProcess.emit (events.js:182:13)
[MJSONWP]     at Process.ChildProcess._handle.onexit (internal/child_process.js:235:12)
[MJSONWP]     at onErrorNT (internal/child_process.js:406:16)
[MJSONWP]     at process._tickCallback (internal/process/next_tick.js:63:19)
[HTTP] <-- POST /wd/hub/session 500 164 ms - 179
[HTTP] 
[HTTP] --> DELETE /wd/hub/session
[HTTP] {}
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- DELETE /wd/hub/session 404 8 ms - 57
[HTTP] 
[HTTP] --> POST /wd/hub/session
[HTTP] {"desiredCapabilities":{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true},null,null]
[BaseDriver] Event 'newSessionRequested' logged at 1541407449259 (16:44:09 GMT+0800 (中国标准时间))
[Appium] Creating new AndroidDriver (v4.1.1) session
[Appium] Capabilities:
[Appium]   appActivity: .ui.LauncherUI
[Appium]   appPackage: com.tencent.mm
[Appium]   deviceName: MI_5X
[Appium]   platformName: Android
[Appium]   newCommandTimeout: 0
[Appium]   connectHardwareKeyboard: true
[BaseDriver] Creating session with MJSONWP desired capabilities: {"appActivity":".ui.Launche...
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: aad85d91-1bb2-465e-8e3c-e0cd1a4c12c4
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn't active
[BaseDriver] Event 'newSessionStarted' logged at 1541407449271 (16:44:09 GMT+0800 (中国标准时间))
[MJSONWP] Encountered internal error running command: Error: Command 'java' not found. Is it installed?
[MJSONWP]     at ChildProcess. (C:\Users\vm510\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\teen_process\lib\exec.js:39:14)
[MJSONWP]     at ChildProcess.emit (events.js:182:13)
[MJSONWP]     at Process.ChildProcess._handle.onexit (internal/child_process.js:235:12)
[MJSONWP]     at onErrorNT (internal/child_process.js:406:16)
[MJSONWP]     at process._tickCallback (internal/process/next_tick.js:63:19)
[HTTP] <-- POST /wd/hub/session 500 16 ms - 179
[HTTP] 
[HTTP] --> DELETE /wd/hub/session
[HTTP] {}
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- DELETE /wd/hub/session 404 1 ms - 57
[HTTP] 
[HTTP] --> POST /wd/hub/session
[HTTP] {"desiredCapabilities":{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true},null,null]
[BaseDriver] Event 'newSessionRequested' logged at 1541407492319 (16:44:52 GMT+0800 (中国标准时间))
[Appium] Creating new AndroidDriver (v4.1.1) session
[Appium] Capabilities:
[Appium]   appActivity: .ui.LauncherUI
[Appium]   appPackage: com.tencent.mm
[Appium]   deviceName: MI_5X
[Appium]   platformName: Android
[Appium]   newCommandTimeout: 0
[Appium]   connectHardwareKeyboard: true
[BaseDriver] Creating session with MJSONWP desired capabilities: {"appActivity":".ui.Launche...
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: 1eef1933-beb8-40d3-bf1f-d58fa8b266bf
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn't active
[BaseDriver] Event 'newSessionStarted' logged at 1541407492348 (16:44:52 GMT+0800 (中国标准时间))
[MJSONWP] Encountered internal error running command: Error: Command 'java' not found. Is it installed?
[MJSONWP]     at ChildProcess. (C:\Users\vm510\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\teen_process\lib\exec.js:39:14)
[MJSONWP]     at ChildProcess.emit (events.js:182:13)
[MJSONWP]     at Process.ChildProcess._handle.onexit (internal/child_process.js:235:12)
[MJSONWP]     at onErrorNT (internal/child_process.js:406:16)
[MJSONWP]     at process._tickCallback (internal/process/next_tick.js:63:19)
[HTTP] <-- POST /wd/hub/session 500 31 ms - 179
[HTTP] 
[HTTP] --> DELETE /wd/hub/session
[HTTP] {}
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- DELETE /wd/hub/session 404 2 ms - 57
[HTTP] 
[HTTP] --> POST /wd/hub/session
[HTTP] {"desiredCapabilities":{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true},null,null]
[BaseDriver] Event 'newSessionRequested' logged at 1541407700506 (16:48:20 GMT+0800 (中国标准时间))
[Appium] Creating new AndroidDriver (v4.1.1) session
[Appium] Capabilities:
[Appium]   appActivity: .ui.LauncherUI
[Appium]   appPackage: com.tencent.mm
[Appium]   deviceName: MI_5X
[Appium]   platformName: Android
[Appium]   newCommandTimeout: 0
[Appium]   connectHardwareKeyboard: true
[BaseDriver] Creating session with MJSONWP desired capabilities: {"appActivity":".ui.Launche...
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: 7de96b9a-4680-420e-bdee-d8c9619f12b6
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn't active
[BaseDriver] Event 'newSessionStarted' logged at 1541407700532 (16:48:20 GMT+0800 (中国标准时间))
[MJSONWP] Encountered internal error running command: Error: Command 'java' not found. Is it installed?
[MJSONWP]     at ChildProcess. (C:\Users\vm510\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\teen_process\lib\exec.js:39:14)
[MJSONWP]     at ChildProcess.emit (events.js:182:13)
[MJSONWP]     at Process.ChildProcess._handle.onexit (internal/child_process.js:235:12)
[MJSONWP]     at onErrorNT (internal/child_process.js:406:16)
[MJSONWP]     at process._tickCallback (internal/process/next_tick.js:63:19)
[HTTP] <-- POST /wd/hub/session 500 30 ms - 179
[HTTP] 
[HTTP] --> DELETE /wd/hub/session
[HTTP] {}
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- DELETE /wd/hub/session 404 1 ms - 57
[HTTP] 
[HTTP] --> POST /wd/hub/session
[HTTP] {"desiredCapabilities":{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true},null,null]
[BaseDriver] Event 'newSessionRequested' logged at 1541407780059 (16:49:40 GMT+0800 (中国标准时间))
[Appium] Creating new AndroidDriver (v4.1.1) session
[Appium] Capabilities:
[Appium]   appActivity: .ui.LauncherUI
[Appium]   appPackage: com.tencent.mm
[Appium]   deviceName: MI_5X
[Appium]   platformName: Android
[Appium]   newCommandTimeout: 0
[Appium]   connectHardwareKeyboard: true
[BaseDriver] Creating session with MJSONWP desired capabilities: {"appActivity":".ui.Launche...
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: a53170dd-299c-4767-81f8-b6999ef40638
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn't active
[BaseDriver] Event 'newSessionStarted' logged at 1541407780083 (16:49:40 GMT+0800 (中国标准时间))
[MJSONWP] Encountered internal error running command: Error: Command 'java' not found. Is it installed?
[MJSONWP]     at ChildProcess. (C:\Users\vm510\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\teen_process\lib\exec.js:39:14)
[MJSONWP]     at ChildProcess.emit (events.js:182:13)
[MJSONWP]     at Process.ChildProcess._handle.onexit (internal/child_process.js:235:12)
[MJSONWP]     at onErrorNT (internal/child_process.js:406:16)
[MJSONWP]     at process._tickCallback (internal/process/next_tick.js:63:19)
[HTTP] <-- POST /wd/hub/session 500 27 ms - 179
[HTTP] 
[HTTP] --> DELETE /wd/hub/session
[HTTP] {}
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- DELETE /wd/hub/session 404 1 ms - 57
[HTTP] 
[HTTP] --> POST /wd/hub/session
[HTTP] {"desiredCapabilities":{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{"appActivity":".ui.LauncherUI","appPackage":"com.tencent.mm","deviceName":"MI_5X","platformName":"Android","newCommandTimeout":0,"connectHardwareKeyboard":true},null,null]
[BaseDriver] Event 'newSessionRequested' logged at 1541408028828 (16:53:48 GMT+0800 (中国标准时间))
[Appium] Creating new AndroidDriver (v4.1.1) session
[Appium] Capabilities:
[Appium]   appActivity: .ui.LauncherUI
[Appium]   appPackage: com.tencent.mm
[Appium]   deviceName: MI_5X
[Appium]   platformName: Android
[Appium]   newCommandTimeout: 0
[Appium]   connectHardwareKeyboard: true
[BaseDriver] Creating session with MJSONWP desired capabilities: {"appActivity":".ui.Launche...
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: 26f601d9-0b75-4b0a-8f11-2a43dfc53112
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn't active
[BaseDriver] Event 'newSessionStarted' logged at 1541408028848 (16:53:48 GMT+0800 (中国标准时间))
[MJSONWP] Encountered internal error running command: Error: Command 'java' not found. Is it installed?
[MJSONWP]     at ChildProcess. (C:\Users\vm510\AppData\Local\Programs\Appium\resources\app\node_modules\appium\node_modules\teen_process\lib\exec.js:39:14)
[MJSONWP]     at ChildProcess.emit (events.js:182:13)
[MJSONWP]     at Process.ChildProcess._handle.onexit (internal/child_process.js:235:12)
[MJSONWP]     at onErrorNT (internal/child_process.js:406:16)
[MJSONWP]     at process._tickCallback (internal/process/next_tick.js:63:19)
[HTTP] <-- POST /wd/hub/session 500 23 ms - 179
[HTTP] 
[HTTP] --> DELETE /wd/hub/session
[HTTP] {}
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- DELETE /wd/hub/session 404 1 ms - 57
[HTTP] 
[HTTP] --> GET /wd/hub/sessions
[HTTP] {}
[GENERIC] Calling AppiumDriver.getSessions() with args: []
[GENERIC] Responding to client with driver.getSessions() result: []
[HTTP] <-- GET /wd/hub/sessions 200 2 ms - 40
[HTTP] 
[HTTP] --> GET /wd/hub/sessions
[HTTP] {}
[GENERIC] Calling AppiumDriver.getSessions() with args: []
[GENERIC] Responding to client with driver.getSessions() result: []
[HTTP] <-- GET /wd/hub/sessions 200 1 ms - 40
[HTTP] 
复制代码

 

posted on   五杀摇滚小拉夫  阅读(4814)  评论(2编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示