【发布时间】:2019-10-17 10:11:41
【问题描述】:
我是 Python 程序员,所以我想使用Tavern 进行 API 测试。
意思是用 YAML 编写程序(API 测试)。
问题是,当我编辑 YAML 输入时,它经常因错误 BadSchemaError 而中断。 Tavern 已经嵌入了 pykwalify,但是错误信息不是很有帮助。
我经常收到这样的错误消息:
================================================ ==== 测试开始 ============================================ ========
平台 linux2 -- Python 2.7.5、pytest-4.5.0、py-1.8.0、pluggy-0.12.0
根目录:/home/*****/tavern
插件:酒馆-0.26.3
收集到 0 个项目 / 1 个错误
==================================================== ======= 错误 =========================================== =================
_________________________________________ 收集 test_echo.tavern.yaml 时出错 __________________________________________
/usr/lib/python2.7/site-packages/tavern/testutils/pytesthook/file.py:306:收集
raise_from(exceptions.BadSchemaError, e)
/usr/lib/python2.7/site-packages/future/utils/__init__.py:456:在 raise_from
提高e
E BadSchemaError
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!中断:收集过程中出现1个错误!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
================================================== 1 0.13 秒内出错 ======
有没有更好的方法来验证 Tavern YAML 语法? pykwalify/tavern/whatever 的一些参数可以使错误消息更有帮助吗?
我找到了 Tavern examples 和 cookbook,这让我对语法有了一些了解,但是编写我自己的 YAML 是偶然的,而且失败比成功更多。
编辑:根据pykwalify docs,我可以像这样在 CLI 中运行 pykwalify:
pykwalify -d data.yaml -s schema.yaml
但是酒馆的 YAML 模式在哪里?
【问题讨论】: