zoukankan      html  css  js  c++  java
  • 利用python+Appium 之 如何在设备(模拟器)上自动安装并启动APP

    大家都知道,要测试模拟用户在手机端安装一个APP, 首先会考虑到,在什么设备下安装,设备版本是啥,设备名称是啥,我要安装啥APP。安装完毕以后我要启动和登录APP。

    那如何利用python + appium模块如何实现这波操作呢???

    思路:

    (1)测试环境是什么???是Android?还是iOS???此处以Android为例进行分析:

    设备:Android

    版本:4.4.2  (Android对应的版本)

    设备名称:127.0.0.1:62001 (注意,此处是我的模拟器,如果是真机,可以在【设置】-【关于手机】-【型号】来看)

    待安装的APP:手机端QQ

    Appium中想要通过自编写的测试脚本来实现对模拟器/真机上的各类操作,需要appium-server来支撑它,因为appium-server可以专门实现与Android的通信,搭建一个通信桥梁。只有开启了appium-sever服务器,并且成功连接设备才能真正实现数据交互,实现通信。

    前置准备:

    (1)连接Android设备

    (2)开启appium-server服务

    启动【appium-desktop】-【start sever】即可。

     

    如何在appium-desktop上进行APP的Capbility配置???

    配置解释:

    (1)platformName:设备名称

    (2)platformVersion:版本

    (3)deviceName:设备名称。如果是真机,则就是你的手机型号;如果是模拟器,你可以用:adb devices来获取你的设备名称(注意,前提是该设备已经连接了)。

    (4)appPackage:包名。可以通过cmd命令行:appt dump badging 待安装的.apk路径。如:appt dump badging E:\XXX.apk

    (5)appActivity:启动launch-Activity。可以通过命令行:appt dump badging E:\XXX.apk |findstr-launchable-activity

    (6)noReset:不重置。Ture:不重置,也就是当你启动过这个APP后,如果不重置,那么他会记录一些已经做过了的一些操作。假如一个APP,你安装好了之后,首次启动它,也许它会弹出一些比如升级、或者跳过某些广告的操作。如果你的noReset=true,则下次你再次启动时,就不会再弹出这些弹窗。如果你的noRest=false,这下次启动时,仍会弹出这些弹框,就类似于手机的一个出厂设置状态一样。

    在appium-desktop中可以进行Capbility进行设置,同时,你也可以自己通过脚本来进行配置。

    注意:当需要在某些APP应用中的输入框中输入中文时,需要在Capbility中配置:

    这样设置之后,会有Appium的输入法守护来执行输入操作。从而防止乱码的发生。

    当运行这个脚本后,可以在你的模拟器或者真机上观察到QQ的安装和启动。

  • 相关阅读:
    sql 存储过程
    Chrome系列 Failed to load resource: net::ERR_CACHE_MISS
    oledb 操作 excel
    [转]基于SQL脚本将数据库表及字段提取为C#中的类
    Ul li 竖排 菜单
    JS判断checkbox至少选择一项
    JS 字符串转日期格式 日期格式化字符串
    setInterval 实时驱动界面改变
    Let's Format Css Documents
    Web颜色搭配
  • 原文地址:https://www.cnblogs.com/xqq-admin-content/p/10061547.html
Copyright © 2011-2022 走看看