一盐杂、目的
在接口自動(dòng)化測(cè)試使用yaml文件寫測(cè)試數(shù)據(jù)時(shí)员萍,經(jīng)常會(huì)使用到y(tǒng)aml文件中的某個(gè)值需要引用另外一個(gè)yaml文件中的值襟铭,非常頭疼贱鄙,下面就解決了這個(gè)問(wèn)題:
案例:
a.yaml
id: 1
name: wang
age: 18
b.yaml
info: 這里要引用a.yaml
sex: boy
解:
b.yaml
info: info: !include a.yaml
sex: boy
dome.yaml
需要安裝一個(gè)pyyaml-include
from yamlinclude import YamlIncludeConstructor
import yaml
def add_base_yaml(rootfile, basefile):
"""
rootfile:需要引用的文件路勁(b.yaml)
basefile:被引用文件的根目錄(a.yaml的上級(jí)文件夾目錄)
"""
YamlIncludeConstructor.add_to_loader_class(loader_class=yaml.FullLoader, base_dir=basefile)
with open(rootfile) as f:
data = yaml.load(f, Loader=yaml.FullLoader)
return data
if __name__ == '__main__':
print(add_base_yaml(r"C:\Users\虎克\Desktop\apiAutoTest\data\b.yaml",r"C:\Users\虎克\Desktop\apiAutoTest\data"))
結(jié)果如下:
![IKR8I%EQ}P_DKPSAB)WCXN.png