导航:首页 > APP软件 > 移动应用app压力测试

移动应用app压力测试

发布时间:2023-06-01 14:26:30

㈠ APP测试人员是如何工作的

APP开发过程中,测试是一个必不可少的工序,但其实很多公司都没有测试人员或非专业测试人员,很多都是小公司,不会找专门的测试组,也有的出于利润,把工资都用在对APP的开发上。
这就造成APP上线后问题不断,一遍遍的反馈让开发公司改BUG。下面,app开发公司软捷科技给大家简介下APP测试人员的主要工作内容:

1.逻辑测试:把APP每个步骤走一遍,(包含购买、付款、发货、收货、好评、提现;打车、发单、接单、出去跑、支付、评价等)查看APP逻辑是否混乱、流程是否走不通、哪一步有功能遗漏等
2.功能/BUG测试:把APP中每个能点的地方点一遍,看看APP是否有BUG、功能是否有遗漏;同时测试点击每一步是否闪退、卡顿等
3.界面测试:查看APP界面是否美观、图标是否美观、整体排版情况等
4.兼容性测试:通过不同平台、不同机型、不同系统,对APP兼容性进行测试,查看是否安卓版本问题导致APP闪退打不开等问题
5.漏洞检测:从应用安全、源码安全及数据安全方面对用户管理、版本升级、界面劫持、动态调试、进程保护、程序完整性、数据储存、数据传输、业务逻辑安全、系统环境安全等内容进行静态、动态及人工分析等角度对移动应用做更全面的检测,为您的移动应用APP
提供更全面更专业的安全体检。
6.压力测试:几千人同时在线时APP是否会卡顿、不流畅、图片加载缓慢等
7.中断测试:APP正常运行时强制关闭、突然断电、突然断网、突然来电话、突然来短讯,查看订单等情况是否正常存在
8.弱网测试:APP在网络情况较差的环境下的使用体验等
对于测试人员来说就是为了找bug,也是一切;对于开发人员来说,良好的设计也意味着有良好的测试用例.测试表面上看是更多的开销,但实现却是赚了大便宜.总而言之,测试的工作在App开发过程中必须得到进一步的重视,这将关系到产品的质量稳定和用户的留存度的问题。可见,测试的作用不言而喻。

㈡ 移动端手机 App 耗电量测试:Monkey 电量测试基本操作及 Android 性能优化

Monkey 测试简介

存放路径:Monkey程序是Android系统自带的,由java语言写成,在Android文件系统中的存放路径是: /system/framework/monkey.jar。

大致操作流程:通过名为“monkey”的Shell脚本去启动Monkey.jar程序(shell脚本在Android文件系统中 的存放路径是:/system/bin/monkey),在你指定的APP应用上模拟用户点击,滑动,输入等操作以极快的速度来对设备程序进行压力测试,检测程序是否会发生异常,然后通过日志进行排错。

主要目的:测试app 是否会是否会Crash。

操作命令格式:adb shell monkey {+命令参数}

获取Android包名方法:(注意:请开启手机开发者模式,请开启手机USB调试模式)

查看正在运行的程序的包名:adb shell mpsys activity activities | sed -En -e '/Running activities/,/Run #0/p' (例如:我清理手机后台之后,开启了qq,输入命令之后,就会出现QQ的进程,框的地方就是qq的包名)

monkey常用操作命令简介

-p 包名:指定应用程序。例如:adb shell monkey -p 包名 事件总数

-v:打印log级别,-v越多日志信息越详细,最多支持3个。例如:adb shell monkey -p 包名 -v -v -v 事件总数

-s:伪随机数生成器的 seed 值,通俗的说就是个标记,后面跟数字,例如:执行adb shell monkey -s 1 -p 包名 事件总数,这个我标记了-s 1,命令操作完之后,我发现有日志报错,我想重新执行这个monkey操作,那你握核就可以继续执行这个命令,排错时常用。

-f:后接测试脚本名,例如:adb shell monkey -f 脚本名 事件总数

-throttle:翻译减速的意思,后面接时间,单位为ms,,表示事件之间的固定延迟,如果不接该项,monkey将不会延迟,例如:adb shell monkey --throttle 500 -p 包名 事件总数

--pct-事件类别 11个事件百分比控制(有的是9种事件,没有--pct-pinchzoom,--pct-rotation事件)由安卓SDK决定

11种事件,按顺序罗列的

--pct-touch {+百分比}:0

翻译触摸,触摸事件泛指发生在某一位置的一个down-up事件,点击

--pct-motion {+百分比}:1

翻译动作,动作事件泛指从某一位置接下(即down事件)后经过一系列伪随机事件后弹出(即up事件)

--pct-pinchzoom {+百分比}:2

翻译二指缩放,智能机上的放大缩小手势操作事件

--pct-trackball {+百分比}: 3

翻译轨迹,轨迹事件包括一系列的随机移动,以及偶尔跟随在移动后面的点击事件

--pct-rotation {+百分比}:4

翻译屏幕旋转,横屏竖屏事件

--pct-nav {+百分比}:5

翻译基本导航,基本导航事件主要来自方向输入设备的上、下、左、右事件

--pct-majornav {+百分比}:6

翻译主要导航,主要导航事件通常指引发图形界面的一些动作,如扮皮辩键盘中间按键、返回按键、菜单按键等

--pct-syskeys {+百分比}:7

翻译系统按键,系统按键事件通常指仅供系统使用的厅缺保留按键,HOME键、BACK键、拨号键、挂断键、音量键等

--pct-appswitch {+百分比}:8

