想讨论下,除了功能测试以外,我们还有哪些发展方向?
1、专项测试 2、白盒测试 3、自动化测试 4、测试开发
以上是我能想到的具体的方向,以上非完全独立,有以下几个问题:
1、需要什么知识支撑? 2、能解决什么样的问题?
专项分类(前端性能,后端性能,数据库) 1.前端性能:监听为主,但监听数据需要在过程中插入具体场景,现在一般流行和自动化配合。 2.数据库:通过协议接口和压测对某个数据库读写要求频繁的接口和实时写入非缓存业务设计后进行测试,减少数据库慢查询。 3.接口项:可异步或者同步,填充结构体差异和顺序问题的协议安全(无效等价类),验证具体数据有效等价类,协议接口功能测试。 4.压测:异步 验证后端性能 5.工具:只有你想不到,随着测试部门发展,大小工具会占比最大,这个回头会专门开个帖子。 6.基础建设&持续集成 7.安全:部分业务和协议安全类似,只是协议安全注重结构体和顺序上做文章,这个关注数据包。还包含了支付安全,验证混淆,apk 安全等。 8.用户体验。 9.带 IP 的 IPQA。 游戏测试分为项目组测试 和测试开发。 测试开发分为 3 种模式,独立开发框架/工具,和开发配合开发,使用开发出来框架和工具。 项目组 QA 怎么和测试开发或者开发打配合这个看公司。
需要知识支撑: 网络层知识:做后端测试的需要理解网络知识,TCP,UDP,HTTP 族,WEBSOCKET,KCP 原理,知道窗口滑动,知道如何确保包不丢失。 图形学知识:像素填充率,GPU 和 CPU 运行关系,drawcall,fps 计算公式,不同引擎层面的计算模型,unity 不同 UI 插件优劣。 开发能力和读代码能力。短期是 1-2 门读写语言,发展到 5 年以上,建议要 6 门语言,不同语言分别不同作用。如果人多点 可以大家分下语言专精。 短期 1-2 门,一门是 python,一门是公司最主要的后端和前端的胶水语言 比如 lua. 长期 6 门 动态语言:python lua 一门前端语言,静态语言平台用的 java,3D 公司的 c# unity,C++
能解决什么问题: 理论一点点来,团队成长后,来说你想解决的问题都可以解决。 细到 验证某个接口效率,屏蔽字有没有效果,配置文件是否生效,某个文件是否可以乱码,是否代码混淆了,是否关闭了某个包 GM 开关。 中到 验证所有副本掉落正常,自动补发奖励,快速过新手引导,阵容平衡性,工会战前端性能,场景内特效例子数在 10 秒后浓度,验证是否销毁。 大到 平台到自建工具到游戏性能开销,服务器执行覆盖率检测,一个游戏接口加自动化覆盖 40% 等等,没有客户端渲染的类似脱机微端带 1:1 真实流量的打压功能。 绑定 jenkins 可以走定时策略和上下文执行顺序。
首先感谢大佬写了这么多 ,目前我都是自己摸索,所以异常艰难,想系统的学习关于白盒测试、自动化测试、测试开发等等内容。
想继续跟大佬请教下,我目前有 2 个困惑: 1、我想对游戏有系统性的认知,这个主要是说程序技术向的,举例说明:协议通信、数据库这些知识,有什么好的学习途径么(比如看书,具体是那些书,如果是看网课,具体是什么网课,自己看了一些,想少走一点弯路)?目前我自己在看廖雪峰 mysql,还买了本图解 TCP/IP。
2、我是想做持续集成,所以我首先做了自动化测试(主要针对冒烟,过程艰难啊),目前是用 python+airtest,不知道大佬有没有成熟的,实践过比较好的框架等?