app性能测试主要分为:

启动时间,CPU,流量,电量,内存,FPS,过度渲染

下面首先对启动时间进行分析:

app的启动分为冷启动(首次创建),热启动(通过返回键,home键推到后台,未完全被杀死)

下面首先对启动时间进行分析:

冷启动

  • 启动app命令

     adb shell am start -W -n 包名/Activity名
    
  • 停止app命令

     adb shell am force-stop 包名
    

热启动

  • 启动app命令和冷启动命令相同

      adb shell am start -W -n 包名/Activity名
    
  • 停止app命令

     adb shell input keyevent 3
    

获取app包名命令(win10 下)

adb logcat | findstr "START"

然后点击启动app,就可以cmp=(…/…)看到app的包名和app的启动页

脚本代码:

#/usr/bin/python
#encoding:utf-8
import csv
import os
import time#app类
class App(object):def __init__(self):self.content = ""self.startTime = 0#启动Appdef LaunchApp(self):cmd = 'adb shell am start -W -n com.zahd.agriculturaltraceability.debug/com.zahd.agriculturaltraceability.ui.Activity.LoginActivity'self.content=os.popen(cmd)#停止Appdef StopApp(self):#cmd = 'adb shell am force-stop com.zahd.agriculturaltraceability.debug'cmd = 'adb shell input keyevent 3'os.popen(cmd)#获取启动时间def GetLaunchedTime(self):for line in self.content.readlines():if "ThisTime" in line:self.startTime = line.split(":")[1]breakreturn self.startTime#控制类
class Controller(object):def __init__(self, count):self.app = App()self.counter = countself.alldata = [("timestamp", "elapsedtime")]#单次测试过程def testprocess(self):self.app.LaunchApp()print("1")time.sleep(5)elpasedtime = self.app.GetLaunchedTime()self.app.StopApp()time.sleep(3)currenttime = self.getCurrentTime()self.alldata.append((currenttime, elpasedtime))#多次执行测试过程def run(self):while self.counter >0:self.testprocess()self.counter = self.counter - 1#获取当前的时间戳def getCurrentTime(self):currentTime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())return currentTime#数据的存储def SaveDataToCSV(self):csvfile = open('startTime2.csv', mode='w')writer = csv.writer(csvfile)writer.writerows(self.alldata)csvfile.close()if __name__ == "__main__":controller = Controller(10)controller.run()controller.SaveDataToCSV()

扩展

电源键: adb shell input keyevent 26HOME 键: adb shell input keyevent 3返回键: adb shell input keyevent 4点亮屏幕: adb shell input keyevent 224熄灭屏幕: adb shell input keyevent 223输入文本: adb shell input text xxxxx

app性能测试:(一)启动时间相关推荐

  1. Android app 性能测试以及专项测试

    1. 性能测试 Android性能测试分为两类: 1.一类为rom版本(系统)的性能测试 2.一类为应用app的性能测试 Android的app性能测试包括的测试项比如: 1.资源消耗 2.内存泄露 ...

  2. App 性能测试分享

    App 性能测试分享 在本文内,主要以Android性能测试为主进行分析 一.性能测试包含 1.启动时间测试   测试场景包括 - - - 首次安装启动时间.冷启动.热启动测试 2.页面响应时间:   ...

  3. app性能测试与弱网测试

    1. 性能测试 Android的app性能测试包括的测试项比如:  1.资源消耗  2.内存泄露  3.电量功耗  4.耗时  5.网络流量消耗  6.移动终端相关资源利用率  7.帧率  8.渲染等 ...

  4. APP性能测试的6项关键指标及测试获取手段

    如何把rom测试和手机预装APP测试得更好,用户体验.流畅度.功耗.启动时长等指标是中兴努比亚手机产品线最关注的层面.本文将从APP性能维度.性能测试平台等维度全面讲解中兴努比亚APP专项性能测试和监 ...

  5. android下的app性能测试应主要针对那些方面,如何开展?

    如何开展安卓手机下的App性能测试,对于优秀的测试人员而言,除了要懂得性能测试的步骤流程外,还应该懂的性能测试的一些其他知识,比如性能测试指标.各指标的意义,常用的性能测试工具.如何查看结果分析等等知 ...

  6. app 性能测试

    此篇为转载文章,我也是接触软件测试,对App 性能测试这一块不知所措,荣幸今天看到这篇文章,希望对有需要的同志有所帮助 app 性能测试的几个概念 我们在使用各种 App 的时候基本会关注到:这款软件 ...

  7. App性能测试中的几个重要概念

    我们在使用各种 App 的时候基本会关注到:这款软件挺耗流量的?运行起来设备掉电有点快嘛?切换页面的时候还会有卡顿等现象?如果遇到有这些问题的 App 我们基本会将它请出我们的 我们在使用各种 App ...

  8. 关于APP性能测试脚本录制的四种方法

    大家好,近段时间很多人问我关于APP性能测试方面问题.一直是打算发表的,由于多方面的因素拖到现在,有次公司让我给客户讲解APP性能测试,回来后就一直觉得有必要写下.好了,不多废话. 目前版本LoadR ...

  9. 如何做好App性能测试

    如何做好App性能测试,App性能测试和网站性能测试不一样,它分成客户端性能测试和服务器性能测试,下面我们详细来说明: 1.客户端性能测试 一个App做的好不好,不仅仅只反应在功能上.被测的app在中 ...

最新文章

  1. 查看终端进程是否死掉技巧
  2. httpd(一)--基础、认证
  3. 求知无限,刷新.NET 中国社区
  4. element手机验证格式_vue封装 element-ui form表单验证 正则匹配手机号 自定义校验表格内容...
  5. 腾讯视频如何退出登陆
  6. openjudge 菲波那契数列 2753
  7. TCP协议之三次握手与四次挥手
  8. STM32F103DAC功能实现
  9. Java 线程实时读取日志文件
  10. 静电场里非常有用的公式
  11. 蔡高厅高等数学18-函数在一点处的连续、函数在区间内的连续、两类间断点的判断
  12. ojdbc6报红以及nested exception is org.hibernate.service.spi.ServiceException: 已解决
  13. 树莓派搭建DLNA客户端,使用gmediarender,DLAN render。
  14. Matlab数值计算差商与插值
  15. 高清视频格式-BD-remux、BD-RE、BDRip的区别
  16. Centos7 Firewalld 自定义规则
  17. 力扣(98.107)补9.10
  18. 为Array对象添加一个去除重复项的方法
  19. srg2220_华为SRG2200路由器系列配置说明
  20. ArcGIS教程:克里金法的工作原理(二)

热门文章

  1. 软科计算机科学与工程专业,2019上海软科世界一流学科排名计算机科学与工程专业排名莱斯特大学排名第301-400...
  2. 深入Java微服务之网关系列1:什么是网关
  3. 【时间序列 - 02】ExponentialSmoothing - 指数平滑算法
  4. 基于html5贪吃蛇小游戏,使用HTML5 Canvas制作贪吃蛇小游戏
  5. PCL点云处理之体素滤波(八十七)
  6. java指纹识别+谷歌图片识别技术_源代码
  7. 经济基础知识(初级)【1】
  8. 余生很短,我只用python
  9. nohup启动项目时报错:Unable to obtain lock on /xxxxxxxxx /AdminServer.lok. Server may already be running
  10. 怎样才能使你的Mac更加个性化?