(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210248943.0 (22)申请日 2022.03.14 (71)申请人 网易 (杭州) 网络有限公司 地址 310052 浙江省杭州市滨江区网商路 599号网易大厦 (72)发明人 李宫  (74)专利代理 机构 北京律智知识产权代理有限 公司 11438 专利代理师 王辉 (51)Int.Cl. G06F 11/36(2006.01) G06F 9/455(2006.01) G06F 9/445(2018.01) G06F 9/52(2006.01) G06F 9/54(2006.01)G06F 8/53(2018.01) (54)发明名称 游戏测试方法及 装置、 计算机存储介质和电 子设备 (57)摘要 本公开涉及计算机技术领域, 涉及一种游戏 测试方法及装置、 存储介质和电子设备。 所述方 法包括: 在 游戏进程的pyt hon虚拟机中注入预设 代码, 所述预设代码用于获取所述pyt hon虚拟机 中的目标函数地址以及建立所述游戏进程与控 制端的数据传输连接, 其中所述目标函数地址为 所述python虚拟机中运行python脚本 的目标函 数对应的函数地址; 通过所述数据传输连接接收 所述控制端发送的测试pyt hon数据, 并基于所述 目标函数地址在所述python虚拟机中执行所述 测试python数据。 本公开将测试脚本与游 戏代码 分离, 通过将测试脚本注入至游戏进程中的 python虚拟机, 提高pyt hon脚本开发游戏的测试 或二次开发效率。 权利要求书2页 说明书13页 附图6页 CN 114610624 A 2022.06.10 CN 114610624 A 1.一种游戏测试 方法, 其特 征在于, 包括: 在游戏进程的python虚拟机中注入预设代码, 所述预设代码用于获取所述python虚拟 机中的目标函数地址以及建立所述游戏进程与控制端的数据传输连接, 其中所述目标函数 地址为所述pytho n虚拟机中运行pytho n脚本的目标函数对应的函数地址; 通过所述数据传输连接接收所述控制端发送的测试p ython数据, 并基于所述目标函数 地址在所述pytho n虚拟机中执 行所述测试pytho n数据。 2.根据权利要求1所述的方法, 其特征在于, 所述建立所述游戏进程与控制端的数据传 输连接, 包括: 将所述控制端的端口信息写入至python文件, 并将所述python文件发送至所述游戏进 程所在终端; 通过所述预设代码运行 所述pytho n文件, 以在所述游戏进程中建立任务 监听线程; 所述游戏进程 通过所述任务 监听线程与所述控制端建立数据传输连接 。 3.根据权利 要求1所述的方法, 其特征在于, 所述在游戏进程的python虚拟机中注入预 设代码, 包括: 保存当前寄存器环境; 调用内存映射函数mmap分配内存管理空间, 向所述内存管理空间注入所述预设代码, 并在所述内存管理 空间写入所述预设代码的代码标识和所述预设代码对应的调用函数; 对所述预设代码进行远程调用, 并恢复所述当前寄存器环境。 4.根据权利要求3所述的方法, 其特征在于, 在所述对所述预设代码进行远程调用, 并 恢复所述当前寄存器环境之前, 所述方法还 包括: 调用用于辅助获取所述目标函数地址的注入文件, 且传入参数为所述预设代码的so文 件。 5.根据权利 要求1所述的方法, 其特征在于, 通过所述预设代码获取所述p ython虚拟机 的目标函数地址, 包括: 获取动态 链接库的基址; 获取目标函数对应的函数偏移地址; 将所述动态 链接库的基址与函数偏移地址相加, 得到所述目标函数地址 。 6.根据权利要求5所述的方法, 其特 征在于, 所述获取目标函数的函数偏移地址, 包括: 对所述游戏进程的pytho n虚拟机的二进制文件进行代码反汇编, 得到反汇编代码; 比对所述反汇编代码和所述python虚拟机的源代码, 并根据比对结果确定所述目标函 数的函数偏移 地址, 所述python虚拟 机的二进制文件为所述python虚拟 机的源代码的编译 文件。 7.根据权利要求2所述的方法, 其特征在于, 所述游戏进程通过所述任务监 听线程与 所 述控制端建立socket连接; 所述游戏进程与控制端 进行数据传输, 还 包括: 通过所述任务监听线程将所述python虚拟机执行所述测试python数据的运行结果重 定向至所述socket连接, 以通过 所述socket连接返回至所述控制端。 8.根据权利 要求2所述的方法, 其特征在于, 所述方法采用python进程锁机制在所述游 戏进程中建立所述任务监听线程, 并基于所述任务监听线程 实现对所述python虚拟中内存权 利 要 求 书 1/2 页 2 CN 114610624 A 2数据的访问。 9.一种游戏测试装置, 其特 征在于, 所述游戏测试装置包括: 代码注入模块, 用于在游戏进程的python虚拟机中注入预设代码, 所述预设代码用于 获取所述python虚拟机中的目标函数地址以及建立所述游戏进程与控制端的数据传输连 接, 其中所述目标函数地址为所述python虚拟 机中运行python脚本的目标函数对应的函数 地址; 指令运行模块, 用于通过所述数据传输连接接收所述控制端发送的测试python数据, 并基于所述目标函数地址在所述pytho n虚拟机中执 行所述测试pytho n数据。 10.一种存储介质, 其上存储有计算机程序, 所述计算机程序被处理器执行时实现根据 权利要求1至8中任一项所述的游戏测试 方法。 11.一种电子设备, 其特 征在于, 包括: 处理器; 以及 存储器, 用于存 储所述处 理器的可 执行指令; 其中, 所述处理器配置为经由执行所述可执行指令来执行权利要求8中任一项所述的 游戏测试 方法。权 利 要 求 书 2/2 页 3 CN 114610624 A 3

.PDF文档 专利 游戏测试方法及装置、计算机存储介质和电子设备

文档预览
中文文档 22 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共22页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 游戏测试方法及装置、计算机存储介质和电子设备 第 1 页 专利 游戏测试方法及装置、计算机存储介质和电子设备 第 2 页 专利 游戏测试方法及装置、计算机存储介质和电子设备 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 00:06:35上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。