【发布时间】:2016-09-08 11:37:27
【问题描述】:
我正在尝试在运行 Android 本地单元测试 时打印一些内容,但没有任何反应。怎么了?我该如何解决?
查阅了http://developer.android.com上的一些文档,发现Android Local Unit Test只是运行在我机器的JVM上,用于运行单元测试的android.jar文件不包含任何实际代码,所以Log.d()什么都不打印。如果我想打印日志,我该怎么做?
这是我的代码,FeedbackModelTest.java 位于 src/test/main 目录中。
package com.upward.reader.mvp.model;
import android.util.Log;
import com.upward.reader.mvp.bean.FeedbackBean;
import com.upward.reader.net.RequestJSONCallback;
import org.junit.Test;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
public class FeedbackModelTest {
@Test
public void postFeedback() throws Exception {
final String url = "http://test.guguread.com/interface/app/user/feedback?";
Map<String, String> params = new HashMap<>();
params.put("content", "content");
new FeedbackModel().postFeedback(url, params, new RequestJSONCallback<FeedbackBean>() {
@Override
public void onResponse(FeedbackBean result) throws IOException {
Log.d("TAG", result.toString());
}
@Override
public void onFailure(Exception e) {
e.printStackTrace();
}
});
}
}
【问题讨论】:
-
如果通过“本地单元测试”,你的意思是你直接在你的JVM上运行测试(例如,Android Studio中的
test/,而不是androidTest/),没有LogCat,所以我不希望在任何地方看到该文本。 -
是的,我在 jvm 上运行测试,测试代码位于 src/test/java floder。你知道在这种情况下如何打印日志吗?
-
日志打印到 LogCat,我怀疑它会在本地单元测试中运行。不过不确定……
-
这能回答你的问题吗? Log messages in android studio junit test
标签: android unit-testing junit