平安云测试平台帮助文档

目录

1.前言
2.准备工作
3.脚本录入
4.UI自动化测试
5.稳定性测试
6.性能测试
7.总结

<h1 id="1">前言</h1>
云测试平台是一个移动端App测试一站式测试服务平台,目前Android端支持UI自动化测试,Monkey测试,性能测试,iOS端支持UI自动化测试和Monkey测试。后续我们还会接入更多的功能。下面我们主要介绍目前所支持的服务的使用方法。

<h1 id="2">准备工作</h1>

登录

目前云测试平台的登录体系已经与平安的UM账号体系打通,只要输入你的UM账号和密码即可登录。如果登录过程中提示密码错误,有可能是你的账号尚未激活,或者密码输错了。激活账号可以找姚雪芹咨询(YAOXUEQIN844@pingan.com.cn),重置密码请登录平安内部门户网站-UM用户管理栏目(内网地址:pws.paic.com.cn)。另外,首次登录需要找云测试平台管理员审核,账号审核请找彭海波(penghaibo204@pingan.com.cn)。

添加产品

如果是首次使用我们的平台,先到产品列表页面查看是否有待测试的产品。如果没有你想要测试的产品,则点击添加产品按钮添加新的产品。

产品管理

上传App

添加完成产品后,需要上传你要测试的App安装包。点击对应产品列表后的应用上传按钮,即可弹出上传对话框,选择本地的安装包,点击上传即可上传安装包到服务器上。

上传App

安装Appium客户端

首先下载一个Appium客户端最新版,这里给出mac版的下载地址,Windows版本请自行百度。Appium客户端又依赖于Android SDK和Xcode,因此还需要配置Android和iOS开发环境。具体安装方法网上很多,这里不作讲解,请自行百度。安装完各种环境之后打开Appium客户端,配置安装包路径和设备ID(可以为空)。

配置参数

脚本录制

脚本的录制是整个平台的关键部分,UI自动化,稳定性测试和性能测试都依赖于录制的脚本去驱动。本节我将为大家介绍如何通过平台来添加你的测试脚本。在添加完产品后,我们要录入该产品对应的脚本才能开始自动化测试。从管理中心->我的测试脚本,进入产品管理页面,点击添加产品按钮,即可进入脚本录入页面。

脚本信息填写

首先填写脚本相关信息,如下图所示。产品为必选字段,选择你所要测试的脚本。版本类型表示要测试的系统类型:Android,iOS和H5,脚本名称和描述用于对脚本进行描述,可选填。脚本标签用来做筛选,可选填。

新增脚本

测试步骤录入

脚本的录入最核心的功能在于测试步骤的录入。测试步骤对应了我们的测试的执行过程。比如登录功能,我们第一步是点击登录按钮,第二步,输入用户名,第三步,输入密码,第四步,点击登录。我们把这样的四个步骤对应录入到平台上后,即可通过平台来自动化执行该脚本。那么录入过程中需要做哪些操作呢?

第一步:用Appium Inspect工具分析出界面元素

手机连接上电脑,打开Appium客户端,配置相关参数后,点击Launch按钮,如果连接成功,即可看到相应的200返回码。

Paste_Image.png

接下来点击Inspect按钮(一个放大镜的图标)。Appium会自动安装App到手机,并启动分析窗口。

Inspect页面
第二步:查找关键元素

如上图所示,我们通过Appium的Inspect工具分析出了页面上的所有元素,点击右边截图的元素位置,左边即可显示出该元素的对应信息。我们用的比较多的有resource-id,text,xpath这三个属性。使用优先级是id>text>xpath。使用text作为标志的时候要注意唯一性。

第三步:录入测试步骤

根据上面的步骤找到关键元素后,即可进行开始录入测试步骤,一个完整的测试步骤由控件类型,查找方式,控件标志和动作类型,参数等属性构成,如下图所示。其中控件标志就是我们通过第二步找到的元素唯一标志,根据查找方式对应不同的取值。比如查找方式为id,标志就是控件的resource-id。动作类型就是我们要对该控件进行的操作。常用的动作类型有点击,输入,滑动等操作。其中有些动作是需要输入参数的。比如Wait动作表示添加一个等待事件,参数表示等待的时间。iSExist动作表示判断元素是否存在,参数1代表存在,0代表不存在。swipeUp(/Down/Left/Right)表示滑动事件,要接收三个参数,分别以逗号隔开:起始位置,步长,持续时间,例如:2,20,2000。

查找方式
动作类型

导入测试步骤
测试步骤的录入还可以通过导入或者插入的方式复用之前录入的脚本,插入的脚本会自动附加到当前脚本的最后。而导入的脚步则是通过引用的方式嵌入在测试步骤里面。这两个功能,方便做脚本的引用和复制,避免重复工作。另外,你可以通过上下移动按钮调整位置。

Paste_Image.png
第四步:测试你的脚本

脚本录入成功后,点击保存即可保存到平台,用于执行测试任务。但是写完之后脚本是否能正确执行呢,我们还是要测试一下才放心。于是在脚本管理页面的每条脚本后面都增加了一个测试一下的按钮。

测试一下

点击测试一下按钮后,会出现选择设备和App的界面,选择用于测试的设备和app后,我们的脚本即会在平台上指定的机器上运行你的脚本。运行结果通过结果查看页面实时刷新,如下图所示。你可以通过执行结果和截图分析出执行到什么阶段,测试结果是否正常。

