![](/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.