58 / 80 · 12 Programming for QA · Regex and Parsing← prev⊞ allnext →☰ Read as one page
7.7YAML Parsing
YAML is common in configuration files, CI/CD pipelines, and test data.
import yaml
# Load test configuration
with open("config.yaml") as f:
config = yaml.safe_load(f)
base_url = config["environments"]["staging"]["url"]
timeout = config["environments"]["staging"]["timeout"]
# Load test data from YAML
with open("test_users.yaml") as f:
test_data = yaml.safe_load(f)
# test_users.yaml:
# users:
# - email: admin@test.com
# role: admin
# - email: viewer@test.com
# role: viewer
Always use yaml.safe_load(), not yaml.load(). The latter can execute arbitrary code.