Pytest 结合数据驱动-yaml

1.创建yaml文件:xxx.yml (key-value格式)

2.使用yaml 库safe_load方法取出yaml数据

* yaml文件需加 - 来标识为字典,不然取出时就只会取出keys

 

实例:

1.创建yml文件env.yml

-
  test: 127.0.0.1

2.创建一个判断环境的函数

import pytest
import yaml


class TestDemoData:
    @pytest.mark.parametrize("env",yaml.safe_load(open("./env.yml")))  #使用装饰器将yaml数据传给env,因为yml文件加了 - , 所以传出来的格式是字典dict
    def test_demo(self,env):
        if "test" in env:
            print("it is test environment")
            print(env)
        elif "dev" in env:
            print("it is dev environment")

3.运行打印即可看出env已被赋值yml数据

 

yaml编写规则:

 

- 代表列表

key:value 代表字典

{"P0":{"Ca_add_001":[1,1,2]}}

P0:
Ca_add_001:
- 1
- 1
- 2
posted @ 2022-05-10 11:07  lms21  阅读(127)  评论(0)    收藏  举报