前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >appium教程_2.概念加深

appium教程_2.概念加深

作者头像
千往
发布2020-09-20 19:50:04
8870
发布2020-09-20 19:50:04
举报

appium教程_2.概念加深

启动步骤

安卓,driver为uiautomator2

通过查看appium server的日志来看整个启动过程

  1. 启动server,默认4723端口
image.png
image.png
  1. 通过/wd/hub/session接口,创建session,通过传参中的desired capabilities指定启动参数
image.png
image.png
  1. 通过本地的adb命令获取设备信息和设备API
image.png
image.png

如上图,device api是 19,这是一台安卓4的设备,后续我换成了安卓8的设备,api devel=27

  1. 给手机安装appium setting应用)
    1. 判断是否安装了appium setting应用
image.png
image.png
  1. 启动appium setting应用,进行一些设置
image.png
image.png
  1. 设置端口forward,用于UiAutomator2 Server,电脑端是8201 to 设备端的6790
image.png
image.png
  1. 判断是否安装了 uiautomator2.server
    1. 已安装的话,比较版本,安装较新的版本
    2. 签名
image.png
image.png
  1. 是否安装uiautomator2.test
    1. 已安装的话,比较版本,安装新的
    2. 签名
  2. 确认手机端的appium环境(instrumentation)是否OK,启动uiautomator2 server
image.png
image.png
  1. 启动服务,等待连接
image.png
image.png
  1. 通过session 获取设备信息
image.png
image.png
  1. respond 客户端,已经创建好了seesion
image.png
image.png
  1. 业务操作,我这里是获取当前current_activity
image.png
image.png
  1. 超时,自动delete seesion,默认60s
image.png
image.png

再看UiAutomator2

When client request to create a new AndroidDriver session, client passes desired capabilities to the appium node server. Based on the automationName property in the desired capabilities, appium redirects to the corresponding driver module (by default appium passes to appium-android-driver on the absence of automationName) If the automationName is uiautomator2 then appium redirects to appium-uiautomator2-driver to create the new session. UIAutomator2 Driver Module: Creates the session , installs the appium uiautomtor2 server apks on the device, starts the server(Netty) and initiates a Netty server session. UIAutomator2 Server Module: Once Netty server session initiated by driver module, server continues to listen on device for requests and responds accordingly until DELETE SESSION gets invoked.

再看流程

  1. 服务端启动端口,持续监听,默认为4723端口
  2. 客户端,通过http协议连接服务端,通过desired_caps来指定驱动,本例子为(UiAutomator2
  3. UiAutomator2 driver收到请求后创建session,准备环境
    1. 安装appium setting
    2. 安装uiautomator2 server
    3. 安装uiautomator2 test
    4. 设置端口forwart,电脑端(或者说server端)8201 转发到 手机端(或者说设备端)6290
    5. 启动环境,ready
    6. 应答client端
  4. 收到session创建ok的应答后,通过http请求发送指令
  5. server端在60s(默认超时时间)没有收到请求,自动删掉session
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • appium教程_2.概念加深
    • 启动步骤
    • 再看UiAutomator2
    • 再看流程
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档