【问题标题】:How to use JsonB in feature Cucumber如何在功能 Cucumber 中使用 JsonB
【发布时间】:2021-06-14 14:07:03
【问题描述】:
拜托,我需要帮助。
我开始使用黄瓜测试,我需要测试一个使用 jsonB 数据作为输入的功能。
这是我的特色
鉴于 ....
什么时候……
|id|姓名 |留言 |
|5 | "测试 | jsonb 数据 |
问题是如何在功能中传递我的 jsonB 数据?
消息示例:
{"class": "testclass",
“电子邮件”:“x.y@email”,
“作者”: ””
}
我在 google 上发现需要使用 Pojo。
我从我的 json 生成了我的 pojo 类,但我不知道如何在功能中使用这个 pojo 类?
有什么帮助吗?
【问题讨论】:
标签:
java
cucumber
jsonb
cucumber-java
cucumber-junit
【解决方案1】:
我从我的 json 生成了我的 pojo 类,但我不知道如何使用它
功能中的 pojo 类?
一旦你生成了 pojo 类,你就可以在特性和步骤 def 中使用它,如下所示。此示例 pojo 的示例。
public class addUserPojo {
private String FirstName;
private String LastName;
public addUserPojo(String fname, String lname ){
this.FirstName = fname;
this.LastName=lname;
}
public String getFirstName() {
return FirstName;
}
public String getLastName() {
return LastName;
}
}
}
小黄瓜场景是
Scenario: Add a user using pojo class in a scenario using data table and @DataTableType
Given I open the site "http://www.www.com"
When I add user with passing info to pojo class
|FirstName|LastName|
|TestFirstName3 |TestLastName3 |
在步骤定义中
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import io.cucumber.java.DataTableType;
import com.test.support.addUserPojo;
public class StepDef {
@DataTableType
public addUserPojo userentry(Map<String, String> entry) {
return new addUserPojo(entry.get("FirstName"),entry.get("LastName"));
}
@When("I add user with passing info to pojo class")
public void AddUserWithPOJO( List<addUserPojo> adduser) throws MalformedURLException, InterruptedException {
for (addUserPojo addUserFields : adduser) {
System.out.println("firstname..."+addUserFields.getFirstName());
System.out.println("LastName..."+addUserFields.getLastName());
}
}
}
更多关于@Datatabletype and other types的信息