腾讯的专项测试之道benjaminli(李昶博)腾讯公司—SNG社交网络质量部 目录向您介绍我自己1我们的专项测试方法论2我们自研的平台工具3成熟的专项团队测哪些指标?4发布后的全网监控5 我有哪些项目经验?WindowsPC QQQ+桌面QQQQ空间iOSQQ空间更多项目全民K歌花样视频互动交友办公IM企鹅电竞音视频AVSDKRTMP SDKNow直播空间直播腾讯课堂52017 我给腾讯公司带来的价值 目录向您介绍我自己1我们的专项测试方法论2...
腾讯的专项测试之道benjaminli(李昶博)腾讯公司SNG社交网络质量部 目录向您介绍我自己1我们的专项测试方法论2我们自研的平台工具3成熟的专项团队测哪些指标?4发布后的全网监控5 我有哪些项目经验?WindowsPC QQQ+桌面QQQQ空间iOSQQ空间更多项目全民K歌花样视频互动交友办公IM企鹅电竞音视频AVSDKRTMP SDKNow直播空间直播腾讯课堂52017 我给腾讯公司带来的价值 目录向您介绍我自己1我们的专项测试方法论2我们自研的平台工具3成熟的专项团队测哪些指标?4发布后的全网监控5 探索性测试 自动化 分析定位 OS源码 提解决方案T3 T2 /× /×T1 × ×外包 /× /× × ×实习 /× × /× ×横轴:难度更高纵轴:级别更高腾讯专项技术测试员工能力模型 速度体验评测模型交互模式 举例 用户预期 成效用户操作立即回馈 400ms1.指导测试用例的编写2. 性能测试执行可以交给外包3.无标准时代,每个性能Bug的重要性依赖leader判断。现在IM电竞,开发不再PK,聚焦于性能优化。IM电竞忙模式 4秒进度条最多等待4秒,IM电竞看到进度条前进实时动画 游戏,视频等 掉帧率0%卡时间 窗口展示后不卡 50ms竞品法则 任何情况下,始终要快于竞争对手 技术评审模型分类 细项 产品需求PK 技术方案PK 性能测试点C/S 处理大批量数据的协议 不需要 增量拉取/大数据通道 窄带环境下测试速度两个或以上的C/S协议来回 不需要 考虑合并为一个来回 高丢包环境下测试速度下载/上传数据量 100K 不需要 不需要 I/O测试、流量测试下载/上传数据量 500K 进度条 不需要 测试代码结构 独立的vcproj工程 不需要 尽量使用静态LIB 有共享价值才可用DLL常驻内存的数据段(static数据、IM电竞一旦申请就不再释放的逻辑)不需要 按需申请、按场景释放 验证内存增量/释放Static类/全局变量 不需要 非必要情况不要使用 验证启动程序时/DLL加载时,不加载此模块的代码B/S 是否有内嵌网页 不需要 跨进程WEB展现 页面测速/内存泄漏测试是否跳转到浏览器 不需要 不需要 页面测速磁盘I/O 为界面层提供数据查询/存储接口(封装DB、ini、注册表等)不需要 接口查询效率 I/O测试多次磁盘写操作(移动、复制、删除等) 不需要 不需要 I/O测试数据遍历(SQL、复合文档、文件系统) 需求合理? 考虑无遍历的替代方案 I/O测试界面效果 有多个同类界面元素(举例:多个桌面图标)不需要 异步界面展示/按需加载设计异步展示按需加载I/O测试动画效果 不需要 Timer实现/阻塞式动画 测试掉帧率关键路径 逻辑是否和关键路径挂钩:启动时、登录面板、登录时/登录后、退出不需要 按需加载设计 按需加载关键路径性能测试 目录向您介绍我自己1我们的专项测试方法论2我们自研的平台工具3成熟的专项团队测哪些指标?4发布后的全网监控5 研发支撑平台:CI/合流/发布 安装包质量监控:体积im电竞、方法数 :静态代码扫描200+项目已接入:给两个SVN就能从差异中扫出Bug共1731条扫描规则,其中201条自研规则C++CppCheck CppLint LintJavaFindBugsCoverityC/C++ C# JavaScript Objective C PHP Python PyLint Ruby :性能自动化测试 :稳定性测试序号 项目名称 部门1 手Q 即通产品部2 空间独立版 社交平台部3 空间结合版 社交平台部4 QQ Music 数字音乐部5 全民K歌 数字音乐部6 应用宝 MIG7 腾讯新闻 OMG8 天天快报 OMG9 腾讯视频 OMG10 企鹅办公 即通产品部11 腾讯课堂 即通应用部12 天天P图 社交平台部13 Now直播 即通应用部14 企鹅FM 社交平台部15 腾讯视频OEM OMG16 腾讯视频少儿版 OMG17 花样直播 即通应用部18 企鹅辅导 即通应用部19 微云 云平台部20 企鹅电竞 增值产品部21 闪咖 社交平台部22 腾讯直播 OMG23 音视频开放SDK 音视频实验室 :卡顿监控 目录向您介绍我自己1我们的专项测试方法论2我们自研的平台工具3成熟的专项团队测哪些指标?4发布后的全网监控5 专项质量体系Windows 卡顿 时延 CPU 句柄 页错误 IO 线程 内存 稳定性采集 perflib.win全网Crash上报 分析 Magnifier + Windows Performance Analyzer WinDbg外网 卡上报 全网性能上报 哈勃iOS 卡顿 时延 流畅度 CPU 内存 线程 IO 流量 电量 稳定性采集 × perflib.ios TCPDump 体温枪 New Monkey分析 × Log Apple Instruments WireShark ×外网 智子 哈勃 SNG APM × × × RQD 卡顿 电量 稳定性 时延 线程 流量 流畅度 CPU 内存 IO DB GC 音视频采集 × 电流仪New Monkeyperflib.android ×分析 × × Log LogWire SharkTrace View 分析云AllocTraceSNG APM外网 智子 × RQD 哈勃 × × SNG APM × 框架效应:这样PK,效率多低?在实验室中证明性能Bug 这不影响用户体验吧?我觉得可以接受决策上升要改 我的环境没这问题测试数据稳定吗?你都不复现,我怎么查限制业务规模 延后/预加载 移到子线程 要我原子优化?你测到不卡就足够了,别搞那么复杂发布:外网投诉 测试不是证明过体验够好了吗?这不关我的事啊,是历史问题/系统问题 无需重现规律定位随机性能Bug卡顿实验室App Log 时延perflibCPU TraceViewIO IOMonitorGC AllocTraceDB IOMonitor流量 TCPDump全网监控智子 卡顿时延APMIODB掉帧率流量编码度量分析 解决验证 带分析能力的性能自动化 结果:不吵架了,直接解BugIO太高定位到出问题的函数专项分析工具优化之谁写的这么烂的代码?IO减少30倍影响90%用户测试验证 测试CPU变频特性其他APP串扰如何判定性能问题 4.x有Bug 测试Bug:启动慢至12秒连续3周没有分析出原因IO分析2小时内找到某组件最大效率提升60倍 内存测试缓存基准值重复打开关闭泄漏 测试数据规模 优化前(ms) 优化后(ms) 性能提升10000 27,635 2,853 9倍20000 164,235 4,380 36倍30000 789,600 6,945 113倍40000 2,287,948 9,910 230倍50000 3,884,815 16,038 241倍100000 远超1小时IM电竞,无法测出 29,100 -GC问题 内存复用 可解!!CPU问题 函数耗时 无解?? 掉帧率(流畅度)测试16.67ms 掉10帧,167ms60 50 60 60 60 60 60 60 60 60更敏感避免平均化59 每天运行10轮:每天运行1轮:FPS = 50 掉帧率 = 16.7%FPS = 50 掉帧率 = 0%0%16.7%0.26%0.20%0.05%0.01%1.45%1.19%0.96%0.68%0.0%0.5%1.0%1.5%2.0%2.5%3.0%3.5%4.0%4.5%1帧 2帧 4帧 8帧优化前 优化后 FaceBook 流量测试自己解析/proc/net /xt_qtaguid/ statsTrafficStats含有本地回环的流量 目录向您介绍我自己1我们的专项测试方法论2我们自研的平台工具3成熟的专项团队测哪些指标?4发布后的全网监控5 用户投诉跟进 全网上报 卡顿全网上报外网用户卡顿率 时延全网上报 :掉帧率 :IO、DB、内存IO主线程不能I/OBuffer太小重复I/ODB主线程不能做DB全表扫描没有使用事务SQL重复编译累计I/O 100MB内存泄漏Activity泄漏VC泄漏内存触顶率内存Dump 微信官方公众号:壹佰案例关注查看更多往届实践案例
备战2023年高考数学一轮复习 核心专题突破5 概率统计与其他知识的交汇问题
备战2023年高考数学一轮复习 助学培优1 突破双变量“存在性或任意性”问题
备战2023年高考数学一轮复习 助学培优2 应用基本不等式的八种变形技巧
备战2023年高考数学一轮复习 助学培优3 函数奇偶性的拓广性质及应用
备战2023年高考数学一轮复习 助学培优5 构造法解决含f(x), f′(x)的不等式问题
备战2023年高考数学一轮复习 助学培优6 活用“龙凤不等式”求解导数问题