我正试图为一个使用json对象的类创建一个单元测试。
这是一级
public JsonDataModel(String name, String tag, String color, double price) throws JSONException {
this.name = name;
this.tag = tag;
this.color = color;
this.price = price;
initializeObject();
}
private void initializeObject() throws JSONException {
object.put("Name", name);
object.put("Tag", tag);
object.put("Color", color);
object.put("Price", price);
}
这是单元测试设置:
private JsonDataModel model;
@BeforeEach
void setUp() throws JSONException {
model = new JsonDataModel("testName", "testTag", "testColor", 10);
}
运行测试并完成setUp()
后,我检查了model
中的object
,它显示了null
。奇怪的是,如果我尝试运行应用程序并使用调试器查看在JsonDataModel
中创建的对象,json对象就会正确生成。当我尝试在单元文件测试中初始化JSONObject
时,它总是输出null
。有人知道问题出在哪里吗?
我认为问题出在initializeObject函数上,它在"对象";,但是";对象";不知从哪里来。我在构造函数的任何地方都看不到它,当他返回到单元测试时,就好像他是null一样。
尝试在"初始化"之前初始化这个对象;将";里面的东西。
发现问题是dependencies
中的build.gradle(app)
中缺少testImplementation 'org.json:json:20140107'
行