翻译应用启动,应用启动事件(activity launches)即打开应用,通过调用startActivity()方法最大限度地开启该package下的所有应用

--pct-flip {+百分比}:9

翻译翻转,键盘轻弹百分比,如点击输入框,键盘弹起,点击输入框以外区域,键盘收回

--pct-anyevent {+百分比}:10

翻译其他类型,其他类型事件指上文中未涉及的所有其他事件,keypress、不常用的button等

百分比控制以及使用

首先注意一点,这个Event percentages在不同版本的SDK版本中顺序可能会不一样。

如果在monkey参数中不指定事件参数,这些动作都是随机分配的,11个动作其分配的百分比之和为100%,通过添加命令选项来控制每个事件的百分比。

添加事件百分比之后的情况,举例添加--pct-touch事件百分比为100:

命令: adb shell monkey -v -p 包名 --pct-touch 100 100

结果:

说明:尴尬啊,我这个vent percentages竟然有12种,多了一种什么我也不知道,但我敢肯定这跟SDK版本有关系,想知道的同学可以自己从安卓SDK中反编译出monkey源码,通过查看源码中的MonkeySourceRandom.java文件获知!查出来的同学可以告知我下。

说明:尴尬啊,我这个vent percentages竟然有12种,多了一种什么我也不知道,但我敢肯定这跟SDK版本有关系,想知道的同学可以自己从安卓SDK中反编译出monkey源码,通过查看源码中的MonkeySourceRandom.java文件获知!查出来的同学可以告知我下,我想做伸手党

-ignore-crashes:翻译忽略崩溃,当应用程序崩溃或发生失控异常时,monkey将继续运行直到计数完成。如果不设置此项,monkey遇到上述崩溃或异常将停止运行。

-ignore-timeouts:翻译忽略超时,当应用程序发生任何超时错误(如ANR,即Application Not Responding)时,monkey将继续运行直到计数完成。如果不设置此项,monkey 遇到此类超时将停止运行。

monkey测试中,如何终止运行:

方法一:

新建一个窗口

执行: adb shell ,

再执行ps | grep monkey,返回来的第一个数字,即是monkey的进程号

然后kill pid 进程号。如图

对手机进行重启

新建一个窗口

执行adb reboot

log日志导出

保存到电脑上。

执行:adb shell monkey -p 包名 -v 1000 > /Users/weixiangyang/Desktop/monkey.txt

例如:保存到电脑上标准流与错误流分开保存,分别命名为info.txt,error.txt

info.txt:此文件在手机上的SDCARD中,主要记录了MONKEY测试时发送的各种事件,如触摸事件的位置等等。

error.txt:此文件在手机上的SDCARD中,主要记录了MONKEY测试时产生的一些ANR、强制关闭等异常。 执行:adb shell monkey -p 包名 -v 1000 1>/Users/weixiangyang/Desktop/info.txt 2>/Users/weixiangyang/Desktop/error.txt

例如:保存到电脑上并命名为monkey.txt

保存到手机上。注意:手机要root

例如:保存到手机上并命名为monkey.txt

执行:

adb shell说明:进入adb shell后就相当于进入linux的root下面,但是没有权限在里面创建文件,所以手机要root

monkey -p 包名 -v 1000 > /mnt/sdcard/monkey.txt

注意:我的 adb shell 跟monkey XXX是分开执行的,分两行!!!

例如:保存到电脑上标准流与错误流分开保存,分别命名为info.txt,error.txt

执行:adb shell monkey -p 包名 -v 1000 1>/mnt/sdcard/info.txt 2>/mnt/sdcard/error.txt

㈢ android app自动化测试工具有哪些

1、Monkey
Android SDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。

2、MonkeyRunner
也是Android SDK提供的测试工具。严格意义上来说MonkeyRunner其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。

3、Instrumentation
早期Google提供的Android自动化测试工具类,虽然在那时候JUnit也可以对Android进行测试,但是Instrumentation允许你对应用程序做更为复杂的测试,甚至是框架层面的。通过Instrumentation你可以模拟按键按下、抬起、屏幕点击、滚动等事件。Instrumentation是通过将主程序和测试程序运行在同一个进程来实现这些功能,你可以把Instrumentation看成一个类似Activity或者Service并且不带界面的组件,在程序运行期间监控你的主程序。

5、Espresso
Google的开源自动化测试框架。相对于Robotium和UIAutomator,它的特点是规模更小、更简洁,API更加精确,编写测试代码简单,容易快速上手。

6、Robotium也是基于Instrumentation的测试框架,目前国内外用的比较多,资料比较多,社区也比较活跃。缺点是对测试人员来说要有一定的Java基础,了解Android基本组件,不能跨App。

阅读全文

与移动应用app压力测试相关的资料

热点内容
豫剧电影农村片 浏览:26
javaprivate类继承 浏览:487
电脑文件历史记录干什么用 浏览:136
如何去掉文件的只读属性 浏览:403
水沫缘浅的全部作品集下载 浏览:575
免费电影在线观看网站 浏览:697
涨奶挤出来的母乳电影 浏览:897
催眠控制类百合 浏览:13
编程属于哪个发票范围 浏览:207
ipadqq怎么下载群文件 浏览:272
投屏流畅的电影网站 浏览:506
手机书包网 浏览:694
版本的控制 浏览:2
编程中pls什么意思 浏览:891
窗体小程序发送给女生 浏览:219
win10字好模糊 浏览:694
win10宽带用户名和密码是什么 浏览:568
ipad如何下载花瓣邮箱app 浏览:488
红米note版本怎么安装软件 浏览:358
设置图标一样的视频app叫什么 浏览:635

友情链接