选择设备和app
开始执行

执行完毕后会出现前往查看结果报告的按钮,点击即可进入测试报告页面。在测试报告页面,fail的脚本有详细的错误日志,方便你定位错误的原因。


执行完毕
脚本说明

1 控件类型说明

名称 说明
Native 表示要查找的元素属于Native控件
Web 表示要查找的元素属于Web控件

2 动作类型说明

名称 说明 是否针对元素
Click 点击事件,表示对该控件进行点击操作
SetText 设置文本,往文本框中输入内容,参数表示要输入的文本
ScrollToText 滑动到某个文本,根据设置的文本参数来滚动查找某个控件,直到找到为止,一般用于列表
iSExist 判断某个元素是否存在,参数1表示存在,0表示不存在
Wait 等待事件,参数表示等待的时间,单位毫秒,如1000表示等待1s再进行下一步操作
ExistGoto 如果元素存在,则跳转到指定步骤执行,参数设置为要跳转到的步骤编号
NotExistGoto 如果元素不存在,则跳转到指定步骤执行,参数设置为要跳转到的步骤编号
pressKey 按键事件,表示点击设备的按键,4表示返回键,3表示home键
swipeLeft 向左滑动,参数:(开始位置,步长,持续时间),如:2,2,2000 ;
swipeRight 向右滑动,参数设置方法同上
swipeUp 向上滑动,参数设置方法同上
swipeDown 向下滑动,参数设置方法同上
excuteJS Web控件专用,用于执行js代码来定义web事件
startPerformance 开始记录性能数据,用于性能测试场景
stopPerformance 结束记录性能数据
GetVerifyCode 获取验证码,并输入,控件元素为输入验证码的文本框,参数为接收验证码的手机号
actionGesture 手势密码,需要多个步骤配合使用,顺序添加每个点的控件标志,参数为一共有多少个点,必填
importScript 引用脚本,通过引用的方式将公共脚本嵌入步骤里面,参数为脚本ID

3 查找方式说明

名称 说明
id 表示通过控件ID来查找元素,该方式最快最精准
name 表示通过控件的text或者description属性来查找元素,要注意唯一性
xpath 表示通过xpath来查找控件,该方式查找耗时长,不建议使用
className 通过控件类型查找,控件类型可能会重复,所以注意设置索引
linkText Web控件专用,表示超链接的文本
cssSelector Web控件专用,表示通过css样式属性查找控件

小结

准备阶段的工作比较繁琐,主要是环境的配置和脚本的录入。刚开始可能会比较麻烦,也会遇到一些坑,但熟悉起来后,就会很快了。接下来我们就是开始发起各种测试任务了。由于Android和iOS的任务模式基本相同,这里只介绍Android端任务的创建方法。

<h1 id="3">UI自动化测试</h1>

UI自动化测试分为四个步骤:
第一步:选择待测应用,选择你的产品,然后选择该产品下的App,如果没有产品和App,请到产品管理页面添加。

选择待测应用

第二步:选择脚本,可以选择一个或多个脚本,也可以在Search框中输入关键字筛选脚本。如果没有脚本,请到脚本管理页面录入脚本。

选择脚本

第三步:选择设备,选择要执行的设备,一次只能选择一个设备。每个设备会显示前面有多少个任务正在排队,尽量选择排队少的设备执行任务。

选择设备

第四步:保存并执行,提交测试之前,先确认下任务信息是否符合自己的需求。特别是邮箱信息,你也可以在后面增加收件人,用逗号隔开。

<h1 id="4">稳定性测试</h1>
稳定性测试即Monkey测试,新建一个稳定性测试任务也是分为四个步骤:
第一步:选择待测应用

第二步:设置参数和脚本,这里要设置执行monkey的时间,以及用来初始化的脚本,脚本可以为空。如果选择了脚本,那么会先执行脚本,然后再开始执行Monkey测试。一般将登陆脚本作为初始化脚本。

第三步:选择设备

第四步:确认并提交测试

Paste_Image.png

<h1 id="5">性能测试</h1>
目前平台通过结合UI自动化,提供精准化的性能测试报告。这里的精准是指的页面响应时间,因为我们可以准确得出每一个操作步骤的响应时间。但是为了便于统计响应时间,在录制你的脚本的时候有几点注意事项:1. 第一步设置一个iSExist事件,原来等待某个控件出现,从而判断App启动成功。2. 如果要测试某个步骤的响应时间,一定要在操作完该步骤后,设置一个iSExist事件。一个典型的脚步,如下图所示。我们可以通过红框标识的步骤来获取应用启动的时间和登录耗费的时间。

性能测试脚步

测试步骤跟UI自动化任务是一样的,只是新建任务选性能测试即可。性能测试每个任务只能添加一个脚本。执行完后的报告包括响应时间,CPU,内存,流量和FPS的统计信息。

统计信息

<h1 id="6">总结</h1>
本次先只介绍了准备工作,UI自动化以及Monkey测试的使用方法,具体操作过程中可能还会遇到一些问题,欢迎随时找我咨询。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,347评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,435评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,509评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,611评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,837评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,987评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,730评论 0 267
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,194评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,525评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,664评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,334评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,944评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,764评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,997评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,389评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,554评论 2 349

推荐阅读更多精彩内容