Android手机稳定性、压力、性能测试方案
一:稳定/压力测试
1.Monkey脚本
使用Monkey脚本测试,简单方便,不挑环境、设备,只要PC端安装JDK、SDK都可以运行,命令随意搭配(命令讲解可查看adb monkey测试相关命令介绍),目前很多公司都采用这种方案
adb shell monkey -s 100000000 --throttle 1000 -v -v -v --ignore-timeouts --ignore-crashes --ignore-security-exceptions --ignore-native-crashes --pct-touch 40 --pct-motion 10 --pct-trackball 5 --pct-nav 5 --pct-majornav 5 --pct-appswitch 15 --pct-flip 19 --pct-anyevent 1 88888888
2.使用APK压力测试
使用apk方式,需要先有android开发技术,开发出适合平台及终端的app软件,安装部署到终端后,输入需要用到的参数就能快速进行压力测试(如图:联系人、相机、通话测试)
微信ID:TestingXP 微信ID:TestingXP 微信ID:TestingXP根据测试Case进行开发app测试
预置条件测试内容
后台挂有QQ,微博,微信等wifi压力测试:打开自动连接、关闭
移动、联通双卡自动开关机,停留时间设置久一些,需要观察是否正常注册网络
移动、联通双卡,后台播放音乐通话中切换免提,听筒,录音等
移动、联通双卡1、创建删除联系;
2、创建删除Sim卡联系人;
3、搜索
4、导入导出联系人
移动、联通双卡,后台挂有QQ,微博,微信等1.搜网 PASS
2.数据切换
3.待机
移动、联通双卡1.图片切换
2.图片缩放
3.设置墙纸
预置大量音频文件1.播放暂停 PASS
2.随机切换视频 PASS
3.随机快进后退
4.随机定位播放
预置大量视频文件1.播放暂停
2.随机播放音频
3.随机快进后退
4.随机定位播放 PASS
5.后台播放
大容量T卡1.可选择amr或者3gpp类型进行录音并保存文件
2.回放
3.停止回放
4.删除录音文件
3.中移动MTBF入库测试自动化工具
机器盒子,费用昂贵(不建议使用)
4.自动化脚本+MTBF用例
使用python脚本,开发的Unittest自动化框架测试,简单方便,主要采用:python+HTMLTestRunner+
Unittest+uiautomator,主要代码如下,供参考:
main.py
# -*- coding:utf-8 -*-
import sys
import importlib
importlib.reload(sys)
import time
import HTMLTestRunner
import unittest
from Common.Suite import SuiteCase
def Suite():
suiteTest = unittest.TestSuite()
while 1:
suiteTest.addTest(SuiteCase("TestPhone"))
return suiteTest
if __name__ == '__main__':
# 确定生成报告的路径
timer = time.strftime('%Y-%m-%d %H_%M_%S ', time.localtime(time.time()))
filePath = "Report\\"+timer+"pyResult.html"
fp = open(filePath,'wb')
# 生成报告的Title,描述
runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title='Python Test Report',description='This is Python Report')
runner.run(Suite())
fp.close()
SuiteCase.py
class SuiteCase(unittest.TestCase):
def setUp(self):
d.press.home()
def tearDown(self):
d.press.back()
def TestPhone(self):
self.assertEqual(phone.Case_Phone(), 1, "test Case_Phone fail")
Case_Phone.py
def Case_Phone():
try:
d.press.back()
d.press.back()
d.press.back()
time.sleep(2)
d(text="拨号").click()
time.sleep(2)
d(resourceId="com.android.dialer:id/menu_paste").click()
d(resourceId="com.android.dialer:id/menu_paste").click()
time.sleep(10)
d(resourceId="com.android.dialer:id/endButton").click()
time.sleep(2)
d.press.back()
return 1
except Exception:
log.getLog("phone")
return 0
二:性能测试
1.对手机硬件性能检测,比如:反复开关机、弱信号下呼入呼出、Mp3效果、Mp4效果、BT通话多媒体音效距离长短、Wifi距离、GPS星值、FM有效电台、前后摄像头、CIT检测、拷机测试(长时间录音、播放音乐/视频、待机、充电等)、不同运营商通话质量、充放电曲线测试、充电器兼容性
2.模拟用户待机场景下测试,一般前期准备:
1.T卡准备:T卡(8G 4速T卡)预置2G以上的内容,包括:500条短信备份包,手机2800条联系人.vcf,Sim卡250条联系 人.vcf,500张图片,视频资源文件,3M的音频资源文件,apk
2.测试前,需把500短信备份包,手机2800条联系人,Sim卡250条联系人,恢复到手机中
3.前2条环境搭好后,手机至少跑1小时monkey测试后,再开始手动测试(必须跑)
4.所有Case的预置条件都建立上一条Case的操作基础上
A. 开关机、搜网信号、应用启动时间长短测试,对比样机、平台机器做参考,多测试取平均
B. 模拟用户一天内使用场景、刷新天气、聊QQ、开关BT分享、拍照、通话、短彩信、视频播放、上网浏览网页、刷微博、收到Push消息、发送邮件、亮灭屏待机等,每个应用运行1-10min左右,期间待机30-60min,最后计算电池耗电量
微信ID:TestingXP 微信ID:TestingXP----------------------------------------------------
每周两篇|原创干货|等你来战
微信ID:TestingXP
长按二维码关注微互动