您当前的位置:首页 > 电脑百科 > 程序开发 > 移动端 > APP

手把手教你做app自动化测试

时间:2020-10-29 09:42:36  来源:  作者:

什么是App自动化?为什么要做App自动化?

App自动化是指给 AndroidIOS上的软件应用程序做的自动化测试。

 

手工测试和自动化测试的对比如下:

手工测试优势:不可替代、发现更多bug、包含了人的想象力与理解力。

注意,不是所有功能都需要自动化。

自动化测试优势:可重复、效率高,增加软件信任度。

 

执行自动化测试可以让测试同事有更多的精力来关注复杂场景,做更多更深层次的测试。

 

 风险分析

自动化测试的主要风险分析如下:

(1)测试用例覆盖率(覆盖率决定测试效率,选择合适用例,应约占功能用例集的20%~50%)

(2)测试结果准确度(准确度决定了测试有效性,应尽可能减少误报)。

(3)自动化代码维护(维护决定了成本,数据关键字驱动自动化框架,代码应尽可能优化和少改动)。

(4)版本开发和测试时间进度(当项目需求和功能较为稳定时,建议用自动化)。

(5)开发对控件元素增修改的程度(需开发人员尽可能地用name元素,并且和UI设计一致,修改变动程度不大,测试人员可根据提供的元素提前介入,开发自动化脚本)。

App源码权限控制,iOS上测试需要源码。实际测试只需SVN或者git下载权限,而不需要上传权限。防止改动SVN或者git 上的源码。

 


技术框架

1、自动化学习过程

自动化测试环境的部署-->自动化测试脚本开发能力--->自动化测试框架研发--->手机自动化持续集成

2、andorid 系统架构

干货|手把手教你做app自动化测试

 

3、手机自动化测试环境

安装Appium-->安装手机模拟器-->安装selenium和appium的客户端-->安装被测试app

 

4、Appium 软件架构

干货|手把手教你做app自动化测试

 

5、常用的定位技术和工具

干货|手把手教你做app自动化测试

 

6、自动化测试脚本技术

干货|手把手教你做app自动化测试

 

7、技术框架结构图

干货|手把手教你做app自动化测试

 


 

APP自动化测试流程

1、环境的安装

1.1 环境的准备

1:jdk1.6以上

2:Python2.7以上

3: android-sdk

4:Appium desktop 安装

1.2 jdk 安装

1:下载JDK后傻瓜式安装,注意:不要有中文路径和空格

2:配置环境变量:

右击“我的电脑”-->"属性"-->"高级系统设置"-->"高级"-->"环境变量"

1)在系统变量里新建"JAVA_HOME"变量,变量值为:C:Program FilesJavajdk1.8.0_60(根据自己的jdk的安装路径填写)

2)在系统变量里新建"classpath"变量,变量值为:.;%JAVA_HOME%lib;%JAVA_HOME%libtools.jar (注意最前面有一点)

3)找到path变量(已存在不用新建)添加变量值:%JAVA_HOME%bin;%JAVA_HOME%jrebin

1.3 python 安装

1:傻瓜式安装,

2:配置环境变量:电脑属性系统变量添加python根目录

1.4 安装Android的测试开发环境

1:Android-SDK的安装:SDK manager.exe 双击打开下载

干货|手把手教你做app自动化测试

 

2:android-sdk环境变量的配置

具体操作步骤:

  • 新建ANDROID_HOME

路径为C:Program Files (x86)Androidandroid-sdk

  • 在Path 变量中加入路径

%ANDROID_HOME%platform-tools 和 %ANDROID_HOME%tools

  • 检查adb 环境变量
干货|手把手教你做app自动化测试

 

  • 连接手机

如果是真机,手机插上USB连接电脑,打开开发者模式,cmd输入adb devices

如果是模拟器,需要输入adb connect 127.0.0.1:62001或者52001连接,然后再输入adb devices

 

Appium desktop 安装

下载地址:https://github.com/appium/appium-desktop/releases/tag/v1.3.1

傻瓜式安装 注意:一定要选择所有用户权限要不然用不了UiAutomator2

 

2、 API脚本

2.1 如何获取APP启动的AppPackage和AppActivity

1:通过appt获取切换到aapt所在的目录,执行aapt dump(aapt是sdk自带的一个工具,在sdkbuilds-tools目录下)使用命令aapt dump badging “D: jinritoutiao_7500.apk”运行后的结果中以下两行分别是应用包名package和入口activity名称

package: name=’ com.ss.android.article.news’

launchable-activity: name=‘com.ss.android.article.news.activity.LaunchActivity’

2: 通过 adb shell am start com.ss.android.article.news/com.ss.android.article.news.activity.MainActivity

来判断启动的app 是否正确

2.2 启动appium

干货|手把手教你做app自动化测试

 


干货|手把手教你做app自动化测试

 

2.3:写脚本

