Appium-实战之启动App

作者: 五娃儿 | 来源:发表于2017-11-13 18:23 被阅读96次

在尝试多天的Monkey之后,发现不能从根源上解决当前的需求,故开启Appium小白之路。

代码如下:

#coding:utf-8

import os
from appium import webdriver

PATH = lambda p: os.path.abspath(
    os.path.join(os.path.dirname(__file__), p)
)

desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '4.4'
desired_caps['deviceName'] = '连接的真机名'#
desired_caps['app'] = PATH('./app/v2.0.0.apk')
desired_caps['appPackage'] = 'package'
desired_caps['appActivity'] = package+启动activity'
desired_caps['noSign'] = True  # 跳过检查签名,只做UI测试
desired_caps['unicodeKeyboard'] = True  # 使用Unicode编码方式发送字符串
desired_caps['resetKeyboard'] = True  # 隐藏系统键盘
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
driver.implicitly_wait(5)
driver.quit()

问题一:如何获取真机的UDID?

  • 通过adb devices, 图中的3e3e9ae9 是连接手机的唯一设备识别符。


    结果.png

问题二:appPAth为何是./app下?

  • 目录结构如下图,此目录结构暂时如此,可以根据自身需要进行调整,所以apk均被放到了app目录下。


    目录结构.png

问题三:appPackage的获取?

  • 通过 aapt dump badging v2.0.0.apk
    结果示意图.png

问题四:appActivity如何获取?

  • 通过AndroidManifest.xml文件中的intent-filte里面的android.intent.category.LAUNCHER查找,因为LAUNCHER这一项是是唯一的;然只找到这个activity是不够的,还需要xml顶部的package名字。格式参考:com.xxx.xxx.activity.xxxx。


    xml样例截图.png
    xml样例头的包名位置.png

问题五:webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)的作用?

  • 作用:启动app。
    ip地址和端口号需要和Appium客户端的Server Address 保持一致。


    Appium客户端链接的服务器地址.png
  • 总结:
    主要在第四步的时候耽误的时间比较久,网上搜索答案时,只说是启动app,后来咨询了开发小伙伴,才知道要按照包名+启动activity的结果
    因为实际一个手机上会有多个app,但是可能某几个app的启动项的activity名是相同的,加上包名是为了进行区分,因为包名是唯一的。

相关文章

  • Appium-实战之启动App

    在尝试多天的Monkey之后,发现不能从根源上解决当前的需求,故开启Appium小白之路。 代码如下: 问题一:如...

  • Appium-实战之滑屏

    我司app安装后,有4页的引导页,需要左滑,左滑,左滑,在左滑,然今天滑的比较“艰难”,《先看结果后看问题》。 o...

  • 重学iOS系列之APP启动(七)优化总结

    前文已经通过源码分析以及实战演练带领读者学习了APP启动的整个过程,既然知识已经学了,就要学以致用。 APP启动-...

  • SwiftUI iOS 完整项目之基于CoreData构建购物计

    实战需求 SwiftUI iOS 完整项目之基于CoreData构建购物计划App(App Store上线app)...

  • IOS APP 优化(一)

    启动问题,APP启动慢,从启动到展示主页面视图需要5秒以上。 首先,研究APP启动流程。 优化方向,main函数之...

  • APP性能优化(一)启动优化

    iOS App 启动性能优化WWDC之优化App启动速度 Instruments 包含的工具有很多,Time Pr...

  • App优化--启动速度

    转自 : Android性能优化之启动优化实战[https://zhuanlan.zhihu.com/p/8906...

  • iOS app启动优化方案

    一、APP的启动 二、App启动阶段 APP的启动 - dyld APP的启动 - runtime APP的启动 ...

  • 启动优化 二进制重排

    一、启动优化 冷启动:第一次启动App热启动 启动优化一般讲的是冷启动 启动阶段:main函数之前、main函数之...

  • 【项目优化】App启动优化实战

    前言 某次在开发阶段,发现App启动过程中既然有3-4s的白屏时间,瞬间慌了,到底干了些什么??? 分析 启动时间...

网友评论

    本文标题:Appium-实战之启动App

    本文链接:https://www.haomeiwen.com/subject/oznzmxtx.html