python如何使用yaml存储和取用做自动化测试
时间: 2024-03-09 16:46:36 浏览: 161
在 Python 中,我们可以使用 PyYAML 库来读写 YAML 格式的文件。以下是一个示例,演示如何在自动化测试中使用 YAML 存储和读取测试用例。
首先,我们需要安装 PyYAML 库:
```
pip install pyyaml
```
然后,我们可以创建一个 YAML 文件来存储测试用例。假设我们要测试一个加法函数,我们可以创建一个名为 "test_addition.yml" 的文件,其中包含以下测试用例:
```
- name: Test case 1
input: [1, 2]
expected_output: 3
- name: Test case 2
input: [0, 0]
expected_output: 0
- name: Test case 3
input: [-1, 1]
expected_output: 0
```
在测试脚本中,我们可以使用 PyYAML 库来读取测试用例,并运行测试:
```python
import yaml
# 读取测试用例
with open("test_addition.yml", "r") as f:
test_cases = yaml.safe_load(f)
# 执行测试
for case in test_cases:
name = case["name"]
input_data = case["input"]
expected_output = case["expected_output"]
# 调用加法函数
actual_output = add(*input_data)
# 检查结果是否符合预期
assert actual_output == expected_output, f"{name} failed: expected {expected_output}, but got {actual_output}"
```
在上面的代码中,我们首先使用 `yaml.safe_load()` 函数读取 YAML 文件并将其转换为 Python 字典。然后,我们逐个遍历测试用例,将输入数据传递给被测函数,并将结果与预期输出进行比较。
需要注意的是,PyYAML 库默认会将 YAML 文件中的缩进转换为 Python 中的嵌套字典或列表。因此,在读取 YAML 文件后,我们可以像操作普通 Python 对象一样访问测试用例的属性。
阅读全文