![](/img/trans.png)
[英]How to pass raw data json format from feature file to stepdefinition file in Cucumber
[英]Best way to update json payload from cucumber feature file
我有一个复杂的 Json,它的作用类似于 Web 服务的输入。 我已经为它创建了必要的 POJO 类,并且在我的代码中使用了 Jackson 对象映射器。
从黄瓜数据表中更新部分 Json 数据的最佳方法是什么?
提前致谢 !!!
原始Json:
{
"accNum": "Dummy_Account",
"customerData": {
"customerName": "Dummy_Name",
"customerAddress": "Dummy_Address"
},
"accountData": {
"cashAccountRef": "Dummy",
"acntCrncy": "EUR",
"foreignCurrencyAccounts": [
{
"foreignCurrency": "USD",
"foreignCrncyAcntRef": "Dummy2"
}
]
}
]
}
黄瓜功能文件
Given Prepare Input request for below data
| accNum | 12345 |
| customerData.customerName | New Name|
| accountData.foreignCurrencyAccounts[0].foreignCurrency | EUR |
要作为输入传递的最终 Json
{
"accNum": "12345",
"customerData": {
"customerName": "New Name",
"customerAddress": "Dummy_Address"
},
"accountData": {
"cashAccountRef": "Dummy",
"acntCrncy": "EUR",
"foreignCurrencyAccounts": [
{
"foreignCurrency": "EUR",
"foreignCrncyAcntRef": "Dummy2"
}
]
}
]
}
如果您使用的是 POJO,请坚持使用这种方法。 使用 setter 来更新 key 的值,当然你也可以使用 builder 风格的 setter 让它更容易阅读。
我发现只有这样
((ObjectNode) parent).putRawValue(valueOfKeyToModify, new RawValue(newValue));
当有许多相同的键时,就会出现问题。 然后您需要阅读树并绕过它,直到它与需要更改的键完全匹配。
如果你需要放置字符串,那么你还必须指定引号,因为它放置了原始值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.