空手道;对象类型不作为 "not an Object" 抛出 TypeError
Karate; Object type not being throws TypeError as "not an Object"
通过我的测试,我希望对数组中的 json 个对象进行一些评估。该示例如下所示:
"sections": [
{
"internal_id": 10635,
"uuid": "a56357fa-fbe6-BARS-89d4-8e8fdbda18b0",
},
{
"internal_id": 10636,
"uuid": "33a4c634-BARS-4b20-ac3d-54370b32d989",
},
{
"internal_id": 10637,
"uuid": "99443ce8-5007-4ec2-BARS-b459df30d33b",
},
{
"internal_id": 10638,
"uuid": "4a54a868-1bfa-BAZZ-93b1-d95a4b529cdf",
}
]
在进行调试时我这样做了:
* print typeof(sections[0])
=> 这回说 object
我试图评估单个对象这样做:
* eval Object.keys(sections[0]).length;
=> 这会返回 TypeError: <object_at_index_0> is not an Object in <eval>
我对 JS 的经验不多,但是有人可以帮我解决这个问题吗?
您可以为单个 JSON 对象编写预期架构,然后使用 match each
为 JSON 数组中的所有数据验证它。
* def sectionArray =
"""
{
"sections": [
{
"internal_id": 10635,
"uuid": "a56357fa-fbe6-BARS-89d4-8e8fdbda18b0",
},
{
"internal_id": 10636,
"uuid": "33a4c634-BARS-4b20-ac3d-54370b32d989",
},
{
"internal_id": 10637,
"uuid": "99443ce8-5007-4ec2-BARS-b459df30d33b",
},
{
"internal_id": 10638,
"uuid": "4a54a868-1bfa-BAZZ-93b1-d95a4b529cdf",
}
]
}
"""
* match each sectionArray.sections == {"internal_id":"#present","uuid":"#present"}
您还可以通过以下方式验证数组的大小,
* match sectionArray.sections == "#[4]"
通过我的测试,我希望对数组中的 json 个对象进行一些评估。该示例如下所示:
"sections": [
{
"internal_id": 10635,
"uuid": "a56357fa-fbe6-BARS-89d4-8e8fdbda18b0",
},
{
"internal_id": 10636,
"uuid": "33a4c634-BARS-4b20-ac3d-54370b32d989",
},
{
"internal_id": 10637,
"uuid": "99443ce8-5007-4ec2-BARS-b459df30d33b",
},
{
"internal_id": 10638,
"uuid": "4a54a868-1bfa-BAZZ-93b1-d95a4b529cdf",
}
]
在进行调试时我这样做了:
* print typeof(sections[0])
=> 这回说 object
我试图评估单个对象这样做:
* eval Object.keys(sections[0]).length;
=> 这会返回 TypeError: <object_at_index_0> is not an Object in <eval>
我对 JS 的经验不多,但是有人可以帮我解决这个问题吗?
您可以为单个 JSON 对象编写预期架构,然后使用 match each
为 JSON 数组中的所有数据验证它。
* def sectionArray =
"""
{
"sections": [
{
"internal_id": 10635,
"uuid": "a56357fa-fbe6-BARS-89d4-8e8fdbda18b0",
},
{
"internal_id": 10636,
"uuid": "33a4c634-BARS-4b20-ac3d-54370b32d989",
},
{
"internal_id": 10637,
"uuid": "99443ce8-5007-4ec2-BARS-b459df30d33b",
},
{
"internal_id": 10638,
"uuid": "4a54a868-1bfa-BAZZ-93b1-d95a4b529cdf",
}
]
}
"""
* match each sectionArray.sections == {"internal_id":"#present","uuid":"#present"}
您还可以通过以下方式验证数组的大小,
* match sectionArray.sections == "#[4]"