1.platformName:这里是 android 的 apk

2.deviceName:手机设备名称,通过 adb devices 查看

3.platformVersion:android 系统的版本号

4.appPackage:apk 包名

5.appActivity:apk 的 launcherActivity

干货|手把手教你做app自动化测试

 

2.4生成测试报告

干货|手把手教你做app自动化测试

 



Tags:app自动化   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
什么是App自动化?为什么要做App自动化?App自动化是指给 Android或iOS上的软件应用程序做的自动化测试。 手工测试和自动化测试的对比如下:手工测试优势:不可替代、发现更多bug、...【详细内容】
2020-10-29  Tags: app自动化  点击:(107)  评论:(0)  加入收藏
所需工具+环境准备说明基于win10 64位系统 JDK 1.8(64位) Android SDK Appium desktop 夜神模拟器 Step1:安装配置JDK 下载JDK 浏览器访问下面的地址(我们选择jdk1.8进行下载)ht...【详细内容】
2020-03-15  Tags: app自动化  点击:(75)  评论:(0)  加入收藏
appium做app自动化测试,环境搭建是比较麻烦的。也是很多初学者在学习app自动化之时,花很多时间都难跨越的坎。但没有成功的环境,就没有办法继续后续的使用。在app自动化测试当...【详细内容】
2019-08-07  Tags: app自动化  点击:(209)  评论:(0)  加入收藏
▌简易百科推荐
  1、明确产品的需求分析+功能  这是最基本的也是第一步,我们要明确自己或者客户真的想要开发一款app应用,其次就要了解到底要开发什么功能什么类别和种类的app应用。所...【详细内容】
2021-12-27  木子科技    Tags:App   点击:(1)  评论:(0)  加入收藏
前言目前,即时通讯在app中逐渐成了不可或缺的功能,尤其是在疫情期间,音视频会议功能更是火了一把,但是想自己开发即时通讯功能,却一点都不简单,如果用原生开发的话,那么Android、iO...【详细内容】
2021-07-29  中控易动    Tags:APP   点击:(104)  评论:(0)  加入收藏
本篇博文将会提供一个关于如何使用WebRTC建立一个视频会议App的教程。我们不会将其设计的太复杂,它将会是一个简单的一对一视频会议App,并且仅仅使用了WebRTC APIs和一些其他...【详细内容】
2021-07-29  易简视源云会议    Tags:视频会议App   点击:(113)  评论:(0)  加入收藏
开发一款app需要多少钱?这是一个比较笼统的问题,没有确切的需求,拥有不同技术经验的团队往往报价都各不相同,因为不知道开发需求,所以无法给出一个准确的价格。因此,想知道app开发...【详细内容】
2021-07-13  hey衡道    Tags:app   点击:(79)  评论:(0)  加入收藏
Hybrid APP指的是半原生半Web的混合类App。需要下载安装,看上去类似Native App,但只有很少的UI Web View,访问的内容是 Web 。 原生是Native APP,H5就是Web App在Hybrid 当中,如...【详细内容】
2021-04-28  扣丁学堂  今日头条  Tags:APP页面   点击:(289)  评论:(0)  加入收藏
介绍MIP(Mobile Instant Pages - 移动网页加速器),是一套应用于移动网页的开放性技术标准。通过提供 MIP-HTML 规范、MIP-JS 运行环境以及 MIP-Cache 页面缓存系统,实现移动网页...【详细内容】
2021-04-12  爱分享Coder  今日头条  Tags:WebApp   点击:(309)  评论:(0)  加入收藏
在开发直播APP时,核心要素和基本要素是稳定性,一般各大服务商都有提供demo,并且可以免费测试的,测试可以初步评估下稳定性,看看视频流畅度如何,卡顿是不是很频繁,延时效果怎么样,视...【详细内容】
2021-03-19      Tags:直播APP   点击:(292)  评论:(0)  加入收藏
TOKEN作为用户身份凭证并不能保证数据安全,别人通过抓包等方式很容易拿到TOKEN,带上TOKEN请求我们的API接口就能获取数据;其实换一个角度想:我们只需保证即使TOKEN被别人冒用,也...【详细内容】
2021-02-18      Tags:APP,API   点击:(229)  评论:(0)  加入收藏
在当今移动互联网盛行的时代,网络的形态除了有线连接,还有2G/3G/4G/5G/WiFi等多种手机网络连接方式。不同的协议、不同的制式、不同的速率,使移动应用运行的场景更加丰富。目前...【详细内容】
2021-02-05      Tags:APP   点击:(201)  评论:(0)  加入收藏
虽然目前许多企业都进行了长沙APP开发,开始了移动互联网转型之路,但由于其中绝大部分企业都属于传统行业,对APP应用了解并不多,故而对开发工作也不是很清楚。为了大家能更好的了...【详细内容】
2021-02-01      Tags:APP应用   点击:(214)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条