app稳定性测试

app稳定性测试_第1张图片


这里写目录标题

  • 一、稳定性测试概述
  • 二、Monkey稳定性测试实操
    • 1、基础参数
      • -p:指定对应的包名,多个:-p 包名 -p 包名
      • --throttle :设置每个动作的间隔时间,比如6000ms
      • -s:指定对应的种子:Seed ,进行回归测试
    • 2、调试选项
      • a、例:对企业微信进行稳定性测试,执行50次事件,忽略过程中遇到的异常,直到50次事件完成
    • 3. 事件类型选择
    • 4、常见的案例问题
    • 5. 日志分析与bug定位
      • a、日志分析步骤
      • b、怎么去定位错误?
      • c、错误定位案例
        • (1)ANR(Application Not Responding) :程序无响应
        • (2)CRASH:程序崩溃或异常
      • d、异常情况:
    • 6、在做monkey 你测试出来什么问题?
    • 7、发现错误之后你是怎么定位问题的?

一、稳定性测试概述

问题:什么是稳定性测试?
长时间的去运行软件,确定软件能够有好的为用户提供服务
7*24 – 测试软件 - 一个测试人员做不到事情 ,可以借助工具
使用工具去代替人工操作行为

Monkey : 随机的向应用发送对应的操作,人工去模拟用户操作,确定APP 的稳定性。

二、Monkey稳定性测试实操

adb shell monkey – 显示对应的指令
分为:必填(count)、可选
长时间 == count (次数)

1、基础参数

-p:指定对应的包名,多个:-p 包名 -p 包名

adb shell monkey -p com.tencent.wework 500

adb shell monkey -p com.tencent.wework 500

–throttle :设置每个动作的间隔时间,比如6000ms

adb shell monkey ‐p com.tencent.wework  ‐‐throttle 6000 5000

显示日志的级别:三个级别
-v
-v-v
-v-v-v 最为详细

-s:指定对应的种子:Seed ,进行回归测试

问题:进行稳定性测试之后,发现问题,开发进行解决,解决完了,测试怎么进行回归?

app稳定性测试_第2张图片
如果需要回归测试可以直接指定对应的种子即可。

adb shell monkey ‐s 1676758881596 ‐p com.hcedu.hcdeom ‐v‐v‐v 5000 >d:\test\log.log

adb shell monkey ‐s 1676758881596 ‐p com.hcedu.hcdeom ‐v‐v‐v 5000 >d:\test\log.log

2、调试选项

在Monkey运行过程中,一般拔掉数据线,也会在持续运行。其中有如下几种原因造成Monkey停止:

  1. 当命令运行完毕
  2. 结束进程的方式来终止Monkey的执行
    adb shell ps | find “monkey”
    adb shell kill 进程号
  3. 运行过程中遇到异常、奔溃等情况Monkey也会停止
    1 调试选项‐‐都带上
    2 ‐‐ignore‐crashes 忽略在应用程序出现crash时导致的monkey停止
    3 ‐‐ignore‐timeouts 忽略在应用程序出现ANR问题时导致monkey停止
    4 ‐‐ignore‐security‐exceptions 忽略应用程序发生许可错误时导致monkey停止
    5 ‐‐kill‐process‐after‐error 当应用程序发生错误时,应用程序停止运行并保持在当前状态

a、例:对企业微信进行稳定性测试,执行50次事件,忽略过程中遇到的异常,直到50次事件完成

adb shell monkey -p com.tencent.wework --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions -v-v-v 50

3. 事件类型选择

问题:事件的百分比可以随意的组合,不要超过100%即可

app稳定性测试_第3张图片

adb shell monkey ‐p com.tencent.wework ‐‐pct‐touch 80
 ‐‐ignore‐crashes ‐‐ignore‐timeouts ‐‐ignore‐security‐exceptions
‐‐killprocess‐after‐error ‐v‐v‐v 500 >d:\test\log.log

4、常见的案例问题

1、问题: 为什么日志在我们cmd中显示?没有在我们文档中显示?
可以选择标准流 和 异常流在不同的文件中

adb shell monkey ‐p com.tencent.wework 
‐‐ignore‐crashes 
‐‐ignore‐timeouts 
‐‐ignore‐security‐exceptions
‐‐killprocess‐after‐error 
‐v‐v‐v 500 1>C:\Users\Lenovo\Desktop\adbfile\log.log 
2>C:\Users\Lenovo\Desktop\adbfile\error.log

2、问题: 稳定性测试可以测试真机,那么真机要连接usb ,我们可不可以无线连接?

app稳定性测试_第4张图片

5. 日志分析与bug定位

a、日志分析步骤

一般的操作步骤为以下几步:
1、在日志中找有哪些错误
2、找到错误后再定位是哪些APP或者哪些事件出错(定位错误)
3、提交bug,并附上日志信息
4、开发修复bug后,进行回归验证。使用之前的monkey命令再执行一遍,注意seed值要一样

b、怎么去定位错误?

一般测试结果分析通过搜索关键字:
1、程序无响应,ANR问题:在日志中搜索“ANR”
2、崩溃问题:在日志中搜索“CRASH”
3、其他问题:在日志中搜索“Exception、FATAL” 搜索到这段log

c、错误定位案例

(1)ANR(Application Not Responding) :程序无响应

只要搜索ANR就可以搜索到这段log,如下图中标注的APK应用名称。这个ANR发生在com.android.music(音乐)模块。

app稳定性测试_第5张图片

(2)CRASH:程序崩溃或异常

只要搜索Crash就可以找到这段log,如下图中标注的APK应用名称。这个crash发生在com.hcedu.hcdeom模块。

app稳定性测试_第6张图片

d、异常情况:

问题:当测试一晚上,却发现没有问题。——》压根测试没有测试完
进行确认,本次测试是否完毕?
6点——》执行命令——7点停止——》第二天早上

体现:

1、进行稳定性测试要保持手机是常亮的状态(长时间操作)
2、保证手机是有电的状态
3、测试完成之后,去看手机的后台运行程序;如果没有对应的应用证明重启过
4、看手机对应的开机时间:设置——关于手机——状态信息——已开机时间

6、在做monkey 你测试出来什么问题?

答案 (c、错误定位案例)

7、发现错误之后你是怎么定位问题的?

app稳定性测试_第7张图片


app稳定性测试_第8张图片

你可能感兴趣的:(#,app自动化测试,linux,appium,android,studio,adb)