Airtest之web自动化——在本地环境运行airtest脚本

Posted 风车车与车车风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Airtest之web自动化——在本地环境运行airtest脚本相关的知识,希望对你有一定的参考价值。

airtest——web自动化(二)

二、在pythonIDE中配置airtest环境

在python本地环境中运行airtest脚本我们需要用到3个第三方包:airtest(开源),poco(开源),airtest_selenium(未开源),airtest与poco作为python的第三包是可以直接下载安装的,可以通过pip install airtest与 pip install pocoui 命令下载安装,也可以通过pycharm工具导入这两个包。

第一步:(A、B展示了不同安装方法,选择一种执行即可)

A、pip下载安装Airtest与poco(下载poco同理)

技术图片

B、pycharm下载安装airtest与poco(安装poco同理)

技术图片

搜索airtest

技术图片

需要重复N次下可以成功,需要耐心与时间,在进行下载安装的时候可以干点其他的事情哦。安装过程中可能会遇到很多依赖的第三方包下载不成功的情况,这时候就需要去自己去动手解决一下。当然为了大家节约时间,提高效率,我会提供一套配置好的环境,供大家直接使用。

第二步:

安装airtest_selenium

由于airtest_selenium并没有开源,所以我们不能直接下载安装,需要从airtestIDE中拷贝到我们自自己的环境中,等以后开源了应该可以直接安装下载,虽然现在在pycharm中可以搜索到airtest_selenium这个包,但是下载不下来。

首先:在airtestIDE的安装目录下找到airtest_selenium

在安装目录下,我们可以看到许多熟悉的面孔,airtest,poco,selenium等,于是就会有小伙伴想,我是不是不用那么麻烦的去下载安装它们,而是和airtest_selenium一样直接拷贝过去呢?这个大家可以自己试一试哈...

技术图片

然后:将airtest_selenium包拷贝到自己的开发环境:

这里推荐使用pycharm,因为pycharm每新建一个项目都会为其新建一个虚拟环境,这样就可以保证python源环境的纯净。

技术图片

若是选择直接使用python的源环境,则需要将其拷贝至python安装目录下的lib下:

技术图片

到这里,环境配置就完成了。

二、在pythonIDE中运行airtest脚本:

配置好了环境,那我们录制的脚本可以直接在我们自己的python环境中运行了。当然我们也可以选择将其中比较好用的方法进行封装,供我我们自己脚本开发使用。具体怎么使用,还是需要看项目的自动化需求如何。

1、直接在python环境中运行airtest脚本:

将airtest录制好的脚本放到自己的python项目中运行(可以录好了拷贝过去,也可以让python项目的路径与airtest项目的路径保持一致)

脚本可以在pycharm中直接运行:

技术图片

搭配这种模式来解决脚本批量运行的方法可以通过写airtest启动器的方式来实现,具体怎么实现的小伙伴们可以自己查找一下资料,是需要解读airtest源码的。这里我也提供一套简单的现成的启动器脚本(github上找的一套:https://github.com/dreamhighqiu/airtest_project/),有兴趣的小伙伴可以自行研究: 技术图片

2、以airteIDE作为辅助工具结合selenium实现自动化:

第一种方法比较适合轻量级的,小范围覆盖的自动化需求。它不满足PO设计模式,也不是比较容易维护的。我比较推崇第二种用法。

实际的自动化项目过程中,当语言,工具,框架选择好之后,难点便出现在了脚本的编写过程中,而脚本编写过程中往往是复杂的元素定位,iframe一层一层的嵌套等问题影响这我们的效率。而airtestIDE刚好能够在这两方面给我们给予便捷。智能快速的定位页面元素,遇到需要iframe频繁切换的地方我们可以考虑用基于图片识别的点击时间。当我们需要切换窗口时也不需要通过获取句柄的方式来自行封装方法了。所以airtest可以作为UI自动化项目的建设的辅助工具。

现在自动化技术越来越成熟,导致我们很多人盲目的追求自动化。这其实是不可取的,进行任何自动化建设都是有成本的,UI自动的化的成本更高。只有在恰当的时机选用正确的技术与工具,自动化才能体现出价值。

 

 

以上是关于Airtest之web自动化——在本地环境运行airtest脚本的主要内容,如果未能解决你的问题,请参考以下文章

airtest自动化测试MAC本地python运行airtest模块报没有权限

airtest启用本地python环境的方法

自动化测试工具airtest之上传文件或图片(web自动化上传图片)

IOS自动化测试之AirTest

airtest之脚本批量运行

Airtest+python+selenium 一套轻量级web自动化测试框架