• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar

陈文管的博客

分享有价值的内容

  • Android
  • Affiliate
  • SEO
  • 前后端
  • 网站建设
  • 自动化
  • 开发资源
  • 关于

Python实现Android性能数据获取及压测场景模拟

2021年5月22日 | 最近更新于 下午7:42

在做自动化脚本测试中,需要去获取Android设备CPU和内存数据,并对不同CPU占用场景进行模拟,用来测试系统不同CPU状态下对应用运行状态的影响。本文内容包括Python与adb shell命令的交互,Android性能数据的获取,及压测场景模拟工具的调用。

一、Python与adb shell的交互

1. Python常规adb shell命令交互调用

使用subprocess,执行adb shell命令,获取输出结果和异常信息,一次性执行,一版用来获取一些系统信息。

# coding=utf-8
import subprocess
def adbShell(cmds):
    """
    :param[......]

【阅读全文 ▽ 】

Python性能分析优化及耗时异常自动化监控

2021年5月1日 | 最近更新于 下午6:47

本文内容包括Python性能可视化分析,逻辑优化,及根据不同的模型动态计算安全阈值,实现各个函数耗时及程序总耗时的自动化监控预警。

在做Python性能分析优化的时候,可以借助cProfile生成性能数据文件,通过pstats获取详细耗时分布数据,结合gprof2dot脚本生成函数调用栈结构图做可视化分析,提高性能分析的效率。接着从具体的耗时分布,先从占用大头的函数分析具体逻辑实现,逐步优化,同时保存pstats函数耗时平均值数据作为后续异常自动化监控的样本数据。

实现耗时自动化监控必须是可以根据算法动态调整安全阈值,而不是人工定死安全阈值范围,这样才可以实现异常监控的自循环和迭代校准。

一、性能数据采集及报表生成

[……]

【阅读全文 ▽ 】

Python批量重命名压缩文件

2021年1月19日 | 最近更新于 下午7:35

工作上遇到一个问题,QA提供的1000多个压缩文件名称命名不规范,服务器做C++覆盖率产物解析,压缩文件文件名必须和解压之后的文件名一致,所以只是修改压缩文件名称行不通,必须逐个解压之后重命名文件夹,再打包成压缩文件,用Python脚本实现了下,有需要自取做下改造。

这边实现的需求是批量把文件名类似“test_P0_500_1085____1.zip”的压缩文件先解压,之后重命名成:test_main_<index>文件名之后再重新压缩成压缩文件。

一、实现过程中遇到的几个坑

1. Python文件重命名和删除

重命名文件夹使用shutil.move()方法,删除文件夹用shutil.rmtree()方法,删[……]

【阅读全文 ▽ 】

Jenkins时区配置及定时构建

2021年1月14日 | 最近更新于 下午10:45

在使用Jenkins的时候如果没有配置时区,默认使用的是UTC时间,这样任务构建显示的时间点和定时构建配置的时间点就不会按北京时间去触发,如果用UTC去配置定时构建也麻烦,最好从根本上把Jenkins的时区配置成北京时间,本文介绍下Jenkins容器的时区配置及Jenkins定时构建的配置方式。

一、控制台修改时区配置

1)脚本执行命令配置时区

在Dashboard->Manage Jenkins->Script Console,里面执行以下的命令

System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone','Asia/Shanghai')

[……]

【阅读全文 ▽ 】

Python 绘制Android CPU和内存增长曲线

2020年5月16日 | 最近更新于 上午12:46

在做性能监控的时候,如果能把监控的CPU和内存增长变化用图表展示出来会比较直观,花了点时间用Python实现了下,来看下怎么用Python绘制Android CPU和内存变化曲线,生成增长曲线图表的PNG图片。

一、实现效果

一开始想通过采集的CPU和内存数据,导出到Excel生成增长曲线图表。做了下调研,并没有比较好的实现方法。后面看了下用Python来绘制图表实现起来挺容易的,而且Python的学习成本低,语法之类的做过开发的稍微看下就知道怎么用,容易上手。

具体实现的效果如下,CPU和内存采集的数据是独立进程的,内存分三块数据,应用总内存,Native内存和Dalvik内存,如果存在内存泄漏,要么在Native,要么[……]

【阅读全文 ▽ 】

  • Page 1
  • Page 2
  • Next Page »
博客公众号
博客公众号

GitHub

https://github.com/wenguan0927

近期文章

  • Gnirehtet终端设备共享PC网络实践
  • Python实现Android性能数据获取及压测场景模拟
  • Android模拟定位实现详解
  • Python性能分析优化及耗时异常自动化监控
  • Google Adsense申请及配置详解

友情链接

崔庆才的个人博客

Trinea  (codeKK)

Piasy

Paincker

wanandroid

陈祖杰的BLOG

闽ICP备18001825号-1 · Copyright © 2023 · Powered by chenwenguan.com