我已阅读与此相关的所有问题,但没有任何效果对我有用。
- Android Studio版本:2.3.3
- 编译SdkVersion 25
- buildTools版本“26.0.1”
- Gradle 构建工具版本:2.3.3
我正在尝试做一些非常简单的事情。当我运行测试时,我想查看测试的输出。这是一些示例代码:
// 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;
}
白盒的东西在这里可能并不重要,但我将其包括在内以防万一。当我运行这个时,它告诉我断言失败了。我还得到了 "Hello from myMethodTest"
输出,但我看不到看到 "Hello from myMethod"
输出。这使得找出我的方法哪里出了问题变得非常困难。我正在记录的木材内容也没有出现。
我尝试通过 GUI 和控制台使用 gradle
运行测试和gradlew
,具有所有各种选项( --info
、 --stacktrace
等)。我也尝试过所有的东西here , here ,和 here 。当然,这一定是可能的,谢谢。
最佳答案
奥卡姆 Razor 说 myMethod()
没有被调用。您没有获得日志输出(同时有证据表明其他地方的日志记录正在工作)并且基于结果的断言失败。
It's also very good to know that Timber output does not appear in these unit tests
我还没有在单元测试中使用 Timber,不知道当没有 Android 可以使用 Log
时它会做什么。
关于android - 查看 Android Studio 中的测试输出 (stdout),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47383420/