测试十四、在 AirtestIDE运行.air脚本和.py脚本的区别
本文最后更新于:2024年11月13日 下午
十四、在 AirtestIDE运行.air脚本和.py脚本的区别¶
1)运行命令的区别¶
首先我们对比下运行 .air
脚本和 .py
脚本的命令有什么不同:
1 |
|
可以看到,在IDE运行 .air 脚本,会自动帮我们传入设备窗口连接的设备信息,并且在默认的log存放路径下保存运行的log内容;
但运行 .py 脚本就只是单纯地运行了1个 .py 文件,并未帮我们在命令中传入任何设备信息或者保存log的信息。
这就意味着,在IDE中运行 .py 脚本,连接设备和保存log的工作要我们自行在 .py 脚本中处理。
2)初始化脚本的区别¶
这也就意味着,.air 和 .py 的初始化脚本是不一样的。.air 脚本的初始化语句仅使用下述脚本即可:
1 |
|
即使 auto_setup
接口里面不传入任何参数,IDE也会在运行脚本时自动帮我们用命令连接设备并且保存log
内容。无需我们额外处理,非常简单省事。
但 .py 的初始化脚本却不同:
1 |
|
这段初始化代码的意思是说,当使用 python xxx.py
来运行本文件,不带任何命令行参数时,则自动使用 auto_setup
这个接口来对airtest相关的参数进行初始化。这里的 auto_setup 接口里面,设置了 logdir=True
,即在当前脚本目录下保存log内容,方便后续生成airtest报告;devices 传入了1个设备列表,里面包含1台端口号为7555
的mumu模拟器
,即表示当前脚本会在这台设备上面运行。
在脚本里面处理好了期望的参数,我们就能直接用 python xx.py 指令来运行脚本。而原先的 airtest run xx.air --devices xx
也不受影响,只要脚本检测到传入了命令行参数,就依然优先使用命令行参数来初始化airtest。
注意
所以我们非常建议新手同学使用 .air 脚本而不是 .py 脚本,当然,如果同学们已经非常熟悉俩者的区别,可以轻松地在 .py脚本中添加必要的参数,也可以使用 .py 脚本来编写我们的自动化脚本。
- 运行脚本的注意事项¶
- 请勿随意删除初始化脚本¶
在IDE新建 .air 或者 .py 脚本时,都会自动帮我们插入一些初始化代码,请同学们务必不要轻易删除这些初始化代码,以免影响脚本的正常运行。
- 注意区分正式运行和只运行选中代码¶
点击 运行按钮 运行脚本,与 只运行选中代码 的差别是很大的,点击 运行按钮 运行脚本,IDE可以帮助我们保存log内容,方便后续生成airtest报告;但 只运行选中代码 就只是简单的调试了一下脚本,IDE并不会帮助我们保存log内容,也就不能直接生成airtest报告了。
- 设置本地Python环境运行脚本无高亮显示¶
上文中我们也有提到,使用IDE自带的python环境在运行脚本过程中,IDE的脚本编辑窗口会用高亮显示当前运行到了哪一条脚本;但如果在IDE中设置了本地python环境来运行脚本,将不会高亮显示当前运行到了哪一句脚本。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!