我已经阅读了与此相关的所有问题,没有任何内容对我有用。
我试图做一些非常简单的事情。当我运行测试时,我想看看测试的输出。这是一些示例代码:
// MyClassTest
@Test
public void myMethodTest() throws Exception {
System.out.println("Hello from myMethodTest!");
int res = Whitebox.invokeMethod(MyClass.class, "myMethod", arg1, arg2);
assertThat(res, is(1));
}
// MyClass
private int myMethod(int arg1, int arg2) {
System.out.println("Hello from myMethod!");
return 0;
}
whitebox的东西在这里可能并不重要,但我把它包括在内以防万一。当我运行它时,它告诉我断言失败了。我也得到了"Hello from myMethodTest"
输出,但我无法看到"Hello from myMethod"
输出。这使我很难弄清楚我的方法出错的地方。我记录的Timber东西都没有出现。
我已尝试通过GUI和控制台使用gradle
和gradlew
运行测试,其中包含所有各种选项(--info
,--stacktrace
,等等。)。我还尝试了所有内容here,here和here。当然,这一定是可能的,谢谢。
答案 0 :(得分:2)
Occam的Razor说myMethod()
没有被调用。你没有获得日志输出(虽然有证据表明其他地方的记录正在运行),并且你的断言基于结果失败。
知道木材输出没有出现在这些单元测试中也很好
我没有在单元测试中使用Timber来了解当没有使用Log
的Android时它会做什么。