• 准备环境

先准备一台安卓手机,电脑上配置好Python环境。
根据 ATX官方主页上的说明,把环境配置好。 https://github.com/NetEaseGame/AutomatorX

需要用到的apk文件直接从阴阳师的官方首页上下载 http://yys.163.com/
打开控制台,接下来我们需要分析安装包的包名以及activity名。

$python-matxapkparseonmyoji_netease_1.0.7.apk
{
  "main_activity":"com.netease.onmyoji.Launcher",
  "package_name":"com.netease.onmyoji"
}

接下来有请我们要介绍下有ATX团队最新开发的,web-ide编辑器,有了它,脚本写起来快的可以飞起来。
安装方法参考 https://github.com/openatx/atx-webide

装完之后,cd到工作目录。
使用命令 python -matxweb 启动之后,浏览器会自动打开,进入到编辑器界面。如下图所示。

根据图片中的提示选择设备,切换到Coding标签。网页版IDE编辑的文件,以及截得图片,最终都会保存在命令行启动所在的目录下。

  • 热身

接下来就可以开始写我们的第一行代码了。

importatxd=atx.connect()
print'starttime:',d.start_app('com.netease.onmyoji','com.netease.onmyoji.Launcher')

代码的作用,就是启动阴阳师这个应用,顺便统计出,启动的用时

在Screen区域拖动选中要截取的图片。比如

截到的图片会保存到本地。

继续添加代码,来用脚本跳过游戏的自动更新。

d.click_image(u"确定.1920x1080.png",timeout=8,safe=True)

timeout代表最多等待8s,safe=True表示,即使图片没有找到也不报错

  • 登录游戏

自动登录这部分大部分都是UI操作,需要用到uiautomatorview这个工具。在platform-tools这个目录下可以找到,更多的介绍可以看这篇文章:如何测试网易云音乐(Android 篇),这里不做详细说明了。

下面直接贴出完整的进入游戏的代码

d(text='快速游戏').sibling(className='android.widget.ImageView').click()
d(text='快速游戏').click()
d.click_image(u"进入游戏.1920x1080.png")#这个需要截图了
d(textMatches='接\s*受').click()#因为“接受”之间可能会有空格影响

接下来需要输入角色名了,为了方便生成昵称,我们把这段代码加上去。

importrandom,time,string
random.seed(time.time())defid_generator(size=8,chars=string.ascii_uppercase+string.digits):
  return''.join(random.choice(chars)for_inrange(size))

接下来,通过这几行代码完成角色的创建。

d.click_image(u"random2.1920x1080.png",offset=(1.2,0))
d.clear_text()
d(text='确定').click()
d.click_image(u"创建角色.1920x1080.png")

代码中用到了offset,代码具体的实现的流程是,先找到图片的位置,然后向右偏移1.2倍的图片长度。

最后点击进入游戏

d.click_image(u'进入游戏.1920x1080.png')

先写到这里了,后面会继续补充。

AutomatorX自动化测试工具介绍(Android篇)相关推荐

  1. Android手机自动化测试工具介绍

    1. Monkey Runner 1.1 什么是Monkey Runner? Monkey Runner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和 ...

  2. 常用的前端自动化测试工具介绍 —— Karma

    在开发的过程中,除了代码本身,测试也是重要的一环.大体来说,测试分为以下几种类型: 单元测试 功能测试 性能测试 安全测试 对于普通开发者而言,单元测试和功能测试是最常见的两种测试方式,本系列文章要介 ...

  3. 【1个月快速学习自动化测试】接口自动化测试(4) —— 接口自动化测试工具介绍

    接口测试的全称是应用程序编程接口(API)测试,从原理上来说,接口测试是模拟客户端向服务器端发送请求,然后检查能否获得正确的返回信息.接口测试用于测试RESTful API.SOAP Web服务,这些 ...

  4. android studio开发工具介绍,Android应用开发之Android开发工具介绍、Android Studio配置...

    本文将带你了解Android应用开发之Android开发工具介绍.Android Studio配置,希望本文对大家学Android有所帮助. 2.1   Android Studio配置 2.1.1 ...

  5. Katalon Studio 自动化测试工具介绍

    前言 在软件测试这条道路上,大部分的职业技能发展道路都会是功能测试-> 自动化测试-> 性能测试-> 安全测试/测试开发. 但是却有着一部分人起初进入软件测试这一行看重的就是软件测试 ...

  6. autorunner测试java代码,AutoRunner自动化测试工具介绍

    AutoRunner简介 AutoRunner是黑盒测试工具,可以用来完成功能测试.回归测试.每日构建测试与自动回归测试等工作.是具有脚本语言的.提供针对脚本完善的跟踪和调试功能的.支持IE测试和Wi ...

  7. 2018世界排名前5的自动化测试工具介绍

    这个排名数据是由世界顶级的一些咨询公司Capgemini, Sogeti, and Micro Focus在2017-2018世界质量报告中给出的. 原文地址:https://dzone.com/ar ...

  8. android ui自动化测试工具,介绍Robotium+Orange实现androidUI自动化测试

    4.如何运行测试程序 orange框架会生成一个jar包,当你配置好这些选项后,并且拿到了orange.jar后,直接运行命令 java -jar Orange.jar D: \\config.pro ...

  9. Airtest自动化测试工具介绍

    官方网站:http://airtest.netease.com/ Airtest IDE: 跨平台的UI自动化测试编辑器,适用于游戏和App,详细参见官网文档:http://airtest.netea ...

最新文章

  1. js如何使浏览器允许脚本异步加载
  2. Slog64_项目上线之ArthurSlog个人网站上线3
  3. java 泛型类使用,集合中添加不同类型数据
  4. springboot整合redisson实现多种分布式锁
  5. redis 基础知识
  6. rabbitmq官方文档
  7. VB图像识别、语音识别源代码+注释
  8. flash cs6 初试
  9. PS人像磨皮——高低频修图法
  10. HIVE一些字符处理
  11. 如何预防网站被篡改,劫持
  12. 如何细分目标客户群体,让邮件营销效果最大化
  13. 统一监控报警平台架构设计思路
  14. 打印机连接计算机用什么端口,如何设置打印机端口,打印机端口设置的方法步骤...
  15. spine 局部换装
  16. 算法基础14 —— 图论入门之弗洛伊德算法(Floyed + Dijkstra + Bellman-Ford + SPFA)
  17. 多个渠道成功销售的秘诀速递
  18. 使用ansys workbench 的LSDYNA模块研究碰撞的接触设置
  19. 物联网---网络通信协议
  20. Google map地图限制显示区域、拖拽范围

热门文章

  1. 护照关键信息识别与提取
  2. 实验一 linux常用命令
  3. ES6语法-遍历-reduct-展开语法-解构语法
  4. 你也遇到JSONException:create instance error, null...问题啦?
  5. js实现拼图游戏(数字版本与图片版本)
  6. (转)JAVA 十六个常用工具类
  7. sql server 不允许保存更改,您所做的更改要求删除并重新创建以下表 的解决办法
  8. 暑期参加CSDN编程竞赛的些许心得体会
  9. 本周c++学习小结和心得
  10. More Effective C++读书笔记