15
北京 珠海 成都 大连 深圳 日本 马来西亚 游戏中的自动化测试 ---- 共享资源,做我们擅长的事情 金山软件 - 西山居 - 质量中心 高级质量经理 白银祖

Top100summit 游戏中的自动化测试 - 金山 - 白银祖

Embed Size (px)

Citation preview

Page 1: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

北京 珠海 成都 大连 深圳 日本 马来西亚

游戏中的自动化测试 ---- 共享资源,做我们擅长的事情

金山软件 - 西山居 - 质量中心

高级质量经理

白银祖

Page 2: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/2 北京 珠海 成都 大连 深圳 日本 马来西亚

提纲

测试开发介绍

案例展示

策划配置检查

机器管理

Dump自动分析

Page 3: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/3 北京 珠海 成都 大连 深圳 日本 马来西亚

测试开发

Software Development Engineer in Test(SDET)

开发 + 测试

C/C++、Lua、C#、Python、Java、Flex、VB

自动化:让机器代替手工

善于偷懒

测试驱动开发

更深层次上保证产品质量

Page 4: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/4 北京 珠海 成都 大连 深圳 日本 马来西亚

案例一:策划配置检查

遇到的问题

游戏的特殊性

配置项数量庞大

手工填写,难免会犯错

大量Bug并非开发人员导致

配置导致的Bug不必等产品构建后再检查

人工检查费时费力

重复操作枯燥乏味

需求

自动检查配置文件

文件修改立即执行测试

告知相关人员何处存在Bug

Page 5: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/5 北京 珠海 成都 大连 深圳 日本 马来西亚

案例一:策划配置检查

解决方案

沟通,倾听,观察,收集

实现简单框架,封装基本操作

Open、Save、Search...

基于框架,编写测试用例

Equals、NotEquals、GreaterThan、LessThan、IsTrue、IsFalse...

案例简单,容易上手

框架结构明确、调用方便

编程语言简单,学习成本低 - Lua

轻便、易用

容易部署、执行方便

检查结果一目了然

Page 6: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/6 北京 珠海 成都 大连 深圳 日本 马来西亚

策划配置检查

效果

全项目应用,编写案例400+

节省时间,3天/人 → 10分钟

人人都可以写用例

无人职守

启示

定位很重要

从无到有,从小到大

着眼于解决当前问题

易用性决定了是否易推广

己所不欲,勿施于人

Page 7: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/7 北京 珠海 成都 大连 深圳 日本 马来西亚

旧的工作模式

开发提

交测试

制定测试计划

执行

测试

定位Bug

Page 8: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/8 北京 珠海 成都 大连 深圳 日本 马来西亚

新工作模式

编写案例

自动运行

查看报告

分析结果

定位Bug

Page 9: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/9 北京 珠海 成都 大连 深圳 日本 马来西亚

案例二:机器管理

遇到的问题

用户环境多种多样

测试需要在不同操作系统上执行

新机器部署

机器申请,走管理流程,繁琐

系统安装,手工操作,耗时

机器管理混乱

大量时间耗费在前期准备上

需求

统一调配机器

环境已部署好,不用再自行安装

远程操作即可

Page 10: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/10 北京 珠海 成都 大连 深圳 日本 马来西亚

机器管理

解决方案

虚拟化技术,缩减成本

KVM、Xen、VirtualBox、VMWare...

云端部署,对使用者透明

使用服务器,模拟多台虚拟机

机房统一管理

远程桌面连接,上手容易,无学习成本

平台化

调用开放API

虚拟机统一管理

使用时申请,用完随即释放

用户、权限、调度管理

负载均衡

Page 11: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/11 北京 珠海 成都 大连 深圳 日本 马来西亚

机器管理

效果

时间成本:4+小时 → 10秒钟

机器成本:390 → 36

维护成本:3+人全天候 → 1人兼职

学习成本:0.5天 → 0

启示

创新始于偷懒

内部工具也要注重用户体验

做工具如同做产品,也需要持续跟进

Page 12: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/12 北京 珠海 成都 大连 深圳 日本 马来西亚

案例三:Dump自动分析

遇到的问题

质量保障随着产品发布而终结?

没有不存在Bug的产品

需要关注用户机器上的产品表现

产品发生崩溃如何得知?定位、并解决?

客服?论坛?问卷调查?

产品发布后的质量情况如何评估?

Dump文件分析需要专业知识

需求

崩溃的第一时间我们就能获知

用户自行上传Dump文件

后台自动分析

Page 13: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/13 北京 珠海 成都 大连 深圳 日本 马来西亚

案例三:Dump自动分析

解决方案

捕获产品异常崩溃,并提示用户

上传程序的Dump文件至云端

后台程序自动分析

提供统一的解决方案

任何产品都能接入

接入简单,不影响产品功能

平台化

分析结果自动筛选归类

数据报表展示

宕机率

Page 14: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/14 北京 珠海 成都 大连 深圳 日本 马来西亚

案例三: Dump自动分析

效果

每天处理dump文件4000+

收集时间:1+天 → 1分钟

分析时间:∞ → 10分钟不到

开发人员自觉关注

启示

质量保障并非因为产品发布而终结

质量保障并非只是测试人员的工作

让极少数人的特长变成大家共有的财富

Page 15: Top100summit 游戏中的自动化测试 - 金山 - 白银祖

www.kingsoft.com P/15 北京 珠海 成都 大连 深圳 日本 马来西亚

Q&A

只要你愿意,测试也能变得很容易~