肖sir_多测师 _高级讲师 第二个月21讲解app测试之安装(001)

 
我们主要讲解app自动化环境的搭建以及定位和app测试
 
================================================================
app
原生+H5
===================================================================
(一)app测试
手工app测试和自动化app测试
手工app测试:就是点的地方不同,一个在bs结构上点,在cs结构上点(或模拟器或H5)
自动化app测试:用代码来代替手工点
 
面试题:web和app测试的区别?
或app的关注点?
 
===================================================================
(二)app系统分类
在市面上app测试流行,分为安卓端和ios端(ios端必须要maos系统,还要企业级的证书,再公司一般不会用ios做自动化)
开发人员都是用模拟器,(1、模拟手机种类多,2、连接稳定 3、运行稳定  )
 
面试题:app中ios和安卓区别?
===================================================================
(三)app的包下载(灰度包,测试包)  开发打包以后,会给你地址url;
app的包apk包,一般开发好了
(1)打包,jenkins自动打包,打包以后有一个连接地址下载,
(2)打包以后地址生成一个二维码,扫码下载
=================================================================
 (四)app测试流程(H模型一样的)
(1)看需求,分析需求
(2)写测试计划(场景设计)
(3)写用例( 自动化脚本的编写)
(4)搭建环境(需要app测试包)
(5)测试(测试前:冒烟测试,测试中:执行用例  测试后:写报告)
(6)修改bug以后,又要重新打包,安装新的app包在测试;
 ================================================================
(五)app端的ui自动化测试流程
1、打开模拟器
2、dos命令下,链接模拟器 ,adb  connect
3、启动uiautomatorviewer.bat    工具定位元素
4、pycharm中编写自动化脚本(去定位)
5、打开appiun 点击开始(端口,ip配置)
7、运行自动化脚本
 ==============================================================
(六)appium工具的优缺点
优点:
1、支持多种应用程序
2、测试对象无需编译
3、脚本实现多样化以及工具的多样
4、支持跨平台
缺点:
1、该工具必须依赖电脑才能实现自动化
2、该工具只能用于ui自动化测试
==============================================================
一、App自动化测试环境用途:
主要用于做App端的UI自动化测试、熟悉adb相关命令(a表示安卓,表示debug ,b表示桥)
adb是和手机相连接二、所需要的工具包:
jdk1.8 #之前已安装过则不需重复安装
Android-SDK #软件开发工具组 ,里面存放一些类,函数
appium 
Appium­Python­Client           #appinm的python的客户端
node.js #
夜神或逍遥模拟器      #用到模拟器来做自动化,或再真机上测试
baiduyuedu_3760.apk #要测一个安卓包,,百度阅读的apk包
第一步:装sdk
详解:SDK (Software Development Kit)翻译成中文就是"软体开发工具组"
是用来帮一个 产品 或 平台 开发应用程式的工具组,由产品的厂商提供给开发者使用的。
通常是 某一家厂商 针对某一 平台 或 系统 或 硬体 所发布出来用以开发应用程式的工具组,在这个工具包里面,可能包含了各式各样的开发工具,模拟器等。给 Android平台 使用的 Android SDK 就是用来开发 Android系统上面的应用程式。
sdk存放了类,函数,
SDK下包的说明:
 
1、:build-tools  :建立工具
2、:extras:扩展的附加包
3、:platforms:你安装下载的所有Android平台,分版本存放
4、:platform-tools:平台相关的工具
5、:tools:应用Android平台进行开发所需要的一些开发工具
(1)步骤:打开sdk:

(2)查看sdk下文件夹

 

三、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
4)配置path路径  (如下3个路径都需要添加,中间以;分号分割)我的路径如下
(以自己的路径为准):
E:讲课文档课件第二个月课件......adt-bundle-windows-x86_64-20140702sdkplatform-tools
(其中有adb)
E:讲课文档课件第二个月课件......adt-bundle-windows-x86_64-20140702sdk ools
(其中有模拟器和定位工具)
;%ANDROID_HOME%platform­tools;%ANDROID_HOME% ools

 

5)配置aapt的环境变量 (以自己的实际路径为准)
E:讲课文档课件第二个月课件......adt-bundle-windows-x86_64-20140702sdkuild-toolsandroid-4.4W

查看adb命令的变量;
为什么要设置变量?
因为我要设置目录下所有的 程序
 
第二步:安装appium
2.1、什么是appium?
Appium是一个移动端的自动化框架,可用于测试原生应用,移动网页应用和混合型应用,且是跨平台的。可用于IOS和Android以及firefox的操作系统。原生的应用是指用android或ios的sdk编写的应用,移动网页应用是指网页应用,类似于ios中safari应用或者Chrome应用或者类浏览器的应用。混合应用是指一种包裹webview的应用,原生应用于网页内容交互性的应用。
重要的是Appium是跨平台的,何为跨平台,意思就是可以针对不同的平台用一套api来编写测试用例。
2、2appium的原理?
appium工具是一个c/s模式,
appium自动化框架的组成?
appium客户端组成:Python客户端通过pycharm编写自动化,客户端使用Python语言编写脚本,
appium服务器
 
2.3安装appium、双击appium图标安装完成会显示appium主界面如下:点击右上角三角形按钮启动appium服务
a.安装appium
 
 
b.打开appium程序
 
