上期回顾:AirtestIDE基本功能(一)
以下基于python3.7;airtest1.1.8;pocoui1.0.81;airtestIDE1.2.8
上期介绍了AirtestIDE主界面,这次我们来看看AirtestIDE的菜单和工具栏。
文件菜单-对应工具栏的前4个按钮:新建、打开、保存、另存为
新建
点击后会让你选建.air后缀的脚本还是.py后缀的脚本。这里就先都选建.air后缀的脚本,.py后缀需要熟练Python和airtest之后再用(后期会有专门文章)。
新建脚本会初始化代码帮助你从api中引入了airtest的各个接口以及自动初始化设备。
让我们打开刚才新建脚本的文件夹,可以看到实际上.air脚本文件是一个普通的文件夹,里面附带了一个同名的.py文件,AirtestIDE在执行脚本时,实际上执行的是里面的.py文件。也就是说,Airtest脚本虽然自带一个后缀名,然而本质上依然是Python脚本,遵循的是Python语法,我们可以根据实际需要自由地import其他Python第三方库。
airtest设计.air后缀的文件夹,初衷应该是方便新手傻瓜化操作,.air后缀的文件夹就相当于一个项目文件夹,里面除了有同名的.py文件外,通过IDE截取的图像和运行的日志都会放在这个文件夹。但这个.air后缀却给Pycharm中编写Python代码带来一定困扰。
值得注意的是,.air文件夹中必须要有同名的.py文件,否则在命令行执行airtest run test.air 这样的运行指令时会导致失败。
打开
打开一个已存在的.air脚本。
保存
保存当前窗口脚本。
另存为
将脚本保存到其他路径。默认脚本创建后是在AirtestIDE的安装目录下,后面如果卸载IDE或者更新IDE,都会删除安装目录下的文件。所以从一开始就养成把脚本保存在单独的工程路径下,以防丢失。
运行菜单-对应工具栏后3个按钮:运行、停止运行、打开HTML报告
运行
运行当前脚本。
停止运行
停止运行中的脚本
打开HTML报告
脚本运行完后,点击报告,会打开HTML报告。
(1)Firebase菜单
是将脚本打包成APK,在手机运行。此功能目前(2021.4.4)官方是弃养状态,不可使用。
(2)窗口菜单
AirtestIDE的主界面是由多个可dock窗口组合而成的,我们可以按照自己的开发习惯和实际需要进行灵活拖拽布局,并可以通过下拉菜单"窗口"-"恢复默认布局"将内部布局恢复为默认状态。
布局信息会在软件关闭时会自动保存,下次重新启动软件/下载新版本软件使用时,之前的布局记录会自动延续。
(3)选项-设置
Device栏
实时坐标显示:可以实时在手机屏幕画面上显示出鼠标位置的坐标(绝对坐标),方便大家获取坐标。此时点击鼠标右键 ,还可以自动将当前坐标信息复制到剪贴板中,在代码里只需要直接粘贴即可插入点击位置的坐标。
相对坐标:该选项依赖于“实时坐标显示”,勾选后,将会以(0, 0) 到 (1, 1) 为范围显示出相对坐标。使用相对坐标可以避免跨分辨率的操作点超出屏幕的问题,使坐标操作兼容性更好。
什么是相对坐标,举个例子,屏幕长宽是2000x2000,那么[1800,1800]这个绝对坐标点的相对坐标就是[1800/2000,1800/2000],即[0.9,0.9]。[1800,1800]这个点在屏幕长宽1000x1000上是不存在的,但你用相对坐标[0.9,0.9],指的是[900,900]这个点,这样,不同大小分辨率的屏幕就都可以兼容了。
Windows窗口无嵌入连接:由于部分windows应用在默认嵌入方案中可能会有无法嵌入、嵌入后无法对应用进行操作、黑屏等问题,因此我们提供了一种备用嵌入方案。
假如勾选了该选项,在嵌入windows窗口时,请使用windows的显示桌面,将桌面上的应用全部最小化,然后仅将AirtestIDE和被测应用恢复到桌面中。点击AirtestIDE的 选定窗口 按钮,使用绿色框将被测应用框选后,IDE的设备面板将消失,接下来就可以正常地进行录制操作。
手机设备显示分辨率:当已经连接好Android手机时,AirtestIDE会在Device窗口显示出手机实时同步画面。如果觉得清晰度较低,可以修改该值,数字越大,清晰度越高。默认为800,取值范围为300-2000之间。
如果还是觉得手机实时画面清晰度不够高,可以在连接手机之前,在下拉菜单中勾选 Use Javacap 模式(不勾选的情况下,默认使用Minicap连接手机),再进行连接。在Javacap模式下,能够看到清晰度更高的手机画面,但是延迟会比默认的Minicap模式要稍微高一些。
Editor栏
兼容模式:有些少部分用户由于显卡兼容性问题,可能在启动AirtestIDE时,不能看到脚本编辑窗口和log窗口中的文字,或者是启动后会闪退,但是通过双击文件夹中的兼容性模式启动.bat脚本能够正常启动AirtestIDE。
默认情况下会选择default模式,如果启动有问题的用户,可以尝试选中下拉菜单中的另外三个选项,并且重启AirtestIDE,查看接下来是否能正常显示脚本编辑窗口和log查看窗口。如果能够生效,未来启动AirtestIDE时都将会以这个配置项来启动,无需每次都手工双击兼容性模式启动.bat脚本来启动AirtestIDE了。
字体大小:可以调节编辑窗口和Log窗口内的文字大小,默认是14px。在AirtestIDE中,还可以通过按住ctrl+鼠标滚轮来实现改变文字大小。
编辑器主题:我觉得默认的主题就挺好。
自动补全:打开此选项后,可以在AirtestIDE中编辑代码时,享受到airtest和poco库的代码自动补全提示。但我的机器打开后会卡。
Airtest栏
自定义launcher文件路径:这个是airtest的高级功能:启动器(后期会有专门文章介绍)。新手不要改这个。
默认log存放路径:用于指定在AirtestIDE中运行脚本时的log目录,IDE将会把产生的log文件、截图数据默认放置在这个目录下。
点击重置按钮将会把log目录设置为系统默认的temp目录,点击清理按钮将会自动帮忙清空该目录下的文件,释放硬盘空间,请操作前确认好没有需要保留的重要log文件。
自定义Python.exe路径:不了解Python环境的话不要修改。AirtestIDE允许使用本地的python.exe来跑在AirtestIDE里写好的脚本。由于AirtestIDE内置了一个python环境,假如你希望能够使用自己的本地python环境(可以跑一些本地安装了的第三方库,可以让你使用本地的python2环境等等),可以通过设置这个选项来改变运行脚本默认使用的python.exe。
点击打开可以打开文件选择窗口,请务必选择一个本地安装的python.exe路径。点击重置将会将填写内容清空。
在mac系统下,需要设置python可执行文件路径,如果使用的是系统python,使用which python指令来获取python可执行文件所在路径(如果是python3,需要使用which python3):
>which python3
/Library/Frameworks/Python.framework/Version/3.6/bin/python3
将该路径填写到AirtestIDE的设置窗口即可,请注意填写的是bin/目录下的可执行文件,而不是python所在目录。
假如使用了虚拟环境,就需要填写虚拟环境目录下的python可执行文件路径了,例如在mac系统中可能是
/Users/username/.virtualenvs/your_env/bin/python3
注意:
-
如果希望使用本地Python环境运行脚本,需要事先在本地环境通过pip安装airtest和pocoui包。
-
AirtestIDE设置了本地的python.exe路径后,会默认使用 AirtestIDE/sample/custom_launcher.py 来启动脚本,如果使用了自己的launcher.py,请在AirtestIDE中设置自己的launcher.py的脚本路径。
Poco栏
刷新间隔:上期讲的Poco检视器,会定时去拉取手机上最新的元素树,在这里可以设定间隔时间。
Windows窗口区域位置:在嵌入了Windows游戏窗口后,如果想要使用Poco来查看界面元素,可以点该项后面的按钮来设置窗口位置,这是为了能够在Windows窗口上显示poco元素标记用的,不设置不会对脚本运行产生任何影响。
采用渲染分辨率:在一些不支持全面屏手机的app,画面不能充满整个屏幕的时候,出现黑边,poco定位发生偏移。如下图高亮与实际按钮相差一些:
勾选采用渲染分辨率,然后输入竖屏模式下的渲染分辨率,点击OK即可. 渲染分辨率为用逗号隔开的四个数字,数字分别代表竖屏模式下的 offset_x, offset_y, offset_width, offset_heigt.
比如在 1080x2220 分辨率下的大鱼来了,它在手机上会有两个黑边,上黑边高度为 100px ,画面高度为2020px ,下黑边高度为 100px ,所以它的渲染分辨率则为(0 ,100 ,1080 ,2020)
Selenium栏
可设置Chrome.exe的路径,借此运行Selenium相关功能。
注意:如果您安装了geckodriver,并在path环境变量中配置了它,并选中“使用Firefox而不是Chrome”复选框,则不需要设置Chrome路径。强烈建议您改用Chrome因为Firefox浏览器不支持录制功能。
---------------------------------------------------------------------------------
关注微信公众号即可在手机上查阅,并可接收更多测试分享~