Airtest启动器的妙用--添加自定义的变量

简介: Airtest启动器的妙用--添加自定义的变量

前言



上周我们了解了如何利用Airtest启动器,在运行Airtest脚本时,添加自定义的命令行参数,这周我们继续来学习Airtest启动器的妙用:


在Airtest启动器中,添加自定义的变量给 .air 脚本使用!


添加自定义变量



1.在启动器中新增变量


launcher.py 的脚本中,新建1个自定义的变量 hunter


from airtest.cli.runner import AirtestCase, run_script
from airtest.cli.parser import runner_parser
class CustomAirtestCase(AirtestCase):
    def setUp(self):
        self.scope["hunter"] = "i am hunter"
if __name__ == '__main__':
    ap = runner_parser()
    args = ap.parse_args()
    run_script(args, CustomAirtestCase)
复制代码


2.在 .air 脚本中直接使用启动器的变量


在启动器定义好后续的 .air 脚本都要使用到的变量之后,我们就可以用该启动器来运行Airtest脚本。并且在 .air 脚本中,我们能够直接使用这些变量,无需重新定义:


# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
from airtest.core.api import *
auto_setup(__file__)
print("启动器定义的变量:"+hunter)
复制代码


3.在命令行中用启动器运行 .air 脚本


网络异常,图片无法展示
|


4.在AirestIDE中更换启动器运行Airtest脚本


其实在AirtestIDE中,有一个默认的启动器脚本:


网络异常,图片无法展示
|


该启动器的作用,包含但不限于 把当前运行的代码行标出颜色 等等,我们也可以将这个默认的启动器更换成我们自定义的启动器脚本:


网络异常,图片无法展示
|


这样直接在IDE点击运行脚本的按钮,就会直接使用我们自定义的启动器来运行当前的 .air 脚本:


网络异常,图片无法展示
|


添加自定义的环境变量



1.在启动器中添加环境变量


当然,除了在启动器的 setUp() 方法中,自定义变量给Airtest脚本用之外,我们还可以在启动器中以添加环境变量的方式,传变量给 .air 脚本:


from airtest.cli.runner import AirtestCase, run_script
from airtest.cli.parser import runner_parser
import os
os.environ['HOST'] = "192.168.0.1"
class CustomAirtestCase(AirtestCase):
    def setUp(self):
        self.scope["hunter"] = "i am hunter"
if __name__ == '__main__':
    ap = runner_parser()
    args = ap.parse_args()
    run_script(args, CustomAirtestCase)
复制代码


2.在Airtest脚本中使用启动器的环境变量


# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
from airtest.core.api import *
import os
auto_setup(__file__)
print("启动器定义的变量:"+hunter)
print("启动器的环境变量:"+os.environ.get('HOST'))
复制代码


3.在IDE中使用该启动器运行Airtest脚本


运行Airtest脚本之前,已将IDE的 选项--设置--自定义Launcher文件路径 设置为自定义的 launcher.py 的路径:


网络异常,图片无法展示
|


小结


今天的教程就到这里啦,关于Airtest启动器的更多妙用,欢迎同学们移步上周的推文:“Airtest启动器的妙用--添加自定义的命令行参数”

相关文章
|
6月前
vscode点击通过import引入方法名或模块名跳转其定义的文件
window点击ctrl(MAC点击command)+通过import引入的文件、方法等到,跳转到其定义的页面
420 0
|
6月前
|
Python
【python自动化】Playwright基础教程(五)事件操作②悬停&输入&清除精讲
【python自动化】Playwright基础教程(五)事件操作②悬停&输入&清除精讲
169 0
idea如何查找用法,右击函数,点击用法
idea如何查找用法,右击函数,点击用法
idea如何查找用法,右击函数,点击用法
|
3月前
|
图形学
小功能⭐️用代码设置Unity属性
小功能⭐️用代码设置Unity属性
|
4月前
|
JSON JavaScript 前端开发
TypeScript(十五)配置相关(命令行配置)
TypeScript(十五)配置相关(命令行配置)
51 4
|
测试技术 数据库 Python
python接口自动化(二十二)--unittest执行顺序隐藏的坑(详解)
大多数的初学者在使用 unittest 框架时候,不清楚用例的执行顺序到底是怎样的。对测试类里面的类和方法分不清楚,不知道什么时候执行,什么时候不执行。虽然或许通过代码实现了,也是稀里糊涂的一知半解,这样还好,好歹自己鼓 捣出了,但是时间和效率并不是很高,下次遇到还是老样子。那么本篇通过最简单案例来给给为小伙伴详细讲解、演示一下 unittest 执行顺序。
254 0
python接口自动化(二十二)--unittest执行顺序隐藏的坑(详解)
|
测试技术 Python
Airtest启动器的妙用--添加自定义的命令行参数
Airtest启动器的妙用--添加自定义的命令行参数
323 0
【GO】使用GoLand编辑器开发写的代码自动对齐
【GO】使用GoLand编辑器开发写的代码自动对齐
491 0
【GO】使用GoLand编辑器开发写的代码自动对齐
|
测试技术
FastAPI 学习之路(二十五)路径操作装饰器依赖项
FastAPI 学习之路(二十五)路径操作装饰器依赖项
FastAPI 学习之路(二十五)路径操作装饰器依赖项
|
Android开发 Java 开发工具
如何在eclipse中快速debug到想要的参数条件场景下
前言 俗话说,工欲善其事必先利其器。 对于我们经常使用的开发工具多一些了解,这也是对我们自己工作效率的一种提升。 场景 作为开发,我们经常会遇到各种bug,大部分的bug很明确,我们直接可以打断点定位到。
1354 0