c.启动appium服务(如下图)
出现started on字样表示服务
启动成功。
2.3在线安装python操作客户端(dos窗口下安装)
pip install Appium­Python­Client   如果安装报错(pip升级后再安装:python ­m pip install ­­upgrade pip)出现如下图表示安装成功。
 
python ­m pip install ­­upgrade pip 升级安装pip
 
8)安装node.js
a.双击如下图安装node.js
b.下载完成之后在dos窗口输入node  -­v出现如下即安装成功
9)app自动化测试环境检查
a.输入cmd进入dos窗口输入:appium-­doctor(显示如下图就表示环境搭建成功)

 以上表示安装成功。

报错:

b.如果显示 “appium­doctor”不是内部或外部命令 (appium的安装路径以自己的路径为准) 需要把appium的安装路径E:讲课文档课件第二个月课件......appium-1.4 ode_m odules.bin配置到环境变量 配置好环境后再次输入:appium­doctor 显示正常

 =================================================================

10)安装夜神模拟器:(安装不成功则可选择安装逍遥模拟器,成功的忽略这条) a.找到夜神模拟器的安装包双击

b.进入dos窗口输入命令:adb connect 127.0.0.1:62001 (显示如下图表示已经连接上夜神模拟器了)

 

c.安装好了运行模拟器发现很慢可以进行BIOS设置开启VT 按照这个网址进行设置 http://www.xyaz.cn/help/vt.html

开机按F2按钮­找到Security­­Intel Virtualization Technology­­改为 Enabled­­按F10保存退出。

11)往夜神模拟器安装需要被测试的软件

a.安装测试包 adb install + 包名的绝对路径 (或者进入包所在的目录下面安装)

例如:adb  install    D:appappnewduoceshi.apk    安装bao

         D:appappnewdangbei1.apk                    当贝

         D:appappnewaiduwangpan_589.apk   百度网盘

b.安装完会显示在逍遥模拟器当中

12)做APP自动化测试需要获取包名和appActivity

a.用aapt d badging + 安装包所在的绝对路径 C:UsersAdministrator>aapt d badging E:讲课文档课件第二个月课件手机APP自动化相关包搭建环境需要的安装包aiduyuedu_3760.apk 结果如下: package: name='com.baidu.yuedu' versionCode='3760' versionName='3.7.6

举例:aapt d badging   D:appappnewduoceshi.apk

正确结果:

 

 

c.其他的adb命令 adb shell pm list packages ­­­查看已安装的应用 adb uninstall package:com.baidu.yuedu ­­卸载百度阅读App

 =====================================================================

搭建环境的总结:

1、安装JDK
2、安装SDK
并且配置环境
3、安装node.js
4、安装appium
5、安装appium-doctor
6、安装appiumlibrary
7、验证环境

8、模拟器

=====================================================================

ADB常用的指令:
查看当前连接设备 : adb devices
进入到shell : adb shell     #ctrl+c 退出
查看日志 : adb logcat      #ctrl+c 停止
安装apk文件 : adb install xxx.apk
卸载APP : adb uninstall +包名

例如:adb    uninstall    com.baidu.netdisk

查看包名 : aapt d badging +包的路径
往手机SDCard传递文件:adb push 文件名 手机端SDCard路径

例如:(1)adb push  D:/bao/sql11.txt     /data

 adb push 本地文件路径     安卓设备路径

从手机端下载文件 : adb pull + 文件

例如:(2)adb pull  /init  D:/bao

SDCard

查看手机端安装的所有包名:adb shell pm list packages
启动Activity : adb shell am start 包名/完整Activity路径

举例:

包名: com.dangbeimarket

activity包名:leanback-launchable-activity: name='com.dangbeimarket.activity.WelcomeActivity

屏幕截图 : adb shell screencap

例如:adb shell screencap -p {路径} 可以 保存 到 手机本地然后 传回电脑 

例如: adb shell screencap -p  /data/123.png

(1)保存图片到sdcard

adb shell /system/bin/screencap -p /sdcard/aa.png

(2)pull拉取到本地

adb pull /sdcard/aa.png    D:ao

启动adb server命令 :adb start-server
停止adb server命令 :adb kill-server

例如:

 以上都没有没有明显的显示,

查看adb版本 :adb version

例如:

指定adb server:

查看adb使方法:

adb -p start-server


默认端口为5037
让设备在 5555 端口监听 TCP/IP 连接:adb tcpip 5555

adb tcpip网络调试

-----------------------

拓展知识:

把手机usb和连接线和电脑端连接起来,输入下面命令

1手机和PC在同一网段的情况下:
  adb tcpip 5555
     2)  、adb shell ifconfig 查看手机网络IP
     3)、在电脑上ping 手机网络ip
     4)  、 adb connect  ip (Android 设备ip)

2手机和PC不在同一网段的情况下
 我们需要用手机的 终端模拟器和ssh工具 反向代理。

-----------------------------

通过 IP 地址连接设备:adb connect

例如:链接:adb connect 127.0.0.1:62001

断开无线连接 : adb disconnect

例如:

原文地址:https://www.cnblogs.com/xiaolehua/p/14204259.html