yaml 是一種可讀性非常高,與程式語言資料結構非常接近。同時具備豐富的表達能力和可擴充套件性,並且易於使用的資料標記語言。
yaml是 "yaml ain't a markup language"(yaml不是一種標記語言)的遞迴縮寫。
這麼命名的方式,表示 yaml 強調的不是標記,而是資料本身。
2.陣列: 一組按次序排列的值,又稱序列 (sequence) / 列表 (list)
3.純量 (scalars) :單個的,不可再分的值,
1、物件資料格式
yaml格式:
name: xiaoming
讀取出來的格式:
2、陣列資料格式(在前面新增 『-』 讀出來就是陣列格式)
yaml格式:
- list1
- list2
- list3
讀取出來的格式:['list1', 'list2', 'list3']
3、純量資料格式
yaml格式:
number: 18.5
string: hello
bool: true
nothing: ~
date: 2020-04-21
time: 2020-04-21 13:14:21
讀取出來的格式:
1、安裝yaml庫pip install pyyaml
2、匯入yaml庫import yaml
3、讀取資料with open(file="conf.yaml", encoding='utf8') as f:
data = yaml.load(f, yaml.fullloader)
【注】:yamlloadwarning: calling yaml.load() without loader=... is deprecated, as the default loader is unsafe. please read for full details.
data = yaml.load(f)
為了去除這個警告,我們可以在yaml.load( )加乙個引數 yaml.fullloader 即可
4、寫入資料(mode引數:w,覆蓋寫入, a,追加寫入)
new_data =
with open(file="conf.yaml", mode='w', encoding="utf-8") as f:
yaml.dump(new_data, f)
yaml測試用例示例register:
- case_id: 1
title: 註冊用例1
method: post
url: /register
data:
account: '123456789'
pwd: '12345678'
expect:
code: 0
msg: ok
- case_id: 2
title: 註冊用例2
method: post
url: /register
data:
account: '123456788'
pwd: '12345678'
type: 1
expect:
code: 0
msg: ok
login:
- case_id: 1
title: 登陸用例1
method: post
url: /login
data:
account: '123456789'
pwd: '12345678'
expect:
code: 0
msg: ok
- case_id: 2
title: 登陸用例2
method: post
url: /login
data:
account: '123456788'
pwd: '12345678'
expect:
code: 0
msg: ok
讀取出的資料(清晰明了), 'expect': },
, 'expect': }
], 'login': [
, 'expect': },
, 'expect': }
]}
class yamlhandle(object):
def __init__(self, conf_file):
self.conf_file = conf_file
def load(self) -> dict:
"""讀取yaml檔案,獲取全部資料
:return: dict
"""with open(file=self.conf_file, encoding='utf8') as f:
data = yaml.load(f, yaml.fullloader)
return data
def get_data(self, node) -> list:
"""獲取節點資料
:param node: 節點名稱
:return: dict&str
"""return self.load()[node]
yaml檔案存放測試用例
yaml 是一種可讀性非常高,與程式語言資料結構非常接近。同時具備豐富的表達能力和可擴充套件性,並且易於使用的資料標記語言。yaml是 yaml ain t a markup language yaml不是一種標記語言 的遞迴縮寫。這麼命名的方式,表示 yaml 強調的不是標記,而是資料本身。2.陣...
根據yaml測試用例自動生成py檔案
一 目前使用的介面自動化框架在編寫測試用例時,需要編寫yaml檔案,然後在寫對應的指令碼檔案,每個介面的 py檔案,大同小異,在前面幾天的編寫的過程中,感覺很繁瑣 於是就產生了能不能根據編寫完畢的 yaml 檔案自動生成 py檔案的想法,經過一番功夫,終於搞定,說明如下 二 根據固定格式編寫yaml...
檔案上傳 測試用例
sc001 功能測試 選擇符合要求的檔案,上傳 上傳成功 sc002 上傳成功的檔名稱顯示 顯示正常 根據需求 sc003 sc004 刪除上傳成功的檔案 可刪除sc005 替換上傳成功的檔案 可替換sc006 上傳檔案是否支援中文名稱 根據需求而定 sc007 檔案路徑是否可手動輸入 根據需求而定...