## Get Started with test ailab ### 简介 众所周知,公司自主开发的AI平台目前还存在诸多bug,为了减轻晏姐的工作量,立哥让我开发一个自动化测试脚本,可以自动测试AI平台是否可以正常运行。于是我开发了此项目,可以检测线上或是线下的AI平台是否可以跑通案例,主要是通过requests库进行检测。 ### 快速开始 #### 项目结构 ```shell ├── Dockerfile ├── README.md ├── datax.py ├── environment.yml ├── krb5.conf ├── main.py ├── user.keytab └── utils.py ``` #### 流程 ```shell # 构建镜像 docker build -t test_agent:v1 . # 启动容器 docker run -it test_agent:v1 zsh # 另起一个终端,开启VPN ssh sxwl1070@192.168.199.107 # 密码:sx sudo openvpn --config ./openvpn-client.ovpn # 用户名 liangzhongquan # 密码 Hello123! # 返回容器,运行代码 python datax.py # 输入所选的平台(AI平台) online / offline # jupyter平台 python main.py ``` ### 函数介绍 #### AI平台 ```python class Agent(object): def __init__(self) def test_test(self, name) def test_add_datasource(self, name) def test_add_job_sql2sql(self, name) def test_add_job_sql2hive(self, name) def test_add_job_hive2sql(self, name) def test_add_job_hive2hive(self, name) def test(self, json_data) if __name__ == "__main__": agent = Agent() agent.test_add_job_sql2sql("liyuqi_test") ``` `___init__`:请求输入,从而判断将在哪个平台上运行,输入目前仅支持`online`和`offline`,即线上和线下,通过用户的输入进行配置文件的加载 `test_test`:测试连接,判断当前数据源是否可以添加 `test_add_datasource`:测试AI平台的数据源添加功能是否异常 `test`:集成了一些测试流程,先后`添加任务`,`启动任务`,`执行任务` `test_add_job_sql2sql`:数据迁移模式为从mysql数据源到mysql数据源 `test_add_job_sql2hive`:从mysql到hive `test_add_job_hive2sql`:从hive到mysql `test_add_hive2hive`:从hive到hive 用户可以根据自身需要在`__main__`方法中添加相应的指令,从而对AI平台进行测试。 #### jupyter平台 ```python class AI(object): def __init__(self) def generate_uuid(self) def test_start(self) def test_log(self) def test_status(self) def test_result(self, index) def test(self) if __name__ == "__main__": s = AI() s.test() ``` `__init__`:加载url,生成dag_id `generate_uuid`:生成UUID `test_start`:执行任务 `test_log`:查看节点的日志 `test_status`:查看节点状态 `test_result`:查看程序运行的结果 `test`:测试流程汇总