• 多测师app __课堂讲解随记(1)__高级讲师肖sir


    多测师讲解性能测试 _app(笔记)_高级讲师肖sir

    手机测试分为:手工app测试,自动化app测试

    先了解下:appweb测试的区别、

    1、web基于浏览器, app必须要有客户端

    2、web关注响应时间,app还需要关注流量、电量、手机本身的硬件条件

    3、兼容方面,web是浏览器兼容,选择不同的浏览器内核,app是手机,有不同品牌,android和ios系统,还需要看屏幕分辨率、屏幕尺寸,和其它app之间的兼容

    4、网络环境,App还有不同网络环境,2G、3G、4G、wifi、断网
    5、硬件环境,App还需考虑异常场景:中断、关机、死机、重启等
    6、交叉事件,接听电话、短信、邮件、其它操作
    7、App有横屏和竖屏之分、溢屏、触屏和手势
    8、Web直接连接服务器,app的取值方式可能是服务器、接口或本地缓存
    9、升级、更新,Web更新无提示,直接进入浏览器就是最新,app是需要自己进行更新才能获取最新数据
    10、web登录需要密码,除非设置的记住密码,App有免登录功能

    标准区别:
    兼容性测试:web兼容各种版本浏览器,app兼容各种操作系统、手机型号、版本
    手势:web没有,app有手势测试、功能键测试
    交叉事件和横竖屏测试:app需要测试和其它app的兼容,与通话、短信之间的交叉
    安装测试:web的bs架构,客户端不需要安装,手机app需要安装测试
    更新:web一般更新服务端,app更新会对客户端进行更新,需要对更新进行测试

    网络:app需要测试网络之间的切换,以及断网情况下,不同的网络类型对app是否有影响
    屏幕的限制:app需要关注不同的屏幕上传的图片,文字的显示效果,是否会溢屏
    性能测试:web需要关注页面的响应时间,app除了要考虑响应时间,还需要考虑到耗电量和流量消耗

    app:系统(安卓、IOS)安卓开发和IOS开发

    灰度包:在实际工作中我们安装包,是有公司通过jenkins打包之后有一个连接,或一个二维码生成, 下载到手机上,就可以进行app测试

    通过:真机测试, 模拟器,H5 ( F12)

     

     

    我们用的模拟器(安卓版,ios版)

    Ios 手机,电脑,ios软装证书,

    安卓版:基于liunx开发

     

     今天讲解的内容:

    一、App自动化测试环境用途: 主要用于做App端的UI自动化测试、熟悉adb相关命令

     abd命令:安卓调试桥

    二、所需要的工具包:

    jdk1.8 #之前已安装过则不需重复安装 java 

    Android-SDK   #软件开发工具包(安卓端的软件开发包)

    appium Appium­Python­Client    python操作appium的工具

    node.js

    夜神或逍遥模拟器     (类似手机,通过代码当一个在操作手机)

    baiduyuedu_3760.apk #百度阅读的apk包        app包的后缀名,.apk

    三、App自动化测试环境搭建全部流程:

    1)安装Android-SDK 先解压adt-bundle-windows-x86_64-20140702.zip文件得到如下三个文件和文件夹

    2)安装Android-SDK首先需要配置ANDROID_HOME和path

    a.电脑右下角点击Windows图标-选择计算机­ 空白处右键­属性­左侧栏选择高级系统设置­环境变量­用户变量­增加­ANDROID_HOME b.然后把sdk的路径放入变量值(以自己的路径为准,如下为我的sdk路径)

    E:讲课文

    档课件第二个月课件手机APP自动化相关包搭建环境需要的安装包adt-bundle-windows-x86_64-20140702sdk

     

     比如安装第三方插件:

     配置环境环境变量


    D:appappnewadt-bundle-windows-x86_64-20140702sdk

    这就我的的ANDROID_HOME路径

     

     

     

     path中三个变量:

    D:appappnewadt-bundle-windows-x86_64-20140702sdkplatform-tools

    D:appappnewadt-bundle-windows-x86_64-20140702sdk ools

    ;%ANDROID_HOME%platform­tools;%ANDROID_HOME% ools

    path中添加变量

    D:appappnewadt-bundle-windows-x86_64-20140702sdkuild-toolsandroid-4.4W

    appium  app自动化工具

    常见app自动化工具分类:

    Monkey测试:随机测试,压力测试,运行在模拟器或实际设备中。

    MonkeyRunner测试:操作简单,可录制测试脚本,可视化操作,主要生成坐标的自动化操作,移植性不强

    Robotium 测试

    Ronaorex 测试

    Appium 测试

    UI Automator 测试

    TestBird测试

    appium 的优缺点:

    优点:

    1、支持多种应用程序包的测试

    2、被测试对象无序编译

    3、脚本实现多样化及工具多样

    4、支持夸平台

    缺点:

    1、工具必须 依赖电脑才能实现自动化

    2、只能用于ui自动化测试

     appium的原理

     

     

    注意:我 们进行app自动化
    就要打开

     第7步:

     

     

     appium服务端是node.js写的,所以你安装的时候无论哪个平台都是先装node,然后npm install -g appium安装(FQ墙)

     

    逍遥模拟器     默认端口号:21503(XYAZ就是逍遥模拟器)
    天天模拟器     默认端口号:5037
    夜神模拟器     默认端口号:62001
    海马王模拟器   默认端口号:26944
    每一个模拟器都有自己默认的端口号,我们必须通过端口号连接模拟器
     

     

    adb 命令的讲解

    1、ADB常用的指令:(重点)
      查看当前连接设备   : adb devices
      进入到shell        : adb shell

      退出到  shell  :  exit

      查看日志           : adb logcat
      安装apk文件        : adb install  xxx.apk
      卸载APP            : adb uninstall +包名
      查看包名           : appt d badging +包的路径
      往手机SDCard传递文件:adb push 文件名 手机端SDCard路径
      从手机端下载文件   : adb pull + 文件
      查看手机端安装的所有包名:adb shell pm list packages

     查看手机端安装的第三方包名:adb shell pm list packages -3

      启动Activity       : adb shell am start 包名/完整Activity路径
      屏幕截图           : adb shell screencap
      启动adb server命令 :adb start-server
      停止adb server命令 :adb kill-server
      查看adb版本        :adb version
      指定adb server网路端口:adb -p start-server
               默认端口为5037
      让设备在 5555 端口监听 TCP/IP 连接:adb tcpip 5555
      通过 IP 地址连接设备:adb connect (后面加模拟器版本和端口号,但一定要先打开模拟器)
      断开无线连接       : adb disconnect

     

     

     

     

     from appium import webdriver
    from time import sleep
    desired_caps={
        'platformName':'Android', #平台系统:Android or Ios
        'deviceName':'SM­G9350', #设备名称
        'platformVersion':'android­4.4W', #平台版本
        'appPackage':'com.baidu.yuedu', #包名
        'appActivity':'com.baidu.yuedu.splash.SplashActivity', #activity
        'unicodeKeyboard': True, #使用unicode编码方式发送字符串
        'resetKeyboard':True #是将键盘隐藏起来
    }

    #这个对象就是已经打开了的app
    driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)
    driver.implicitly_wait(30)  #隐式等待20秒
    #driver.find_element_by_id("com.baidu.yuedu:id/full_text_search_bar").click()
    #通过 xpath 定位:
    sleep(4)
    driver.find_element_by_xpath('//android.widget.TextView[@text="取消"]').click()
    #//android.widget.TextView[@resource-id='取消']
    sleep(4)
    driver.find_element_by_name("图书").click()
    sleep(4)
    driver.find_element_by_name("免费").click()
    sleep(4)
    driver.find_element_by_name("排行").click()
    sleep(4)
    driver.find_element_by_name("分类").click()

    D:appappnewadt-bundle-windows-x86_64-20140702sdk ools

     

     

     

     

     D:appappnewadt-bundle-windows-x86_64-20140702sdk oolslib

     

    D:appappnewadt-bundle-windows-x86_64-20140702sdkplatformsandroid-20

     

  • 相关阅读:
    C语言和python分别计算文件的md5值
    C语言计算文件大小
    Linux内核源码下载
    Linux系统编程20_VFS虚拟文件系统
    Linux系统编程19_标准I/O
    C语言Review5_函数指针和数组指针
    C语言Review4_头文件引用符号的区别
    PDO之MySql持久化自动重连导致内存溢出
    小程序之app.json not found
    phpstorm之"Can not run PHP Code Sniffer"
  • 原文地址:https://www.cnblogs.com/xiaolehua/p/13838585.html
Copyright © 2020-2023  润新知