AndroidStudio:当我尝试在单元测试类中初始化JSONObject时,它总是输出null



我正试图为一个使用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'

最新更新