我一直在努力定义新的YAML文档,但在尝试处理文件时,我从yamllint收到以下错误:
>syntax error on line 3, col 10: ` suites: '
运行测试时PyCharm中出现以下错误:
ScannerError:此处不允许使用映射值 在"
<string>
&#34;,第2行,第11栏: name:testFirstNameLower
代码如下:
DataMart\Users:
name: testFirstNameLower
suites:
- suite: dataMart
- suite: userDim
dataset:
source: etlUnitTest
table: users
它看起来格式正确,但我不知道我做错了什么......
答案 0 :(得分:1)
如果您的DataMart\Users
应包含一系列用户,每个用户都有一个name
,一系列suites
和一个dataset
,那么您只是做一些太多的缩进,并没有将每个用户作为一个系列处理。 (This online parser通常是我在处理yaml时使用的。)
请改为尝试:
DataMart\Users:
- name: testFirstNameLower
suites:
- suite: dataMart
- suite: userDim
dataset:
source: etlUnitTest
table: users
...对应于以下json:
{
"DataMart\\Users": [
{
"name": "testFirstNameLower",
"suites": [
{
"suite": "dataMart"
},
{
"suite": "userDim"
}
],
"dataset": {
"source": "etlUnitTest",
"table": "users"
}
}
]
}
以下是添加了第二个示例用户的yaml:
DataMart\Users:
- name: testFirstNameLower
suites:
- suite: dataMart
- suite: userDim
dataset:
source: etlUnitTest
table: users
- name: secondname
suites:
- suite: secondDataMart
- suite: secondUserDim
dataset:
source: secondEtlUnitTest
table: secondUsers