zoukankan      html  css  js  c++  java
  • Appium(三):安装appium client、adb命令

    1. 安装appium client

    appium client是对webdriver原生api的一些扩展和封装。它可以帮助我们更容易的写出用例,写出更好的用例。

    appium client是配合原生的webdriver来使用的,因此二者必须配合使用,缺一不可。

    我们使用pip安装“Appium-Python-Client”。

    pip install Appium-Python-Client

    2. adb命令

    2.1 adb的工作原理 

    2.1.1 adb的概念

    ADB全名Android Debug Bridge,是一个调试工具。

    adb是多用途的命令行工具(command line tool)通过它,我们可以与模拟器(emulator)以及安卓设备(android device)进行通信交流。
    开发安卓应用的程序员必须要掌握
    测试工程师在做安卓应用测试时,会使用到 

    2.1.2 adb的构成和工作原理

    adb构成:

    1. client端:在电脑上,负责发送adb命令。
    2. daemon守护进程:在手机上,负责接收并执行adb命令。
    3. server端:在电脑上,负责管理Client端和实际的Daemon之间的通信。

    adb工作原理:

    1.  client端将命令发送给server端
    2. server端会将命令发送给daemon端
    3. daemon端进行执行
    4. 将执行结果返回给server端
    5. server端将结构再返回client端

    2.2 adb常用命令

    2.2.1 获取包名和界面名

    包名(package):决定程序的唯一性(不是应用的名称)。

    界面名(activity):对应着应用程序的某个界面,也叫启动名。

    自动化测试需要通过代码的形式告诉手机测试哪个应用程序的哪个界面,所以需要通过这个命令进行获取。

    命令格式:

     adb shell dumpsys window windows | findstr mFocusedApp

    结果如下:

    其中包名为:

    com.tencent.mobileqq

    界面名为:

    .activity.FriendProfileCardActivity

    2.2.2 文件传输

    (1) 发送文件到手机

    将手机需要的数据(数据库文件)在电脑上调整好,直接发送给手机。

    命令格式: 

    adb push 电脑的文件路径 手机的文件夹路径 

    实例:

    将桌面的a.txt发送到手机的sd卡

     adb push C:UsersACERDesktopa.txt /sdcard

    运行结果:

    这样就代表成功了,只不过我懒得去手机截图发到电脑。

    (2) 从手机中拉取文件

    将手机产生的文件(数据库文件,日志)拉取到电脑中。

    命令格式:

    adb pull 手机的文件路径 电脑的文件夹路径 

    实例:

    将手机的sd卡的a.txt拉取到桌面

    adb pull /sdcard/a.txt C:UsersACERDesktop 

    运行结果:

    2.2.3 获取app启动时间

    如果企业对应用程序的启动速度有要求,则需要使用这个命令进行测试。

    命令格式:

    adb shell am start -w 包名/启动名 

    实例:

    启动com.android.settings程序并且进入主界面(.Settings)

    adb shell am start -W com.android.settings/.Settings

    运行结果:

    ThisTime:该界面(activity)启动耗时(毫秒)

    TotalTime:应用自身启动耗时 =  ThisTime + 应用application等资源启动时间(毫秒)

    waitTime:系统启动应用耗时 = 系统资源启动时间(毫秒) 

    2.3 adb命令大全

    我看到一个CSDN的大佬写的博客,但是我不知道怎么跨网站转载,就这样吧。

    《adb命令大全》:https://blog.csdn.net/duoluo9/article/details/79791988 

  • 相关阅读:
    在Visual Studio 2019中配置OpenCV环境
    Java中的垃圾回收
    线程池
    Java中锁优化
    二叉树的几种遍历
    java中Comparator的用法(排序、分组)
    java8 stream
    Java后台生成二维码并上传到阿里云OSS
    代码生成器的成长过程
    软件的军工六性
  • 原文地址:https://www.cnblogs.com/liuhui0308/p/11982789.html
Copyright © 2011-2022 走看看