- 博客(86)
- 资源 (1)
- 收藏
- 关注
原创 PerfDog测试安卓模拟器初体验
背景随着近年来移动游戏应用的发展,安卓模拟器测试也成为QA测试中不可缺少的环节,相比较真实物理终端而言,模拟器存在以下优点:1.游戏操控性,部分移动端游戏越来越复杂,操控方式也开始多元化,而移动端的屏幕较小,手指触控的方式无法满足高端玩家的追求,而模拟器的虚拟按键映射功能配合鼠标操作手感是要比移动端触控好得多,尤其是FPS游戏更甚。2.设备性能,安卓模拟器本质是虚拟设备,可以实现PC硬件的性能共享,性能数据远超手机3.视觉效果,由于PC硬件的性能共享,可以开启高分辨率等画质。4.解决电量网速等问
2021-01-23 16:22:56
1850
3
原创 PerfDog常见问题解决
1.连接问题设备连接操作:首先确保你的手机已经打开开发者模式,并且已经允许USB调试,与ADB相关的安装权限也已经打开了, 测试机驱动已经在PC上安装成功了,并且你的手机已经出现允许调试的窗口,而且你也点击允许了,类似下图如果想确定是否设备已经和当前PC连接上,可以下在命令行里输入ADB devices查看下返回结果(你需要有ADB,并且提前配置好ADB的环境变量),成功连接是这个样子不出意外PerfDog会显示你的测试设备了,iOS系统可以下载itunes查看是否正常连接;当然环境不同会遇
2020-12-13 14:43:47
7233
1
原创 从零开始玩转PerfDogService---------简易web结合篇
背景随着测试工具的丰富,可执行程序文件越来越多,对于测试的工具管理来说也不是很友好;而且有我们后期会利用PerfDogService搭建自动化平台,所以今天先来一个简易版的demo;做完之后是这个样子:比较丑,样式打算后期优化,先把主要功能搞出来;一.结构组成python web框架: Tornado前端组件库: element-ui,VUE核心: PerfDogService整体思路其实很简单,首先获取本地的机型信息显示到前端,前端发送指令到Server,Server开始选中相应的机型开始
2020-12-12 20:16:19
703
原创 从零开始玩转PerfDogService---------Demo解析篇
1.Demo文件夹当下载好PerfDogService后文件夹是这个样子的。文件说明:PerfDogService.exe: Service启动文件,一般不用手工启动,自动化脚本会自动启动此程序。perfdog.proto: grpc接口和protobuf结构体的定义文件demo/python: python3的demo,依赖库grpcio和protobufdemo/java: java的demo,依赖库grpc-netty-shaded, grpc-protobuf, grpc-stub
2020-10-16 18:12:17
1076
2
原创 从零开始玩转PerfDogService---------初探篇
一.PerfDogService简介PerfDogService也就是 PerfDog的SDK,拥有了这个东西我们就可以结合自己的实际需要,DIY出一些符合自己的需求的产品。先来看看PerfDogService可以做什么1.性能数据web展示,可以结合自己的中台或者技术中心做可视化的数据展示2.根据自己的需求自定义一些工具3.构建本地的性能监控系统(IOS,Android双端都可以)4.结合自己的自动化脚本做自动化性能测试或者开发云测平台二.申请使用目前想获取PerfDogServic
2020-10-10 23:15:51
1563
5
原创 实战PerfDog优化小游戏性能
背景:我们的引擎是Egret,使用的是原生的EUI,转微信小游戏;工程第一版出来后使用PerfDog测试一波数据。结果发现很多问题,本文主要分两部分第一部分主要介绍通过PerfDog发现问题,第二部分主要介绍通过PerfDog的数据定位并解决问题。PerfDog具体操作方法不再赘述,这里可以看文档PerfDog使用说明第一部分————数据分析本次的案例多见于游戏第一版时的情况,比较常见,所以拿出来做个分析。这里强调一点。分析问题需要整体数据联动分析,单独看某单一信息是没是意义的第一次测试
2020-08-17 22:02:30
801
1
原创 atx2 小白改造之旅一 (弹窗)
一.概述本教程针对小白,所以没有过多复杂知识;atxserver2是一套设备集群管理系统,类似STF,不过主要功能使用Python开发;项目主体不再赘述,可以在这里查看atxserver2项目介绍改造目标本次改造目标主要是把点击使用的时候打开网页,变成弹窗的形式,从而达到同屏显示多个手机的目的,每个窗口可以单独拖拽大小;正常打开效果:窗体缩小效果:二.项目介绍ATX2项目结构和Djando类似,但实际上是采用Tornado+element-UI+VUE开发,所以想要改造最好对这些有一定
2020-08-09 15:37:05
1574
原创 ATX2增加性能可视化功能
首先看效果修改须知:>和手机操控页面相关的内容都在 remotecontrol_android.html 和remotecontrol_apple.html文件里。根据后缀名苹果和安卓来选择自己需要改的文件。remotecontrol_android.html里面有一个runShell函数命令可以执行shell命令开始修改一.界面修改1.先引入所需要的JS文件(我们用到了echarts这个可视化的库,效果不错,echarts官网)<script src="https://c
2020-08-09 15:35:56
565
2
原创 PerfDog助力自动化性能测试探索
背景:游戏项目采用敏捷开发,版本开发迭代很快,基本1-2周一个版本性能测试必要性性能问题在整个项目的阶段数量性能问题不是一开始就有的,也不是某一天突然出现的,而是随着我们的开发进度不断累积产生的;到后来我们希望用几天的时间去解决几个月甚至几年的问题,而实际上结果往往不会尽如人意。而且相同的问题,相同的人,在不同的时间去处理所花费的经历与时间完全不同。所以说性能问题看上去是研发团队的技术问题,但本质上其实是研发团队的开发流程问题如果我们可以规范流程,做到每一个版本皆有一份数据展示,一旦发现问题
2020-07-25 15:56:47
917
原创 实战PerfDog优化小游戏性能
微信小游戏优化实践第一次测试数据第二次测试数据结论:内存泄露问题分析内存泄露排查卡顿优化原生小游戏优化背景:我们的引擎是Egret,使用的是原生的EUI,转微信小游戏;工程第一版出来后使用PerfDog测试一波数据。第一次测试数据FPS感人(我们限帧60)Cpu勉强还过得去【图一】【图二】内存堪忧有的同学可能发现 App的CPUusage比total cpuusage低很多(图一),是因为我选择测试的是微信app,小游戏 是作为子进程而存在的,所以后来选择PerfDog的子进程
2020-07-25 11:22:29
726
原创 atxserver2-android-provider简介
简介atxserver2-android-provider 主要用户和安卓设备进行数据交互;主要使用uiautomator2框架,在屏幕的显示传输与交互上主要使用minicap与minitouch;流程atxserver2-android-provider可以通过adb track-devices自动发现已经接入的设备,当手机接入到电脑上时,会自动给手机安装(接入的设备需要配置好开发者选项,打开允许ADB的一系列操作,可能有的还要输入密码):可以参考:设备连接minicap, minitouch
2020-07-15 20:45:28
1822
原创 atxserver2简介
简介atxserver2是一个移动设备管理平台,主要是Python3+NodeJS+RethinkDB开发,必装环境:git lfs,Nodejs(建议装Nodejs 8,高版本偶尔会有问题),python3.X(建议3.6.x或者3.7.x),ADB,或者直接docker部署整体项目结构整体项目主要包括四部分:1.RethinkDB : 这是一个开源的轻量级的数据库,是用来存储数据的, 官网:https://rethinkdb.com/2.atxserver2 : 这一部分主要负责处理数据
2020-07-15 17:50:55
4636
原创 性能测试实践|PerfDog助力微信小游戏/小程序性能调优
概述随着近年来微信生态圈的发展,小游戏,小程序也随之爆火,同样伴随着的便是对于小游戏/小程序的用户体验的严格要求;微信团队也在自家的微信平台推荐使用PerfDog测试小游戏/小程序的性能。1.评测指标从小游戏的运行周期来看,开发者必须主要关注启动和运行两个阶段产生性能问题。启动阶段: 启动时长,该数据将显著影响用户打开留存率运行阶段: 内存峰值、Crash率、CPU占用、流畅度、网络等兼容性问题: 包括JS异常、黑屏等严重问题Android现网性能评测标准Android现网性能评测标准
2020-07-05 15:58:20
1356
原创 PerfDog4.0探索
adb简介Android调试桥(英语:Android Debug Bridge,简称:ADB),是一种拥有许多功能的用于调试Android设备的命令行工具,可让您与Android设备进行通信。ADB命令便于执行各种设备操作(例如安装和调试应用,传输文件等),并提供对Unix shell(可用来在设备上运行各种命令)的访问权限;简单来说就是谷歌为调试安卓系统推出了一个工具。通过adb获取应用消耗的性能数据对比Perfdog。PSS1.先传入序列号class Adb(object): def
2020-06-28 21:02:25
706
原创 PerfDog常用小技巧
PerfDog使用技巧背景:自己最近使用Perfdog也发现了一些常用的技巧,现在安利给大家一下1.双击批注基本使用不提,在整个测试过程我们经常会遇到很多场景,每个场景的性能数据一般都会各有不同,所以为了在报告中看的更明显,我们可以增加批注,比如标记关键节点等。鼠标左键双加添加批注批注及标定(鼠标左键双击,则批注。左键双击已生成的批注,则取消。鼠标左键单击,则标定):2.场景添加标签为了更加明显区分我们的 测试场景,我们可以对阶段时间增加标签,通过标签按钮给性能数据打标签,鼠标左键双击颜
2020-05-21 19:53:48
3904
原创 unity内存泄漏分析实践
标题内存泄漏分析背景:手机性能还不错,综合评分可以算是高端机,一般手游开高特效都没问题;本次测试为跑新手指引,游戏架构采用的是重度Xlua,几乎所有逻辑都是lua编写,UI采用FGUI;使用perfdog查看了一下整体数据,流畅度一般,但是内存有问题30分钟,考虑到内存一直在上升,有很大可能内存泄漏;于是继续查看游戏里运行的详细数据,这里可以使用工具unity Profiler,UWA,UPA等等,我这里使用的是UWA;发现留存堆内存果然持续上升,发生内存泄漏;继续分析,查看代码消耗的
2020-05-17 17:51:03
1414
原创 游戏测试中常见细节优化实践
能整不浮,能乘不除看一下代码 float f_a = 66666888f; float f_b = f_a + 0.01f; Debug.Log(f_a);//1.677722E+07 Debug.Log(f_b);//1.677722E+07 Debug.Log("_______________****_______________"); double d_a = 9007199254740992f; d
2020-05-17 16:58:20
640
1
原创 扒一扒安卓渲染原理
导语:现在PerfDog使用Jank作为来代表游戏流畅度的指标,详情可以看APP&游戏需要关注Jank卡顿吗?今天来简单扒一扒安卓的渲染原理;一CPU与GPU结构现在大部分移动端都会配有CPU(中央处理器)和GPU(图形处理器),有的现在还有一块NPU用于处理智能运算。来简单看一下他们的结构;绿色的是计算单元(ALU),橙红色的是存储单元,橙黄色的是控制单元。CPU需要...
2020-04-28 15:50:08
669
原创 ATX2改造实践之弹窗运行
一.概述atxserver2是一套设备集群管理系统,类似STF,不过主要功能使用Python开发;项目主体不再赘述,可以在这里查看atxserver2项目介绍改造目标本次改造目标主要是把点击使用的时候打开网页,变成弹窗的形式,从而达到同屏显示多个手机的目的,每个窗口可以单独拖拽大小;正常打开效果:窗体缩小效果:二.项目介绍ATX2项目结构和Djando类似,但实际上是采用Tor...
2020-04-24 15:04:22
748
1
原创 Perfdog玩转内存泄漏
背景交代最近QC同学在跑游戏的过程中发现玩的时间久了游戏会发生闪退,经过搜集信息后排除了功能性bug的一.判断是否是内存泄露拿到真机,USB连接,杀掉多余后台进程,打开Perfdog,接下来一顿操作猛如虎,Perfdog具体操作不在赘述,有关perfdog怎么使用的教程可以参考Perfdog使用教程拿到内存趋势图使用手机此图一出,基本就可以断定内存泄露了,这是正常玩游戏,游戏运行...
2020-04-17 20:08:29
2059
原创 实战之ios电量获取大对比
背景交代最近有一款游戏要上线,性能检测虽然在安卓上已经检测通过,但ios上还是第一次检测,尤其是近年来移动端用户越来越重视手机的续航能力,所以我们对游戏的电量消耗等指标的关注程度也越来越重视;然而ios性能检测的相关文档相对安卓来说还是少很多,以前我们常用的就是Instruments,最近perfdog也出了iOS电量测试功能,特来对比一下。这里首先给出ios手机wifi连接Imac的方法...
2020-03-30 17:31:44
1040
原创 Perfdog实战之减少CPU消耗
导语:最近在测试过程中发现了一些比较典型的性能问题,所以来分享下作为测试怎么为解决问题提供更多的有效信息,本次主要从优化角度分析Perfdog测试报告。本次主要介绍关于CPU的优化;怎么获取测试报告此处不再赘述,有关perfdog怎么使用的教程可以参考Perfdog使用教程1. 第一部分,查找问题,找出问题特征点首先我们看到FPS数据,可以看到FPS波动较大,但这是从某一时间开始的,在前...
2020-03-21 17:09:16
1253
原创 利用PerfDog分析游戏性能瓶颈
利用PerfDog分析游戏性能瓶颈首先明确测试目的测试报告的解析首先明确测试目的最近在检查游戏的质量品质,发现流畅度比较差,游戏卡顿较多,首先我们要明确性能的瓶颈在哪里,这就是本次我们测试的目的;常见的的游戏瓶颈例如CPU,GPU,内存,通过Perfdog都可以很轻松的得到各项数据指标;但首先确保手机和电脑要连接正常,比如你可以通过 adb devices 来查看手机是否连接到电脑;像...
2020-03-18 22:05:53
2995
原创 Pyqt5保持窗体在前台
关键代码from PyQt5.QtWidgets import QApplication, QMainWindowimport PyQt5.QtCoremyWin.setWindowFlags(PyQt5.QtCore.Qt.WindowMinimizeButtonHint | # 使能最小化按钮 PyQt5.QtCore.Qt.W...
2020-03-17 16:49:33
1007
原创 Ubuntu16.04系统后的操作
1.清华镜像下载的16.04.6桌面版2.安装时选择中文输入法3设置系统关闭自动更新4安装时可能遇到无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?可以强制解锁 sudo rm /var/cache/apt/archives/lock ...
2020-02-26 12:00:30
179
原创 element-ui 使用TreeTable例子
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Layui树形表格2.x演示</title> <meta name="renderer" content="webkit"> <...
2019-12-27 20:03:47
5118
原创 layUI treeTable设置表头浮动属性
在渲染表格的位置加上: height: 'full-150',比如:var insTb = treeTable.render({ elem: '#demoTreeTable1', data: data, tree: { iconIndex: 2 }...
2019-12-19 10:44:26
2176
1
原创 layUI treeTable.js:271 Uncaught TypeError: Cannot read property ‘children‘ of undefined
最近用到layUI的treetable,官方给的数据没有问题,自己改的就GG,总是报treeTable.js:271 Uncaught TypeError: Cannot read property 'children' of undefined然后折腾半天,发现第一个参数必须叫做id我的数据源为 :data=[{'id': '4.0000000005591e-06',"cos...
2019-12-19 09:42:16
1484
1
原创 游戏性能优化综合
CPU优化:https://gameinstitute.qq.com/community/detail/128445Draw Calls----GChttps://gameinstitute.qq.com/community/detail/126052Unity移动端综合性能优化https://gameinstitute.qq.com/community/detail/1257...
2019-11-19 11:18:01
199
原创 部署ATX2 IOS测试
MAC电脑上 Xcode版本:10.1和11.11安装Python 3.6,node.js8.1.1(具体操作步骤不详细叙述了)2安装libimobiledevice工具包brew uninstall --ignore-dependencies libimobiledevicebrew uninstall --ignore-dependencies usbmuxdbre...
2019-11-05 14:50:30
1776
1
原创 ios真机测试包iOS--DeviceSupport
留着备份下iOS–DeviceSupport (持续更新)【使用方法】解压后导入以下目录:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport1【注意】12.4.1(16G102)版本,可以使用12.4(16G73)的DeviceSupport,Xcode10.3...
2019-11-01 14:56:17
1478
原创 一个换脸的小程序
import cv2import dlibimport numpyimport sysPREDICTOR_PATH = "/home/matt/dlib-18.16/shape_predictor_68_face_landmarks.dat"SCALE_FACTOR = 1FEATHER_AMOUNT = 11FACE_POINTS = list(range(17, 68))MO...
2019-10-24 09:51:09
3162
1
原创 使用Bootstrap表格
首先引入库<!-- Bootstrap core CSS -->. <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script> <script src="https://cdn.staticfile.org/twitter-bootstrap...
2019-10-22 20:58:38
229
原创 Python连接操作My sql数据库
#coding=utf-8#连接数据库测试import pymysqldef OpenMysql(host,user,password,db): db = pymysql.connect(host=host, user=user, password=password, db=db, cursorclass=pymysql.curs...
2019-10-22 20:49:52
400
原创 Tornado+ Echarts连接数据库显示数据(Python)
##Tornado+ Echarts连接数据库显示数据(Python)首先,需要Python获取数据库的值#coding=utf-8#连接数据库测试import pymysqldef OpenMysql(host,user,password,db): db = pymysql.connect(host=host, user=user, password=password, d...
2019-10-22 20:47:29
1140
原创 ERROR 1396 (HY000): Operation ALTER USER failed for ‘root‘@‘localhost‘
mysql连数据库的时候报错:1251 client does not support authentication protocol requested by server;consider upgrading Mysql clientERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'localhost'先登录my...
2019-09-20 16:37:01
20137
10
原创 Windows部署mysql数据库
到官网上下载所需要的版本。官网:https://dev.mysql.com/downloads/mysql/:<MSI版本的是直接界面化下一步安装的,下面的为zip压缩包解压dos窗口安装>下载完成,将文件解压到你想要安装的盘里。这里我安装到了E盘。之后以管理员身份运行DOS窗口。进入到mysql的bin文件夹下: 重点来了: 在mysql-5.7.20-winx64的文...
2019-09-20 14:58:34
683
AirtestIDE_2019-04-16_py3_win64.7z
2020-09-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人