gpt4 book ai didi

java - 使用 Robolectric + Roboguice 时将日志输出写入哪里?

转载 作者:IT老高 更新时间:2023-10-28 20:35:57 27 4
gpt4 key购买 nike

我正在使用 Robolectric 来测试 Android。我正在通过 maven 运行我的测试,例如

mvn -Dtest=LogTest test

如果我有写入日志的代码,例如

Log.d("TAG", "blah");

或使用 Roboguice 的 Ln

Ln.d("blah");

我在 maven 的安全日志(文本文件)中看不到任何输出。

理想情况下,我实际上想要简单的日志语句进入控制台。我可以使用 System.out.println("blah") 写入控制台,但当然我更愿意使用支持的日志记录 API。

所以我的问题是,为什么我根本看不到日志输出,我怎样才能将日志消息写入控制台?

最佳答案

我正在运行 robolectric-2.0-alpha-3

对我有用的是在我的 test 的 setUp 方法中将流设置为 stdout

类似:

@Before
public void setUp() throws Exception {
ShadowLog.stream = System.out;
//you other setup here
}

使用这个版本的 robolectric,我在自定义 TestRunner 或我的 TestLifeycleApplication 中做同样的事情(ShadowLog.stream = System.out)没有成功。

设置系统属性System.setProperty("robolectric.logging","stdout");同样无效,但在以前的版本中可能有效。

关于java - 使用 Robolectric + Roboguice 时将日志输出写入哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10219915/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com