Airtest 网易游戏新开源的 UI 自动化测试项目 [Airtest Project]

Meteorix · March 12, 2018 · Last by zhouy773858927 replied at August 02, 2019 · Last modified by admin 恒温 · 23386 hits

大家好,我们是网易游戏内部工具团队,最近我们开源了一个UI自动化测试项目Airtest Project

本项目即将在今年的GDC与Google合作发布,现在处于公开测试阶段,欢迎大家试用&与我们交流。

演示GIF

AirtestIDE 是一个跨平台的UI自动化测试编辑器,适用于游戏和App。

  • 自动化脚本录制、一键回放、报告查看,轻而易举实现自动化测试流程

  • 支持基于图像识别的Airtest框架,适用于所有Android和Windows游戏

  • 支持基于UI控件搜索的Poco框架,适用于Unity3d,Cocos2d与Android App

  • 访问官网通过视频查看更多特性

在网易游戏内部,这个项目被应用在梦幻西游、大话西游、阴阳师、荒野行动等数十个游戏的自动化测试中。在游戏放出前,我们通常会在数百台安卓手机上测试游戏的兼容性,Demo点这里

官网:http://airtest.netease.com/
GitHub:https://github.com/AirtestProject
教程:http://airtest.netease.com/tutorial/Tutorial.html
QQ讨论群:437119175

共收到 66 条回复 时间 点赞

厉害了0.0

👍 👍 👍 坊间流传:网易出品,必属精品.

我现在是网易产品重度使用用户,网易云邮箱 网易有道 网易云音乐 简书 ...... 都没让我失望过.
这个和社区内的ATX项目有很大渊源,没发布前,我已经关注简单使用过了,还是很靠谱的.

棒棒的,最近自己在研究使用opencv图像识别尝试做游戏的自动化,没想到一下子就有个学习的开源项目,墙裂资瓷

哇。厉害了。学习一下

小马 回复

网易游戏策划。。。基本都是2货

自顶一波

afantishui 回复

👍 👍 有兴趣可以贡献代码~

顶一下

Meteorix #11 · March 12, 2018 作者
codeskyblue 回复

你这顶的太随便了吧😝

Hiboy · #12 · March 12, 2018
Author only

自动化的门槛,又一次被踢倒

楼主,请问下,IDE是不是没有代码自动补全啊,像我引入start_app这些函数 都不能自动补全呢

战 神 回复

目前代码补全的功能比较弱,后面会继续完善哒~

厉害了

—— 来自TesterHome官方 安卓客户端

zhangqi 回复

http://airtest.netease.com/tutorial/Tutorial.html 这个页面还有一些问题,点击 “添加PYTHONPATH” 与“引入第三方Python库” 跳转都是当前页面 ,麻烦注意到的话给个正确链接哈

战 神 回复

😅 恩恩,文档还在进一步完善中,这两个相关问题的帮助文档还没有更新出来,所以暂时没有链接哈,我们会尽快更新

可不可以再封装些循环查找目标(限制一个超时时间)的底层函数,用户也可以自己写啦,就是有点麻烦

后续可以扩展这些到utils里

厉害,点赞😃

牛p

哇塞,用python做的,好喜欢

支持 Android H5 测试么?

前面的操作, 跟sikuli有点像

Author only
Meteorix #28 · March 14, 2018 作者
debugtalk 回复

Hi 可以啊,你先进qq群单m我吧,这里好像没有私信系统?

这名字很有逼格

Meteorix #30 · March 14, 2018 作者

有了呀wait()函数,看这里

Meteorix #31 · March 14, 2018 作者
wangbooth 回复

专业👍 sikuli是我最早接触的一款自动化工具,当时很受启发

Meteorix #32 · March 14, 2018 作者
11111111 回复

目前用图像识别是可以的,用控件识别等后面扩展~

厉害了大网易,还是用python写的,好期待iOS的支持

麻烦问一下,有关于系统弹窗检查的相关功能么?谢谢

sjh 回复

你问的这个一看就搞过专业的自动化的!我们有相关的实践,不过目前还没有开源。你可以用poco试试看

adolli 回复

好的,谢谢

支持

39Floor has been deleted
adolli 回复

漏了一个
【pywinauto】https://github.com/pywinauto/pywinauto

41Floor has been deleted
Meteorix #42 · March 15, 2018 作者

😮 头像不错~

持续集成看这里,命令行接口

小马 回复

pywinauto是底层依赖的,不准备放到公开API里使用

Meteorix 回复

我以前用 OpenCV + adb 模仿 sikuli 做 Android 上的 UI 自动化测试😂

Author only

如果字母和数字同是输入,键盘无法输入。应该是键盘的问题

Meteorix #47 · March 16, 2018 作者
王多余 回复

感谢夸奖~
text的问题我们会验证一下,方便的话可以上github提个issue

Meteorix #48 · March 16, 2018 作者
wangbooth 回复

都是这样开始的😂

我想知道拿网易的Airtest写脚本玩游戏会不会被封号😅

Meteorix #50 · March 16, 2018 作者
张全蛋 回复

😆

小马 网易 UI 自动化工具 Airtest 浅用记录 中提及了此贴 19 Mar 09:42

我去给你到游戏那边宣传下。。放心

zhangqi atx 现在支持 cocos 的 ui 自动化吗? 中提及了此贴 19 Mar 15:23

这需要弄的尝试下的

楼主厉害啊,感觉基本上算一个标杆工具了。
打算研究一下源码以后毕设和秋招都能谈笑风生了!😂

我用的华为P10手机,手机连接上,开始录制,鼠标点击右边的屏幕的任何应用,手机没有反应,但是如果操作手机,airtest的屏幕会跟着变化,为何?

Author only
Meteorix #58 · March 26, 2018 作者
郑沐 回复

Hi,目前是可以跨分辨率的,采用的是sift算法和缩放后的模板匹配,可以参考这里的代码。跨分辨率的识别,你可以换不同的截图范围试试效果。

弱弱地问一下,是如何识别游戏里的各种控件的?

Meteorix 回复

哇,了解,谢谢

好用

如果进行获取页面数据和数据库进行比较

很像sikuli呀

小马 回复

简书,,,有点逗了啊

呀,发现个新东西,之前研究过ATX。感谢大网易!

怪盗魔理沙 Airtest 已经支持 iOS 真机测试! 中提及了此贴 04 May 17:18
祝啸风 AirtestIDE 支持 Web 测试! 中提及了此贴 11 May 17:05
68Floor has been deleted

666

在登录页面,输入用户名操作,一直提示错误,请问是什么原因???
Traceback (most recent call last):
File "poco\proxy.py", line 26, in wrapped
File "poco\proxy.py", line 631, in wait_for_appearance
poco.exceptions.PocoTargetTimeout: Waiting timeout for appearance of "UIObjectProxy of

这个真的牛逼。。。

qq群已经满员了,大佬有没有考虑建个分群

有关于输入框安全键盘弹出会被Yosemite限制,请问有什么办法解决嘛? @Meteorix

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up